+2002-03-12 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/t-xtensa (CRTSTUFF_T_CFLAGS_S): Define.
+
+2002-03-12 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.h (ASM_OUTPUT_POOL_PROLOGUE): Switch
+ to function_section before writing out the constant pool.
+
+2002-03-12 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.h (PREDICATE_CODES): Add any_operand and
+ zero_constant.
+ * config/rs6000/rs6000.c (easy_fp_constant): Fix formatting.
+
+2002-03-12 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.md (addsi3): Optimize sign extension.
+ (adddi3): Likewise.
+ (movdf): Likewise.
+ (movdi): Likewise.
+ (cmpsi splitter): Likewise.
+ (modsi3): Fail if <= 0.
+ * config/rs6000/rs6000.c (reg_or_add_cint64_operand): Remove
+ redundant test when HOST_BITS_PER_WIDE_INT != 32.
+ (reg_or_sub_cint64_operand): Likewise.
+ (num_insns_constant_wide): Optimize sign extension.
+ (rs6000_legitimize_address): Likewise.
+
+2002-03-12 Andrew MacLeod <amacleod@redhat.com>
+
+ * config/sparc/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define.
+ * config/sparc/linux64.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define.
+
+2002-03-12 Andrew MacLeod <amacleod@redhat.com>
+
+ * config/sparc/sparc.h (RETURN_ADDR_RTX): Include v9 stack bias in
+ address calculation.
+
+2002-03-12 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md (reload_insi, reload_indi): Change mode of
+ scratch register to DImode / TImode.
+ config/s390/s390.c (s390_expand_plus_operand): Make sure scratch
+ register used does not overlap the target.
+
+2002-03-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (debug.o): Depend on debug.h.
+ * dbxout.c (dbx_debug_hooks, xcoff_debug_hooks): Const-ify.
+ * debug.c (do_nothing_debug_hooks): Likewise.
+ * debug.h (debug_hooks, do_nothing_debug_hooks, dbx_debug_hooks,
+ sdb_debug_hooks, xcoff_debug_hooks, dwarf_debug_hooks,
+ dwarf2_debug_hooks, vmsdbg_debug_hooks): Likewise.
+ * dwarf2out.c (dwarf2_debug_hooks): Likewise.
+ * dwarfout.c (dwarf_debug_hooks): Likewise.
+ * integrate.c (output_inline_function): Likewise.
+ * objc/objc-act.c (synth_module_prologue): Likewise.
+ * sdbout.c (sdb_debug_hooks): Likewise.
+ * toplev.c (debug_hooks): Likewise.
+ * vmsdbgout.c (vmsdbg_debug_hooks): Likewise.
+
+2002-03-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * 1750a.h, a29k.h, arc.h, arm.h, c4x.h, clipper.h, cris.h, d30v.h,
+ dsp16xx.h, fr30.h, h8300.h, i370.h, i386.h, i860.h, i960.h,
+ m32r.h, m68hc11.h, m68k.h, m88k.h, mcore.h, mmix.h, mn10300.h,
+ ns32k.h, pa.h, pdp11.h, pj.h, romp.h, s390.h, stormy16.h,
+ v850.h, vax.h, we32k.h, xtensa.h (POINTER_SIZE): Delete.
+ * defaults.h (POINTER_SIZE): Define.
+ * doc/tm.texi (POINTER_SIZE): Document default.
+
+2002-03-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mn10200.h (PTRDIFF_TYPE): Change it to a signed type.
+
+2002-03-11 Richard Henderson <rth@redhat.com>
+
+ * toplev.c (rest_of_compilation): Call purge_all_dead_edges
+ if rebuild_label_notes_after_reload.
+
+2002-03-12 Hans-Peter Nilsson <hp@axis.com>
+
+ * config/cris/cris.c (cris_target_asm_function_prologue): Do not
+ emit pic register load if "internal" visibility.
+ (cris_print_operand): Avoid traditional-warning for 0xffffffff.
+ (cris_expand_builtin_va_arg): Do all computations on trees.
+
+2002-03-11 Richard Henderson <rth@redhat.com>
+
+ * rtlanal.c: Include recog.h.
+ (keep_with_call_p): Fix thinko.
+ * Makefile.in (rtlanal.o): Update dependencies.
+
+2002-03-11 Chris Meyer <cmeyer@gatan.com>
+
+ * genflags.c (gen_insn): Use IS_VSPACE.
+ * genoutput.c (output_insn_data): Likewise.
+ (process_template): Likewise.
+
+2002-03-11 Richard Henderson <rth@redhat.com>
+
+ * toplev.c (rest_of_compilation): Don't compile if we've had errors.
+
+2002-03-11 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * Makefile.in: Update.
+ * doc/cppenv.texi, cppopts.texi: Split out of cpp.texi and gcc.texi.
+ Update documentation.
+ * doc/gcc.texi: Include cppopts.texi and cppenv.texi.
+ * doc/cpp.texi: Include cppopts.texi and cppenv.texi.
+
+2002-03-11 Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.in: Give texi2pod its input file as a command line
+ argument, not on stdin.
+
+2002-03-11 Dan Nicolaescu <dann@ics.uci.edu>
+ Daniel Berlin <dan@dberlin.org>
+
+ C++ alias analysis improvement.
+ * alias.c (record_component_aliases): Record aliases for base
+ classes too.
+
+2002-03-11 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.h (REG_ALLOC_ORDER): Add missing register.
+
+2002-03-11 Douglas B Rupp <rupp@gnat.com>
+
+ * toplev.c (vms_fopen): Remove, not needed.
+
+ * vmsdbgout.c (lookup_filename): Adjust creation date for GMT.
+
+ * config/alpha/xm-vms.h (__UNIX_FWRITE): Define.
+
+ * config/alpha/alpha.c (alpha_sa_size, VMS): Don't reserve space
+ for FP, already done later.
+
+ * toplev.c (debug_args): Add entry for VMS_DEBUG.
+ * vmsdbgout.c (vmsdbgout_init): Fix typo in call to xmalloc.
+
+2002-03-11 Richard Sandiford <rsandifo@redhat.com>
+
+ * defaults.h (LARGEST_EXPONENT_IS_NORMAL, ROUND_TOWARDS_ZERO): New.
+ (MODE_HAS_NANS, MODE_HAS_INFINITIES): Evaluate to false if
+ LARGEST_EXPONENT_IS_NORMAL for the given mode.
+ (MODE_HAS_SIGN_DEPENDENT_ROUNDING): False when ROUND_TOWARDS_ZERO.
+ * real.c (eadd1): Make rounding dependent on !ROUND_TOWARDS_ZERO.
+ (ediv, emul, eldexp, esqrt): Likewise.
+ (etoe113, etoe64, etoe53, etoe24, etodec, etoibm, etoc4x): Likewise.
+ (e24toe): Only check NaNs & infinities if !LARGEST_EXPONENT_IS_NORMAL.
+ (saturate): New function.
+ (toe53, toe24): Saturate on overflow if LARGEST_EXPONENT_IS_NORMAL.
+ (make_nan): Use a saturation value instead of a NaN if
+ LARGEST_EXPONENT_IS_NORMAL. Warn when this happens.
+ * fp-bit.c (pack_d): Saturate on NaN, infinite or overflowing
+ inputs if LARGEST_EXPONENT_IS_NORMAL. Represent subnormals as
+ zero if NO_DENORMALS. Only round to nearest if !ROUND_TOWARDS_ZERO.
+ (unpack_d): No NaNs or infinities if LARGEST_EXPONENT_IS_NORMAL.
+ (_fpmul_parts, _fpdiv_parts): Only round to nearest if
+ !ROUND_TOWARDS_ZERO.
+ * doc/tm.texi (LARGEST_EXPONENT_IS_NORMAL): Document.
+ (ROUND_TOWARDS_ZERO): Document.
+
+2002-03-11 Andreas Jaeger <aj@suse.de>
+
+ * cfg.c (dump_flow_info): Remove unused variable.
+
+2002-03-11 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * config/mmix/mmix.c (mmix_expand_builtin_va_arg): Do all
+ computations on trees.
+
+2002-03-10 Richard Henderson <rth@redhat.com>
+
+ PR 5693:
+ * reload.c (copy_replacements_1): New.
+ (copy_replacements): Use it to recurse through the rtx.
+
+2002-03-10 Richard Henderson <rth@redhat.com>
+
+ * loop.c (strength_reduce): Compute number of iterations as
+ unsigned HOST_WIDE_INT.
+
+2002-03-10 Richard Henderson <rth@redhat.com>
+
+ * sched-rgn.c (add_branch_dependences): Don't allow insns that throw
+ to move away from the end of the block.
+
+2002-03-10 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ PR preprocessor/5899
+ * cppinit.c (init_dependency_output): Don't ignore -dM etc.
+
+2002-03-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mbchar.c (JIS_state_table, JIS_action_table): Const-ify.
+
+ * attribs.c (decl_attributes): Fix signed/unsigned warning.
+
+2002-03-10 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * config/mmix/mmix.c: Improve comments.
+ (mmix_target_asm_function_prologue): Drop variable
+ empty_stack_frame. Don't allocate unused slot above fp.
+ (mmix_target_asm_function_epilogue): Mirror prologue changes.
+ * config/mmix/mmix.h (MMIX_GNU_ABI_REG_ALLOC_ORDER): Don't have
+ brace in first column.
+ (enum reg_class): Ditto.
+ (FIRST_PARM_OFFSET): Now 0.
+ (USER_LABEL_PREFIX): Remove #if 0:d definition.
+
+2002-03-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * combine.c (make_extraction): Fix error in last change.
+
+2002-03-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c4x.c (c4x_fp_reglist): Const-ify.
+ * cris.c (cris_print_operand): Likewise.
+ * i386.c (ix86_va_arg): Likewise.
+ * ia64/unwind-ia64.c (unw_decode_table): Likewise.
+ * m32r.c (m32r_hard_regno_mode_ok): Likewise.
+ * m32r.h (m32r_hard_regno_mode_ok): Likewise.
+ * mcore.c (regno_reg_class, mcore_unique_section): Likewise.
+ * mcore.h (regno_reg_class): Likewise.
+ * mips.c (gen_int_relational): Likewise.
+ * ns32k.c (ns32k_reg_class_contents, regclass_map): Likewise.
+ * ns32k.h (ns32k_reg_class_contents, regclass_map): Likewise.
+ * pdp11.c (move_costs): Likewise.
+ * pj.h (INITIALIZE_TRAMPOLINE): Likewise.
+ * s390.c (s390_branch_condition_mnemonic, regclass_map):
+ Likewise.
+ * s390.h (regclass_map): Likewise.
+ * sh.c (shift_amounts): Likewise.
+ * sh.md (rotlsi3): Likewise.
+
+2002-03-09 Geoffrey Keating <geoffk@redhat.com>
+
+ * config/rs6000/rs6000.md (ne0+4): Add extra CLOBBER.
+ (ne0+5): Use new clobber to generate proper shift pattern.
+ Patch by Michael Matz <matz@kde.org>.
+
+2002-03-09 Andreas Schwab <schwab@suse.de>
+
+ * gcc.c (validate_all_switches): Also handle `%W{...}'.
+
+2002-03-09 Geoffrey Keating <geoffk@redhat.com>
+
+ * config/rs6000/sysv4.h (BIGGEST_ALIGNMENT): Don't define.
+
+2002-03-09 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/5877
+ * expr.c (highest_pow2_factor): Check TREE_INT_CST_LOW
+ even for non-representable constants.
+
+Sat Mar 9 07:20:01 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * emit-rtl.c (copy_most_rtx): Accept EXPR_LIST for may_share.
+ * function.c (fixup_var_refs): Add MAY_SHARE parameter.
+ (fixup_var_refs_insns, fixup_var_refs_insns_with_has): Likewise.
+ (fixup_var_refs_insn, fixup_var_refs_1): Likewise.
+ (pop_function_context): Compute MAY_SHARE parameter for
+ fixup_var_refs.
+ (fixup_var_refs_1, case MEM): Pass MAY_SHARE to copy_most_rtx, not VAR.
+ (gen_mem_addressof): Call fixup_var_refs with new parm.
+
+ * combine.c (make_extraction): Don't make extension of CONST_INT.
+
+2002-03-09 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mips/mips.c (function_arg_pass_by_reference): Force to 0
+ in o32 and o64 ABIs.
+ * config/mips/abi64.h (MUST_PASS_IN_STACK): Define as in expr.h,
+ but getting fixed-size structs passed in registers regardless of
+ padding in o32 and o64 ABIs.
+
+ * config/mips/mips.c (mips_va_arg): Apply big-endianness address
+ offset before loading address of argument passed by transparent
+ reference.
+
+2002-03-08 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * t-pa64 (LIB1ASMFUNCS, LIB1ASMSRC): Delete.
+
+2002-03-09 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mips/mips.c (mips_expand_prologue): Set regno of vararg
+ marker such that registers after it are saved.
+
+2002-03-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * sparc.c (arith_4096_operand): Fix error in last change.
+
+2002-03-08 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mips/mips.h (SUBTARGET_CPP_SIZE_SPEC): Remove duplicate
+ defaults for MEABI.
+
+2002-03-08 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_va_arg): Fix alignment for
+ vectors.
+
+2002-03-08 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/sysv4.h (BIGGEST_ALIGNMENT): Change for altivec.
+
+Fri Mar 8 21:27:49 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * cfgrtl.c (purge_dead_edges): Set BB_DRITY flags if edge has been
+ removed; fix return value.
+ * combine.c (combine_instructions): Dirtify blocks where we failed to
+ update liveness; purge dead edges; use update_life_info_in_dirty_blocks.
+ * toplev.c (rest_of_compilation): Do not purge_dead_edges after combine.
+
+2002-03-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gcse.c (insert_insn_end_bb): Fix typo in last change.
+
+Fri Mar 8 21:08:52 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * recog.c (peephole2_optimize): Re-distribute EH edges.
+
+2002-03-08 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * expr.c (expand_expr): Use unsave lang hook.
+ * langhooks-def.h (LANG_HOOKS_UNSAVE): New.
+ (LANG_HOOKS_INITIALIZER): Update.
+ * langhooks.h (struct lang_hooks): New hook unsave.
+ * tree.c (lang_unsave, lang_unsave_expr_now): Remove.
+ (unsave_expr_1): Remove unused lang_unsave_expr_now.
+ (unsave_expr_now_r): Rename lhd_unsave. Update. Return input.
+ (unsave_expr_now): Remove.
+ * tree.h (unsave_expr_now, lang_unsave,
+ lang_unsave_expr_now): Remove.
+ (lhd_unsave): New.
+
+2002-03-08 Andreas Jaeger <aj@suse.de>
+
+ * flow.c (propagate_block_delete_insn): Remove unused variable.
+
+2002-03-08 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.c (h8300_adjust_insn_length): Tighten
+ insn length for memory load/store.
+
+2002-03-08 Craig Rodrigues <rodrigc@gcc.gnu.org>
+
+ * doc/install.texi (--with-libiconv-prefix): Document.
+
+2002-03-08 Michael Y. Brukman <myb2@cornell.edu>
+
+ * doc/sourcebuild.texi: Fix typo.
+
+2002-03-08 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/3711
+ * builtins.c (std_expand_builtin_va_arg): Do all computations on
+ trees.
+
+Fri Mar 8 06:48:45 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * rtl.c (copy_most_rtx): Move from here ...
+ * emit-rtl.c (copy_most_rtx): ... to here.
+
+2002-03-08 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mips/mips.h (LONG_MAX_SPEC): Rewrite, along with
+ SUBTARGET_CPP_SIZE_SPEC.
+ * config/mips/abi64.h (LONG_MAX_SPEC): Delete.
+
+ * config/mips/mips.h (SUBTARGET_CPP_SIZE_SPEC): Simplify.
+
+2002-03-07 Matt Hiller <hiller@redhat.com>
+
+ * gensupport.c (first_dir_md_include): Renamed from include;
+ change all references.
+ (last_dir_md_include): Renamed from last_include; change all
+ references.
+ (init_md_reader): Unconditionally initialize base_dir whether or
+ not filename is a relative path.
+
+2002-03-07 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/fp-bit.c (_unord_f2): Compile it in even if
+ US_SOFTWARE_GOFAST is enabled.
+
+ * config/gofast.h (GOFAST_RENAME_LIBCALLS): Set gt and ge as
+ NULL_RTX. Set all HFmode operations as NULL_RTX.
+ * optabs.c (prepare_float_lib_cmp) <GT, GE, LT, LE>: If libfunc is
+ NULL_RTX, try reversing the comparison and the operands.
+
+2002-03-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * genextract.c (walk_rtx): Recurse into MATCH_PAR_DUP.
+ genoutput.c (scan_operands): Recurse into MATCH_PAR_DUP
+ and MATCH_OP_DUP.
+
+Thu Mar 7 16:54:10 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * reload1.c (reload_cse_delete_noop_set): Purge dead edges.
+
+Thu Mar 7 16:33:54 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * basic-block.h (fixup_abnormal_edges): Declare.
+ * reload1.c (fixup_abnormal_edges): New function.
+ * reg-stack.c (convert_regs): Use it.
+
+ * gcse.c (insert_insn_end_bb): Handle trapping insns.
+
+ * gcse.c (hash_scan_set): Refuse instructions with EH edges.
+
+2002-03-07 Richard Sandiford <rsandifo@redhat.com>
+
+ * defaults.h (MODE_HAS_NANS, MODE_HAS_INFINITIES): New.
+ (MODE_HAS_SIGNED_ZEROS, MODE_HAS_SIGN_DEPENDENT_ROUNDING): New.
+ * flags.h (HONOR_NANS, HONOR_INFINITIES, HONOR_SIGNED_ZEROS): New.
+ (HONOR_SIGN_DEPENDENT_ROUNDING): New.
+ * builtins.c (expand_builtin_mathfn): Use HONOR_NANS.
+ * c-common.c (truthvalue_conversion): Reduce x - y != 0 to x != y
+ unless x and y could be infinite.
+ (expand_unordered_cmp): New, mostly split from expand_tree_builtin.
+ Check that the common type of both arguments is a real, even for
+ targets without unordered comparisons. Allow an integer argument
+ to be compared against a real.
+ (expand_tree_builtin): Use expand_unordered_cmp.
+ * combine.c (combine_simplify_rtx): Use the new HONOR_... macros.
+ * cse.c (fold_rtx): Likewise. Fix indentation.
+ * fold-const.c (fold_real_zero_addition_p): New.
+ (fold): Use it, and the new HONOR_... macros.
+ * ifcvt.c (noce_try_minmax): Use the new HONOR_... macros.
+ * jump.c (reversed_comparison_code_parts): After searching for
+ the true comparison mode, use HONOR_NANS to decide whether it
+ can be safely reversed.
+ (reverse_condition_maybe_unordered): Remove IEEE check.
+ * simplify-rtx.c (simplify_binary_operation): Use the new macros
+ to decide which simplifications are valid. Allow the following
+ simplifications for IEEE: (-a + b) to (b - a), (a + -b) to (a - b),
+ and (a - -b) to (a + b).
+ (simplify_relational_operation): Use HONOR_NANS.
+ * doc/tm.texi: Document the MODE_HAS_... macros.
+
+2002-03-07 Richard Earnshaw <rearnsha@arm.com>
+
+ * combine.c (simplify_comparison): If simplifying a logical shift
+ right and compare with constant, force the comparison to unsigned.
+
+2002-03-07 Aldy Hernandez <aldyh@redhat.com>
+
+ * doc/invoke.texi: Add documentation for -mabi=no-altivec.
+
+ * config/rs6000/rs6000.c (rs6000_parse_abi_options): Add
+ -mabi=no-altivec
+ (alt_reg_names): Remove % for vrsave.
+
+2002-03-06 Richard Henderson <rth@redhat.com>
+
+ PR optimization/5844
+ * genemit.c (gen_exp): New argument used. Invoke copy_rtx
+ if used indicates we've already emitted one copy of an operand.
+ (gen_insn, gen_expand, output_add_clobbers): Supply a null used.
+ (gen_split): Supply a non-null used.
+
+2002-03-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * reload1.c (reload): Unshare all rtl after reload is done.
+
+ * simplify-rtx.c (simplify_plus_minus): Do not abort,
+ but simply fail if the expression is too complex to simplify.
+ (simplify_gen_binary): Handle simplify_plus_minus failures.
+
+Wed Mar 6 20:32:09 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (rest_of_compilation): Do jump threading before SSA path;
+ consistently call delete_trivially_dead_insns after CSE and GCSE;
+ fix DFI_life dumping; do jump threading after liveness; do crossjumping
+ after liveness2; update comment in last crossjumping.
+ * cfgcleanup.c (try_crossjump_to_edge): Dirtify block.
+
+Wed Mar 6 12:27:10 2002 Jeffrey A Law (law@redhat.com)
+
+ * ssa-ccp.c (ssa_fast_dce): Update the DF def-use chains
+ after completing fast dead code elimination.
+
+ * m68k.h (CONST_COSTS): Lower cost of 0.0 when used inside a
+ COMPARE operator.
+
+2002-03-06 Phil Edwards <pme@gcc.gnu.org>
+
+ * version.c: Fix misplaced leading blanks on first line.
+
+Wed Mar 6 19:08:03 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * cfgrtl.c (verify_flow_info): Accept RESX as EH edge source.
+
+Wed Mar 6 18:14:43 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * cfgcleanup.c (mentions_nonequal_regs): New function.
+ (thread_jump): Use it.
+ * toplev.c (rest_of_compilation): Run jump threading after
+ liveness.
+
+2002-03-06 Jakub Jelinek <jakub@redhat.com>
+
+ * ssa-ccp.c (ssa_ccp_substitute_constants): Backout 2002-03-05
+ patch.
+
+Wed Mar 6 11:28:19 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * predict.c (estimate_bb_frequencies): Do not reload the
+ frequencies from notes.
+
+Wed Mar 6 10:59:39 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * cfgrtl.c (delete_insn_and_edges, delete_insn_chain_and_edges): New.
+ * rtl.h (delete_insn_and_edges, delete_insn_chain_and_edges): Declare
+
+ * basic-block.h (update_life_info, update_life_info_in_dirty_blocks,
+ delete_noop_moves): Return indeger.
+ * flow.c (ndead): New variable.
+ (propagate_block_delete_insn): Use delete_insn_and_edges; remove
+ BB argument; update callers.
+ (propagate_block_delete_libcall): Use delete_insn_chain_and_edges.
+ (life_analysis): Do not call purge_all_dead_edges.
+ (update_life_info): Return number of deleted insns; print statistics.
+ (update_life_info_in_dirty_blocks): likewise.
+ (delete_noop_moves): Use delete_insn_and_edges; print statistics;
+ return number of insns deleted.
+
+ * cse.c: Include timevar.h
+ (delete_trivially_dead_insns): Kill preserve_basic_blocks argument;
+ iterate until stabilizes; print statistics; return number of killed
+ insns.
+ * Makefile.in: (cse.o): Add timevar.h dependency
+ * rtl.h (delete_trivially_dead_insns): New.
+ * timever.def: Add TV_DELETE_TRIVIALLY_DEAD timer.
+ * toplev.c (rest_of_compilation): Update callers.
+
+ * cfgcleanup.c (try_optimize_cfg): Kill blocks.
+ (try_optimize_cfg): Do not update liveness.
+ (cleanup-cfg): Loop until try_optimize_cfg and dead code
+ removal stabilizes; use delete_trivially_dead_insns.
+
+ * cfgrtl.c (verify_flow_info): Sanity check outgoing edges.
+
+2002-03-05 Zack Weinberg <zack@codesourcery.com>
+
+ * cppmain.c (setup_callbacks): Disable #pragma and #ident
+ callbacks when processing assembly language.
+
+2002-03-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.h (ASM_FILE_END): Define.
+ * som.h (ASM_FILE_END): Delete.
+
+ * pa.c (function_arg): Don't pass floats in general registers in
+ indirect calls if TARGET_ELF32.
+
+2002-03-05 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.md (floatsidf2): Conditionalize on hard-float.
+
+2002-03-05 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * gthr-win32.h (__GTHREAD_MUTEX_INIT_DEFAULT): Define.
+
+2002-03-05 Jakub Jelinek <jakub@redhat.com>
+
+ * mklibgcc.in: Prepend a tab before .hidden, add $flags to gcc
+ -r command line. Don't hide any symbols if not building
+ shared libgcc.
+
+Tue Mar 5 18:31:27 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * cfg.c (dump_flow_info): Warn about profile mismatches.
+ * cfgrtl.c (verify_flow_info): Few aditional sanity checks.
+ (purge_dead_edges): Remove REG_BR_PROB notes on simplejumps.
+
+2002-03-05 Jakub Jelinek <jakub@redhat.com>
+
+ * expmed.c (emit_store_flag): Don't test BITS_PER_WORD * 2
+ wide volatile memory by parts.
+
+2002-03-05 Jakub Jelinek <jakub@redhat.com>
+
+ * ssa-ccp.c (ssa_ccp_substitute_constants): Don't crash if def
+ is NULL.
+
+2002-03-05 Richard Henderson <rth@redhat.com>
+
+ * rs6000.h (TOTAL_ALTIVEC_REGS): Fix off-by-one error.
+
+2002-03-04 Geoffrey Keating <geoffk@redhat.com>
+
+ * toplev.c (documented_lang_options): Document more
+ language-specific options.
+ * doc/invoke.texi (Warning Options): Correct documentation for
+ -Wno-multichar, -Wno-div-by-zero, and -Wsystem-headers.
+ * c-decl.c (c_decode_option): Use a table to handle warning options.
+
+2002-03-05 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * config/mmix/mmix.h (ENCODE_SECTION_INFO): Pass on new second
+ parameter to mmix_encode_section_info.
+ (LINK_SPEC): Don't defsym __.MMIX.start..text if linking
+ relocatably. Always produce ELF, not mmo if linking relocatably.
+ * config/mmix/mmix.c (mmix_encode_section_info): If new parameter
+ first is non-zero, don't add symbol prefix.
+ * config/mmix/mmix-protos.h (mmix_encode_section_info): Tweak
+ prototype accordingly.
+
+2002-03-04 Krister Walfridsson <cato@df.lth.se>
+
+ * config.gcc (*-*-netbsd*): Add t-slibgcc-elf-ver to tmake_file.
+
+2002-03-05 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * configure.in: Increase required makeinfo version to 4.1.
+ * configure: Regenerate.
+
+2002-03-04 Geoffrey Keating <geoffk@redhat.com>
+
+ * .cvsignore: Remove *.info* and genrtl*; these files are generated
+ elsewhere now.
+
+2002-03-04 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/include/texinfo.tex: Update to version 2002-03-01.06.
+ * doc/invoke.texi: Fix @math uses.
+
+Mon Mar 4 15:33:54 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (rest_of_compilation): Cleanup CFG after dead jumptables
+ removal
+
+2002-03-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * config.gcc (powerpc-*-eabialtivec*): Use t-ppcendian.
+ (powerpc-*-eabisimaltivec*): Same.
+
+ * config/rs6000/t-ppcendian: New.
+
+2002-03-04 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * c4x-protos.h, c4x.h, c4x.c, c4x.md: Add new functions
+ nonimmediate_src_operand and nonimmediate_lsrc_operand to
+ disallow ZERO_EXTEND with CONST_INT or CONST_DOUBLE.
+
+2002-03-03 Richard Henderson <rth@redhat.com>
+
+ * toplev.c (rest_of_decl_compilation): Revert last two changes.
+
+2002-03-03 Zack Weinberg <zack@codesourcery.com>
+
+ * emit-rtl.c, final.c, fold-const.c, gengenrtl.c, optabs.c,
+ print-tree.c, real.c, real.h, recog.c, rtl.c, simplify-rtx.c,
+ tree.c, config/m68k/m68k.c:
+ Remove all #ifndef REAL_ARITHMETIC blocks, make all #ifdef
+ REAL_ARITHMETIC blocks unconditional. Delete some further
+ #ifdef blocks predicated on REAL_ARITHMETIC.
+ * flags.h, toplev.c: Delete remaining references to
+ flag_pretend_float.
+
+ * doc/invoke.texi: Remove documentation of -fpretend-float.
+ * doc/tm.texi: Describe the various REAL_* macros as provided by
+ real.h, not by the target configuration files.
+
+ * config/alpha/alpha.h, config/alpha/unicosmk.h, config/arm/arm.h,
+ config/avr/avr.h, config/c4x/c4x.h, config/convex/convex.h,
+ config/cris/cris.h, config/d30v/d30v.h, config/dsp16xx/dsp16xx.h,
+ config/h8300/h8300.h, config/i370/i370.h, config/i386/i386.h,
+ config/i386/osf1elf.h, config/i960/i960.h, config/ia64/ia64.h,
+ config/m32r/m32r.h, config/m68hc11/m68hc11.h, config/m68k/dpx2.h,
+ config/m68k/linux-aout.h, config/m68k/linux.h, config/m68k/m68k.h,
+ config/m68k/sun3.h, config/m68k/vxm68k.h, config/mcore/mcore.h,
+ config/mips/mips.h, config/mmix/mmix.h, config/mn10200/mn10200.h,
+ config/mn10300/mn10300.h, config/pa/pa.h, config/pj/pj.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/sol2.h, config/sparc/sparc.h, config/sparc/vxsim.h,
+ config/stormy16/stormy16.h, config/v850/v850.h, config/vax/vax.h,
+ config/xtensa/xtensa.h:
+ Do not define, undefine, or mention in comments any of
+ REAL_ARITHMETIC, REAL_VALUE_ATOF, REAL_VALUE_HTOF,
+ REAL_VALUE_ISNAN, REAL_VALUE_ISINF,
+ REAL_VALUE_TO_TARGET_SINGLE, REAL_VALUE_TO_TARGET_DOUBLE,
+ REAL_VALUE_TO_TARGET_LONG_DOUBLE, REAL_VALUE_TO_DECIMAL,
+ REAL_VALUE_TYPE, REAL_VALUES_EQUAL, REAL_VALUES_LESS,
+ REAL_VALUE_LDEXP, REAL_VALUE_FIX, REAL_VALUE_UNSIGNED_FIX,
+ REAL_VALUE_RNDZINT, REAL_VALUE_UNSIGNED_RNDZINT,
+ REAL_INFINITY, REAL_VALUE_NEGATE, REAL_VALUE_TRUNCATE,
+ REAL_VALUE_TO_INT, or REAL_VALUE_FROM_INT.
+
+2002-03-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * 1750a.h, a29k.h, alpha.h, arc.h, arm.h, avr.h, c4x.h, clipper.h,
+ convex.h, cris.h, d30v.h, dsp16xx.h, elxsi.h, fr30.h, h8300.h,
+ i370.h, i386.h, i860.h, i960.h, ia64.h, m32r.h, m68hc11.h, m68k.h,
+ m88k.h, mcore.h, mips.h, mmix.h, mn10200.h, mn10300.h, ns32k.h,
+ pa.h, pdp11.h, pj.h, romp.h, rs6000.h, s390.h, sh.h, sparc.h,
+ stormy16.h, v850.h, vax.h, we32k.h, xtensa.h (BITS_PER_WORD):
+ Delete.
+ * defaults.h (BITS_PER_WORD): Define.
+ * doc/tm.texi (BITS_PER_WORD): Document default value.
+
+ * 1750a.h, avr.h, convex.h, d30v.h, dsp16xx.h, fr30.h, ia64.h,
+ m68hc11.h, m88k.h, mips.h, pdp11.h, rs6000.h, sparc.c,
+ stormy16.h, xtensa.h, vmsdbgout.c (CHAR_TYPE_SIZE): Delete.
+
+2002-03-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * attribs.c (init_attributes, decl_attributes): Use ARRAY_SIZE in
+ lieu of explicit sizeof/sizeof.
+ * i386.c (override_options, ix86_init_mmx_sse_builtins,
+ ix86_expand_builtin): Likewise.
+ * mips.c (mips_add_gc_roots): Likewise.
+ * mmix.c (mmix_output_condition): Likewise.
+ * rs6000.c (rs6000_override_options, altivec_expand_builtin,
+ altivec_init_builtins): Likewise.
+ * sparc.c (mark_ultrasparc_pipeline_state): Likewise.
+ * cppexp.c (Nsuff, parse_number): Likewise.
+ * cppinit.c (builtin_array_end): Likewise.
+ * gcc.c (n_default_compilers, process_command): Likewise.
+ * genpreds.c (output_predicate_decls): Likewise.
+ * ggc-page.c (NUM_EXTRA_ORDERS): Likewise.
+ * lcm.c (N_ENTITIES): Likewise.
+ * stor-layout.c (set_sizetype): Likewise.
+
+2002-03-03 Richard Henderson <rth@redhat.com>
+
+ * toplev.c (rest_of_decl_compilation): Do not invoke make_decl_rtl
+ for types or labels.
+
+2002-03-03 Richard Henderson <rth@redhat.com>
+
+ * c-decl.c (start_decl): Initialized variables are not common.
+
+2002-03-02 Per Bothner <per@bothner.com>
+
+ * gcc.c (option_map): Suport new --bootclasspath option.
+ --CLASSPATH is now just an alias for --classpath.
+
+2002-03-02 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.h (ix86_expand_prologue): Do not emit pic register
+ load if "internal" visibility.
+ * doc/extend.texi: Document visibility meanings.
+
+2002-03-02 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.h (ENCODE_SECTION_INFO): MODULE_LOCAL_P applies
+ to functions as well.
+
+2002-03-02 Richard Henderson <rth@redhat.com>
+
+ * attribs.c (handle_alias_attribute): Don't call assemble_alias.
+ (handle_visibility_attribute): Don't call assemble_visibility.
+ * toplev.c (rest_of_decl_compilation): Invoke make_decl_rtl even
+ without asmspec. Invoke assemble_alias when needed.
+ * varasm.c (maybe_assemble_visibility): New.
+ (assemble_start_function, assemble_variable, assemble_alias): Use it.
+
+2002-03-02 Richard Henderson <rth@redhat.com>
+
+ * varasm.c (make_decl_rtl): Remove call to REDO_SECTION_INFO_P;
+ invoke ENCODE_SECTION_INFO with first call flag.
+
+ * config/darwin-protos.h, config/darwin.c, config/darwin.h,
+ config/a29k/a29k.h, config/alpha/alpha-protos.h, config/alpha/alpha.c,
+ config/alpha/alpha.h, config/arc/arc.h, config/arm/arm-protos.h,
+ config/arm/arm.h, config/arm/pe.c, config/arm/pe.h,
+ config/avr/avr-protos.h, config/avr/avr.c, config/avr/avr.h,
+ config/c4x/c4x-protos.h, config/c4x/c4x.c, config/c4x/c4x.h,
+ config/cris/cris-protos.h, config/cris/cris.c, config/cris/cris.h,
+ config/d30v/d30v.h, config/h8300/h8300.h, config/i370/i370.h,
+ config/i386/cygwin.h, config/i386/i386-interix.h, config/i386/i386.h,
+ config/i386/osfrose.h, config/i386/win32.h, config/i386/winnt.c,
+ config/ia64/ia64-protos.h, config/ia64/ia64.c, config/ia64/ia64.h,
+ config/m32r/m32r-protos.h, config/m32r/m32r.c, config/m32r/m32r.h,
+ config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c,
+ config/m68hc11/m68hc11.h, config/m88k/m88k.h,
+ config/mcore/mcore-protos.h, config/mcore/mcore.c,
+ config/mcore/mcore.h, config/mips/mips.h, config/ns32k/ns32k.h,
+ config/pa/pa.h, config/romp/romp.h, config/rs6000/linux64.h,
+ config/rs6000/rs6000-protos.h, config/rs6000/rs6000.c,
+ config/rs6000/sysv4.h, config/rs6000/xcoff.h, config/s390/s390.h,
+ config/sh/sh.h, config/sparc/sparc.h,
+ config/stormy16/stormy16-protos.h, config/stormy16/stormy16.c,
+ config/stormy16/stormy16.h, config/v850/v850.h, config/vax/vms.h,
+ config/xtensa/xtensa.h, doc/tm.texi: ENCODE_SECTION_INFO now takes
+ FIRST argument. As needed, examine it and do nothing.
+
+ * config/darwin.h, config/alpha/alpha.h, config/arm/pe.h,
+ config/i386/cygwin.h, config/ia64/ia64.h, config/m68hc11/m68hc11.h,
+ config/mcore/mcore.h: Remove REDO_SECTION_INFO_P.
+
+ * config/arm/t-pe (pe.o): Add dependencies.
+
+2002-03-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * a29k.h, alpha.h, arc.h, arm.h, avr.h, clipper.h, convex.h,
+ cris.h, d30v.h, elxsi.h, fr30.h, h8300.h, i370.h, i386.h, i860.h,
+ i960.h, ia64.h, m32r.h, m68hc11.h, m68k.h, m88k.h, mcore.h,
+ mips.h, mmix.h, mn10200.h, mn10300.h, ns32k.h, pa.h, pdp11.h,
+ pj.h, romp.h, rs6000.h, s390.h, sh.h, sparc.h, stormy16.h, v850.h,
+ vax.h, we32k.h, xtensa.h: (BITS_PER_UNIT): Delete.
+ * defaults.h (BITS_PER_UNIT): Define.
+ * doc/tm.texi (BITS_PER_UNIT): Document default value.
+
+2002-03-02 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300-protos.h: Add a prototype for
+ compute_a_shift_length.
+ * config/h8300/h8300.c (h8300_asm_insn_count): New.
+ (compute_a_shift_length): Likewise.
+ (h8300_adjust_insn_length): Do not adjust insn length of shift
+ insns.
+ * config/h8300/h8300.md (anonymous shift patterns): Use
+ compute_a_shift_length.
+
+Sat Mar 2 06:30:14 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config/sparc/sparc.c (sparc_initialize_trampoline): Use
+ trunc_int_for_mode.
+
+ * emit-rtl.c (offset_address): Call update_temp_slot_address.
+
+2002-03-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (CRTSTUFF_CFLAGS): Add -fno-zero-initialized-in-bss.
+ * doc/invoke.texi (-fno-zero-initialized-in-bss): Document.
+ * flags.h (flag_zero_initialized_in_bss): Declare.
+ * toplev.c (flag_zero_initialized_in_bss): New flag.
+ (lang_independent_options): Add flag_zero_initialized_in_bss.
+ * tree.c (initializer_zerop): New function.
+ * tree.h (initializer_zerop): Declare.
+ * varasm.c (assemble_variable): If we can emit bss, put zero
+ initializers in the bss section.
+
+2002-03-02 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.h (ASM_WEAKEN_DECL): AIX assembler doesn't
+ like more than one symbol per .weak directive.
+
+2002-03-01 Richard Henderson <rth@redhat.com>
+
+ * config/ia64/ia64.c (ia64_initial_elimination_offset): Do not
+ adjust argument_pointer by pretend_args_size.
+ (ia64_va_start): Adjust va_start address by -pretend_args_size.
+
+2002-03-01 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.c (h8300_adjust_insn_length): Clean up.
+
+Fri Mar 1 20:59:14 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (rest_of_compilation): Delete dead jumptables before
+ loop.
+ * flow.c (delete_dead_jumptables): Make global.
+ * rtl.h (delete_dead_jumptables): Declare.
+
+2002-03-01 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.h (HANDLE_PRAGMA_PACK): Delete.
+ * config/rs6000/darwin.h (HANDLE_SYSV_PRAGMA): Define.
+ * config/rs6000/xcoff.h (COLLET_EXPORT_LIST): Delete.
+
+2002-03-01 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300-protos.h: Fix formatting.
+ * config/h8300/h8300.c: Likewise.
+ * config/h8300/h8300.h: Likewise.
+
+2002-03-01 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.c (print_operand): Support 16-bit
+ constant addresses.
+ * config/h8300/h8300.h (TINY_CONSTANT_ADDRESS_P): New.
+
+2002-02-28 Richard Henderson <rth@redhat.com>
+
+ * expmed.c (store_bit_field): Prevent generation of CONCATs;
+ pun complex values as integers; use gen_lowpart instead of
+ gen_rtx_SUBREG.
+ (extract_bit_field): Likewise.
+
+2002-03-01 Alan Modra <amodra@bigpond.net.au>
+ David Edelsohn <edelsohn@gnu.org>
+
+ * doc/tm.texi (ASM_WEAKEN_DECL): Document.
+ (ASM_WEAKEN_LABEL): Mention ASM_WEAKEN_DECL.
+ (SUPPORTS_WEAK): Likewise.
+ * output.h (add_weak): Add tree param.
+ * varasm.c (add_weak): Likewise. Save decl.
+ (struct weak_syms): Add decl field.
+ (mark_weak_decls): New function.
+ (init_varasm_once): ggc_add_root mark_weak_decls.
+ (assemble_start_function): Use ASM_WEAKEN_DECL.
+ (assemble_variable): Likewise.
+ (assemble_alias): Likewise.
+ (declare_weak): Pass decl to add_weak.
+ (weak_finish): Use ASM_WEAKEN_DECL. Try to find decl.
+ (remove_from_pending_weak_list): Declare and define for
+ ASM_WEAKEN_DECL.
+ * c-pragma.c (handle_pragma_weak): Adjust add_weak call.
+ * c-pragma.h (HANDLE_PRAGMA_WEAK): Define if ASM_WEAKEN_DECL too.
+ * defaults.h (SUPPORTS_WEAK): Likewise.
+ * config/rs6000/linux64.h (ASM_DECLARE_FUNCTION_NAME): Don't emit
+ .weak for code sym. Do emit .size for descriptor sym.
+ (ASM_DECLARE_FUNCTION_SIZE): Define.
+ * config/rs6000/rs6000.h (ASM_WEAKEN_DECL): Define.
+ (ASM_OUTPUT_DEF_FROM_DECLS): Don't emit .weak here. Don't output
+ .lglobl unless TARGET_XCOFF. Formatting fixes.
+ * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Don't emit
+ .weak for code sym.
+ (HANDLE_PRAGMA_WEAK): Remove.
+ (ASM_WEAKEN_LABEL): Remove.
+ * config/rs6000/aix.h (HANDLE_SYSV_PRAGMA): Define.
+
+2002-03-01 Jason Merrill <jason@redhat.com>
+
+ * tree.h (TARGET_EXPR_SLOT, TARGET_EXPR_INITIAL): New macros.
+ (TARGET_EXPR_CLEANUP): New macro.
+
+2002-02-28 Steve Ellcey <sje@cup.hp.com>
+
+ * doc/rtl.texi (SUBREG_PROMOTED_UNSIGNED_P): Change definition
+ to take ptr_extend into account as third type of extension.
+ (SUBREG_PROMOTED_UNSIGNED_SET): Definition of new macro to set bit
+ fields used by SUBREG_PROMOTED_UNSIGNED_P.
+ * rtl.h (SUBREG_PROMOTED_UNSIGNED_SET): New macro.
+ (SUBREG_PROMOTED_UNSIGNED_P): Change to return -1 as well as 0 or 1.
+ * calls.c (precompute_arguments): Use new macro.
+ (expand_call): Ditto.
+ * combine.c (nonzero_bits): Ditto.
+ (record_promoted_value): Ditto.
+ * expr.c (store_expr): Ditto.
+ (expand_expr): Ditto.
+ * function.c (assign_parms): Ditto.
+
+2002-02-28 Alexandre Oliva <aoliva@redhat.com>
+
+ * gcc.c (init_gcc_specs): Get -static and -static-libgcc to
+ override -shared and -shared-libgcc.
+
+2002-02-28 David O'Brien <obrien@FreeBSD.org>
+
+ * config.gcc (sparc64-*-freebsd): Explicitly accept a cpu specification
+ of "ultrasparc".
+ * config/sparc/freebsd.h: Do not use MASK_FASTER_STRUCTS. It appears
+ to be broken.
+
+2002-02-28 Richard Henderson <rth@redhat.com>
+
+ * config/ia64/ia64.c (ia64_adjust_cost): All non-MM consumers have
+ 4 cycle latency from MM producers.
+ (ia64_internal_sched_reorder): Likewise with pipeline flush.
+
+2002-02-28 Jakub Jelinek <jakub@redhat.com>
+
+ * mklibgcc.in: Don't use GNU make extension.
+
+2002-02-28 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-parse.in (STATIC): New terminal.
+ (scspec): New non-terminal. Update productions accordingly.
+ (program): Remove bogus ifc / end ifc.
+ (array_declarator): Simplify production using STATIC.
+
+2002-02-28 Jim Meyering <meyering@lucent.com>
+
+ * cpplex.c (cpp_parse_escape): Restore mistakenly-removed code:
+ \a still means TARGET_BELL.
+
+2002-02-28 Richard Henderson <rth@redhat.com>
+
+ * haifa-sched.c (sched_emit_insn): New.
+ (schedule_block): Use last_scheduled_insn to track last insn.
+ * sched-int.h (sched_emit_insn): Prototype.
+ * config/ia64/ia64.c (last_issued): Remove.
+ (ia64_variable_issue): Don't set it.
+ (nop_cycles_until): Use sched_emit_insn.
+
+2002-02-28 Andrew MacLeod <amacleod@redhat.com>
+
+ * config/sparc/sparc.c (sparc64_initialize_trampoline): Generate sign
+ extended constants.
+
+2002-02-28 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.c: Fix formatting.
+ * config/h8300/h8300.h: Likewise.
+
+2002-02-28 Marek Michalkiewicz <marekm@amelek.gda.pl>
+
+ * config/avr/avr.c (avr_hard_regno_mode_ok): Do not allow r29
+ which may overwrite the high byte of the frame pointer.
+
+2002-02-28 Bo Thorsen <bo@suse.de>
+
+ * config/i386/linux64.h (LINK_SPEC): Fix 32/64 bit compilation.
+ (STARTFILE_SPEC): Add 64 bit files.
+ (ENDFILE_SPEC): Likewise.
+
+2002-02-28 Jason Merrill <jason@redhat.com>
+
+ * c-decl.c (finish_function): Only warn about missing return
+ statement with -Wreturn-type.
+
+Don Feb 28 11:24:30 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * cfgrtl.c (purge_dead_edges): Fix handling of EH edges.
+
+ * i386.h (CONDITIONAL_REGISTER_USAGE): Do not write to
+ PIC_OFFSET_TABLE_REGNUM when it is INVALID_REGNUM
+
+Don Feb 28 11:07:36 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * basic-block.h (BB_REACHABLE): Renumber.
+ (BB_DIRTY, BB_NEW): New flags.
+ (clear_bb_flags): Declare.
+ (update_life_info_in_dirty_blocks): Declare.
+ * cfg.c (clear_bb_flags): New function.
+ * cfgrtl.c (create_basic_block_structure): Set flags to BB_NEW.
+ * emit-rtl.c (add_insn_after, add_insn_before, remove_insn,
+ reorder_insns, emit_insn_after): Mark block as dirty.
+ * flow.c (update_life_info): Fix clearing of PROP_LOG_LINKS.
+ (update_life_info_in_dirty_blocks): New function.
+ * recog.c (apply_change_group): Dirtify block.
+
+ * cse.c (cse_insn): Reorder emitting of jump insn to keep
+ cfg consistent.
+ * gcse.c (delete_null_pointer_checks): Likewise.
+
+ * toplev.c (dump_file_index): Move cse2 after bp,
+ add DFI_null
+ (dump_file_info): Similary.
+ (rest_of_compilation): Avoid most of CFG rebuilds;
+ do first if converision after null pointer checks, do cse2
+ after branch prediction; avoid full liveness rebuild after
+ initializing subregs.
+ * invoke.texi (-d options): Document -du, renumber.
+
+ * cfgcleanup.c (bb_flags): Remove BB_UPDATE_LIFE.
+ (notice_new_block): Do not set BB_UPDATE_LIFE.
+ (try_forward_edges, merge_blocks_move_predecessor_nojumps,
+ merge_blocks_move_successor_nojumps, merge_blocks,
+ try_crossjump_to_edge): Likewise.
+ (try_optimize_cfg): Likewise; use update_life_info_in_dirty_blocks.
+ * cfgrtl.c (merge_blocks_nomove): Copy b's flags to a.
+ * ifcvt.c (SET_UPDATE_LIFE, UPDATE_LIFE): Kill.
+ (merge_of_block): Do not use life_data_ok.
+ (find_if_case_1): Do not use SET_UPDATE_LIFE.
+ (if_convert): Use BB_DIRTY mechanizm to update life.
+ * lcm.c (optimize_mode_switching): Update
+ update_life_info_in_dirty_blocks
+
+2002-02-28 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * Makefile.in (integrate.o): Update.
+ * c-decl.c (copy_lang_decl): Rename.
+ * c-lang.c (LANG_HOOKS_DUP_LANG_SPECIFIC_DECL): Redefine.
+ * integrate.c: Include langhooks.h.
+ (copy_decl_for_inlining): Update to use langhook.
+ * langhooks-def.h (lhd_do_nothing_t,
+ LANG_HOOKS_DUP_LANG_SPECIFIC_DECL): New.
+ (LANG_HOOKS_INITIALIZER): Update.
+ * langhooks.c (lhd_do_nothing_t): New.
+ * langhooks.h (struct lang_hooks): Add dup_lang_specific_decl.
+ * tree.h (copy_lang_decl): Remove.
+objc:
+ * objc-lang.c (LANG_HOOKS_DUP_LANG_SPECIFIC_DECL): Redefine.
+
+2002-02-27 Andrew MacLeod <amacleod@redhat.com>
+
+ * dwarf2out.c (stack_adjust_offset): Add support for POST_INC,
+ POST_DEC, and POST_MODIFY.
+
+2002-02-27 Zack Weinberg <zack@codesourcery.com>
+
+ * c-typeck.c (digest_init): Remove unused parameter; all
+ callers changed.
+
+2002-02-27 Geoffrey Keating <geoffk@redhat.com>
+
+ * expmed.c (expand_shift): Correctly test for low part of a
+ subreg.
+
+2002-02-27 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_chunkify_pool): Do not confuse
+ insn UIDs with insn addresses.
+
+2002-02-27 Zack Weinberg <zack@codesourcery.com>
+
+ * c-common.c, c-common.h, c-decl.c, c-lex.c, c-parse.in,
+ c-tree.h, c-typeck.c, cppexp.c, cpplex.c, cpplib.c, cpplib.h,
+ cppmacro.c, objc/lang-specs.h, objc/objc-act.c,
+ builtin-types.def, builtins.def, dwarf2out.c, dwarfout.c,
+ gcc.c, toplev.c: Delete code implementing -traditional mode.
+
+ * doc/bugreport.texi, doc/cpp.texi, doc/extend.texi,
+ doc/invoke.texi, doc/standards.texi, doc/trouble.texi:
+ Document removal of -traditional mode for compilation, and
+ remove documentation only relevant to that mode.
+
+ * config/nextstep.h, config/ptx4.h, config/svr4.h,
+ config/convex/convex.h, config/d30v/d30v.h,
+ config/i386/dgux.h, config/i386/osf1elf.h,
+ config/i386/osfelf.h, config/i386/osfrose.h,
+ config/i386/sco5.h, config/i386/sol2.h, config/m68k/a-ux.h,
+ config/m68k/hp310.h, config/m88k/dgux.h,
+ config/m88k/dguxbcs.h, config/m88k/luna.h, config/m88k/m88k.c,
+ config/m88k/m88k.h, config/m88k/openbsd.h,
+ config/mips/abi64.h, config/mips/osfrose.h,
+ config/mips/svr4-5.h, config/mips/svr4-t.h,
+ config/sparc/sol2-sld-64.h, config/sparc/sol2.h,
+ config/stormy16/stormy16.h: Remove all references to
+ -traditional from target specs. Delete all mention of the
+ no-longer-necessary TRADITIONAL_RETURN_FLOAT macro. Also
+ delete a couple of commented-out definitions of
+ DOLLARS_IN_IDENTIFIERS, with (incorrect) commentary referring
+ to -traditional.
+
+ * system.h: Poison TRADITIONAL_RETURN_FLOAT.
+ * doc/tm.texi: Remove mention of TRADITIONAL_RETURN_FLOAT macro.
+
+2002-02-27 Zack Weinberg <zack@codesourcery.com>
+
+ * mklibgcc.in: Don't use \n in a line subject to
+ interpretation by echo.
+
+2002-02-27 Graham Stott <grahams@redhat.com>
+
+ * config/rs6000/rs6000.h (ASM_OUTPUT_DEF_FROM_DELC):
+ Constify NAME.
+
+ * loop.c (prescan_loop): Handle PARALLEL.
+
+ * unroll.c (loop_iterations): Return 0 if the add_val for
+ a BIV is REG.
+
+ * final.c (output_operand_lossage): Constify PFX_STR.
+
+ * df.c (df_insn_refs_record): Use XEXP (x, 0) for USE.
+
+Wed Feb 27 10:45:19 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * linux64.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Remove.
+ * x86-64.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Allways define.
+
+Wed Feb 27 10:39:20 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * linux64.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Define.
+
+2002-02-27 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpplex.c (_cpp_lex_token): Handle directives in macro
+ arguments.
+ * cpplib.c (_cpp_handle_directive): Save and restore state
+ if parsing macro args when entering a directive.
+ * cppmacro.c (collect_args): No need to handle directives
+ in macro arguments.
+ (enter_macro_context, replace_args): Use the original macro
+ definition in case it was redefined whilst collecting arguments.
+doc:
+ * cpp.texi: Update.
+
+2002-02-26 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/aix43.h (THREAD_MODEL_SPEC): Delete.
+ * config/rs6000/aix51.h (THREAD_MODEL_SPEC): Delete.
+ * config/rs6000/rs6000.c (rs6000_return_addr): Use efficient
+ method on AIX.
+ * config/rs6000/rs6000.md (movsi_low): Use gpc_reg_operand.
+ (movsi_low_st, movdf_low, movdf_low_st, movsf_low, movsf_low_st): Same.
+ (load_toc_v4_PIC_2): Same.
+
+2002-02-26 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.md (load_toc_aix_di): Handle TARGET_RELOCATABLE.
+
+2002-02-26 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.md (ashldi_se): Re-enable.
+
+2002-02-26 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (alpha_encode_section_info): Examine
+ MODULE_LOCAL_P; improve commentary.
+
+2002-02-26 Zack Weinberg <zack@codesourcery.com>
+
+ * doc/cpp.texi: Clarify documentation of relationship between
+ #line and #include.
+
+2002-02-26 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300-protos.h: Update the prototype for
+ compute_logical_op_length. Add the prototype for
+ compute_logical_op_cc.
+ * config/h8300/h8300.c (compute_logical_op_length): Figure out
+ code from operands.
+ (compute_logical_op_cc): New.
+ * config/h8300/h8300.md: Combine all the logical op patterns
+ in HImode and SImode. Use compute_logical_op_cc.
+
+2002-02-26 Kelley Cook <kelleycook@comcast.net>
+
+ * config/i386/i386.c (print_operand): Don't append ATT-style
+ length suffixs to x87 opcodes when in Intel mode.
+
+2002-02-26 Ryan T. Sammartino <ryants@shaw.ca>
+
+ * emit-rtl.c (gen_const_vector_0): Remove TYPE argument.
+ (init_emit_once): Update calls.
+ * fixinc/gnu-regex.c (_GNU_SOURCE): Remove.
+ (init_syntax_once): Prototype.
+
+2002-02-26 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa-linux.h (LIB_SPEC): Update definition.
+ * pa32-linux.h (LINK_COMMAND_SPEC): Delete.
+
+2002-02-26 Richard Henderson <rth@redhat.com>
+
+ * config/ia64/ia64.c (nop_cycles_until): Do init_insn_group_barriers
+ if we emitted a stop bit.
+
+2002-02-26 Jakub Jelinek <jakub@redhat.com>
+
+ * configure.in (libgcc_visibility): Substitute.
+ * configure: Rebuilt.
+ * mklibgcc.in: If libgcc_visibility = yes, make libgcc.a global
+ defined symbols .hidden.
+
+2002-02-26 Jakub Jelinek <jakub@redhat.com>
+
+ * attribs.c (c_common_attribute_table): Add visibility.
+ (handle_visibility_attribute): New function.
+ * varasm.c (assemble_visibility): New function.
+ * output.h (assemble_visibility): Add prototype.
+ * tree.h (MODULE_LOCAL_P): Define.
+ * crtstuff.c (__dso_handle): Use visibility attribute.
+ * config/i386/i386.h (ENCODE_SECTION_INFO): Set SYMBOL_REF_FLAG
+ for MODULE_LOCAL_P symbols too.
+ * config/ia64/ia64.c (ia64_encode_section_info): Handle
+ MODULE_LOCAL_P symbols the same way as local symbols.
+ Add SDATA_NAME_FLAG_CHAR even if decl was explicitely forced
+ into .sdata/.sbss by the user.
+ * doc/extend.texi (Function Attributes): Document visibility
+ attribute.
+
+2002-02-26 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/5770
+ * dwarf2out.c (rtl_for_decl_location): Return CONST_STRING for
+ STRING_CST initializer spanning the whole variable without
+ embedded zeros.
+ If expand_expr returned MEM, don't use it.
+
+2002-02-26 Alexandre Oliva <aoliva@redhat.com>
+
+ * dwarf2out.c (gen_inlined_subroutine_die): If block is abstract,
+ generate a die for the lexical block.
+
+2002-02-26 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300-protos.h: Add a prototype for
+ compute_logical_op_length.
+ * config/h8300/h8300.c (compute_logical_op_length): New.
+ * config/h8300/h8300.md (anonymous logical patterns): Use
+ compute_logical_op_length for length.
+
+2002-02-26 Aldy Hernandez <aldyh@redhat.com>
+
+ * dwarf2out.c (modified_type_die): Do not call type_main_variant
+ for vectors.
+ (gen_type_die): Same.
+
+ * attribs.c (handle_vector_size_attribute): Set debug information.
+
+2002-02-26 Daniel Egger <degger@fhm.edu>
+
+ * config/rs6000/rs6000.md: Swap define_insn attributes to
+ fix incorrect generation of merge high instructions instead
+ of merge low.
+
+2002-02-26 Aldy Hernandez <aldyh@redhat.com>
+
+ * c-typeck.c (really_start_incremental_init): Use
+ bitsize_zero_node for vectors.
+
+2002-02-26 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.md (get_vrsave_internal): Fix typo.
+ ("*set_vrsave_internal"): Same.
+
+2002-02-25 Richard Henderson <rth@redhat.com>
+
+ * expr.c (expand_expr) [MULT_EXPR]: Do not apply distributive law
+ in EXPAND_SUM case. Use host_integerp/tree_low_cst.
+
+2002-02-25 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/5755
+ * config/i386/i386.c (ix86_return_pops_args): Only pop
+ fake structure return argument if it was passed on the stack.
+
+2002-02-25 Jason Merrill <jason@redhat.com>
+
+ * attribs.c (decl_attributes): Also re-layout PARM_DECL and
+ RESULT_DECL.
+
+2002-02-25 Alexandre Oliva <aoliva@redhat.com>
+
+ * gcc.c (init_gcc_specs): Get -shared-libgcc along with -shared to
+ link with shared_name only.
+ * doc/invoke.texi (Link Options): Document new behavior.
+
+2002-02-25 Aldy Hernandez <aldyh@redhat.com>
+
+ * c-typeck.c (push_init_level): Handle vectors.
+
+2002-02-25 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sparc/sparc.c (const64_high_operand): Zero-extend
+ operands of SPARC_SETHI_P.
+ (input_operand): Likewise.
+ (sparc_emit_set_const32): Likewise.
+ * config/sparc/sparc.h (SPARC_SETHI_P): Disregard TARGET_ARCH64.
+ (SPARC_SETHI32_P): Zero-extend operand from 32 bits.
+ (CONST_OK_FOR_LETTER_P): Use SETHI32 for `K'. Add `N' as SETHI.
+ * config/sparc/sparc.md (movdi_insn_sp64_novis): Use `N'.
+ (movdi_insn_sp64_vis): Likewise.
+ (movdi split, movdf split): Use SETHI32.
+ * doc/md.texi: Document SPARC constraints L, M and N.
+