+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