+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
* tree.c (build1): Fix off-by-one error.
-2003-09-28 Robert Millan <robertmh@gnu.org>
+2003-10-21 Robert Millan <robertmh@gnu.org>
* config/i386/kfreebsdgnu.h: New. i386-*-kfreebsd-gnu definitions.
* config/kfreebsdgnu.h: New. *-*-kfreebsd-gnu definitions.