+2001-12-14 Zack Weinberg <zack@codesourcery.com>
+
+ * combine.c (record_dead_and_set_regs): Use
+ regs_invalidated_by_call. Don't note stores for CALL_INSNs.
+
+2001-12-14 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.def: Rename BUILT_IN_FSQRT to BUILT_IN_SQRT and
+ __builtin_fsqrt to __builtin_sqrt.
+
+ * builtins.c (expand_builtin_mathfn,expand_builtin): Same.
+ * doc/extend.texi: Simplify documentation to match patch.
+
+Fri Dec 14 21:23:54 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * config.gcc: Revamp target_cpu_default2 to strings;
+ support new x86 variants.
+ * i386.c (override_options): Default x86_cpu_string and x86_arch_string
+ properly; set prefetch_sse.
+ * i386.h (x86_prefetch_sse): Declare.
+ (TARGET_PREFETCH_SSE): New.
+ (CPP_CPU_DEFAULT_SPEC): Define according to the new macros.
+ (TARGET_CPU_DEFAULT_*): New.
+
+Thu Dec 13 21:57:13 CET 2001 Janis Johnson <janis187@us.ibm.com>
+ Jan Hubicka <jh@suse.cz>
+
+ * config/i386/i386.h (struct processor_costs): Add new members
+ prefetch_block and simultaneous_prefetches.
+ (PREFETCH_BLOCK, SIMULTANEOUS_PREFETCHES): New.
+ * config/i386/i386.c (processor_costs structs): Add values for
+ prefetch_block and simultaneous_prefetches.
+ * config/i386/i386.md (unspec values): Remove values for prefetch
+ operations, which now use the PREFETCH rtx code.
+ (prefetch_sse, prefetch_3dnow, prefetchw): Combine to use new
+ unified prefetch support.
+
+2001-12-14 Jason Merrill <jason@redhat.com>
+
+ * diagnostic.c (sorry): Increment sorrycount before saving the
+ buffer state.
+
+Fri Dec 14 19:53:23 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (sqrt?f): Fix conditionals.
+
+Fri Dec 14 07:29:52 2001 Douglas B. Rupp <rupp@gnat.com>
+
+ * config.gcc (alpha64-dec-*vms*): New case.
+ * config/alpha/t-vms64, config/alpha/vms-crt0-64.c: New files.
+ * config/alpha/vms-psxcrt0-64.c, config/alpha/vms64.h: Likewise.
+ * config/alpha/xm-vms64.h: Likewise.
+
+ * config/alpha/alpha.c (vms_attribute_table): Add new attributes.
+ (alpha_write_linkage): Test for null alpha_links.
+ (SECTION_VMS_GLOBAL, SECTION_VMS_INITIALIZE): New section attributes.
+ (vms_section_type_flags, vms_asm_named_section): Handle them.
+
+Fri Dec 14 12:05:14 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_fpmath, ix86_fpmath_string): New.
+ (override_option): Set ix86_fpmath.
+ * i386.h (MASK_MIX_SSE_I387): Remove.
+ (TARGET_SSE_MATH): New.
+ (TARGET_MIX_SSE_I387): Use ix86_fpmath.
+ (TARGET_SWITCHES): Remove "mix-sse-i387".
+ (fpmath_unit): New enum.
+ (ix86_fpmath, ix86_fpmath_string): Declare.
+ * i386.md (swapsf): Fix condition.
+ (add?f, sub?f, mul?f, div?f, sqrt?f, min?f): Use TARGET_SSE_MATH.
+ (fp_?f_*_nosse): New.
+ (fp_*): Use TARGET_SSE_MATH.
+ * invoke.texi (-mfpmath): Document.
+ (-msse2): Add.
+
+2001-12-14 Jason Merrill <jason@redhat.com>
+
+ * dwarf2out.c (output_die): Print the string in the comment for
+ a DW_FORM_strp.
+
+2001-12-14 Richard Earnshaw <rearnsha@arm.com>
+
+ * netbsd.h (COLLECT_SHARED_INIT_FUNC)
+ (COLLECT_SHARD_FINI_FUNC): Remove redundant semicolon.
+ * doc/tm.texi (COLLECT_SHARED_INIT_FUNC)
+ (COLLECT_SHARD_FINI_FUNC): Use @code where appropriate.
+
+2001-12-13 Richard Henderson <rth@redhat.com>
+
+ * regrename.c (kill_value_regno): Simplify chain removal.
+ (kill_value): Kill all of HARD_REGNO_NREGS.
+ (kill_set_value): Use kill_value not kill_value_regno.
+ (kill_autoinc_value): Likewise.
+ (copyprop_hardreg_forward): Don't collect refresh_blocks.
+ Call delete_noop_moves.
+
+2001-12-13 Aldy Hernandez <aldyh@redhat.com>
+
+ * attribs.c (c_common_attribute_table): Swap decl_req and type_req
+ for the mode attribute.
+ (handle_mode_attribute): Handle types, not decls.
+
+2001-12-13 Jason Merrill <jason@redhat.com>
+
+ * c-common.h (COMPOUND_STMT_BODY_BLOCK): New macro.
+
+2001-12-13 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.md (eh_set_lr_di): Change scratch
+ constraint to base register.
+ (eh_set_lr_si): Same.
+
+2001-12-13 Hans-Peter Nilsson <hp@axis.com>
+
+ * expr.c (expand_expr, case ADDR_EXPR): Don't honor
+ flag_force_addr for modifier != EXPAND_CONST_ADDRESS,
+ modifier != EXPAND_INITIALIZER and modifier != EXPAND_SUM.
+
+Thu Dec 13 20:30:08 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expr.c (copy_blkmode_from_reg): Add missing braces to eliminate
+ warning and reformat comments.
+ (expand_assignment): Don't pass EXPAND_WRITE if LHS is component.
+ (highest_pow2_factor, case INTEGER_CST): Return BIGGEST_ALIGNMENT
+ if overflow.
+
+2001-12-12 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_override_options): Add
+ SUBSUBTARGET_OVERRIDE_OPTIONS.
+
+ * config/rs6000/eabialtivec.h: New file.
+
+ * config/rs6000/linuxaltivec.h: New file.
+
+ * config.gcc: Add powerpc-*-eabialtivec and
+ powerpc-*-linux-gnualtivec.
+
+2001-12-13 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * toplev.c (process_options, parse_options_and_default_flags):
+ Set flag_no_inline before the post_options hook.
+
+2001-12-13 Richard Henderson <rth@redhat.com>
+
+ * emit-rtl.c (adjust_address_1): Don't adjust address if adjust
+ is false.
+
+2001-12-13 Richard Earnshaw <rearnsha@arm.com>
+
+ * collect2.c (COLLECT_SHARED_INIT_FUNC)
+ (COLLECT_SHARD_FINI_FUNC): Define default values.
+ (write_c_file_stat): Use them to call construtor and destructor
+ functions in shared libraries.
+ * doc/tm.texi (COLLECT_SHARED_INIT_FUNC)
+ (COLLECT_SHARD_FINI_FUNC): Document them.
+ * config/netbsd.h (COLLECT_SHARED_INIT_FUNC)
+ (COLLECT_SHARD_FINI_FUNC): Define.
+
+ * config/netbsd.h (LINK_SPEC): Don't pull in estart if creating a
+ shared library. Pass -shared through to the linker.
+ * config/arm/netbsd.h (LINK_SPEC): Likewise.
+
+ * config/arm/t-netbsd (TARGET_LIBGCC2_CFLAGS): Add -fpic.
+ (SHLIB_EXT, SHLIB_NAME, SHLIB_SONAME, SHLIB_OBJS, SHLIB_LINK)
+ (SHLIB_INSTALL): Define.
+
+2001-12-13 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (legitimize_pic_address): Handle LABEL_REFs in substantially
+ the same way as we handle SYMBOL_REFS.
+
+Thu Dec 13 07:47:24 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * loop.c (remove_constant_addition): Fix prototype and whitespace.
+ (emit_prefetch_instructions): Remove warnings and whitespace
+ changes.
+
+Thu Dec 13 06:48:38 2001 Douglas B. Rupp <rupp@gnat.com>
+
+ * config/alpha/vms-cc.c (preprocess_args): Fix forward
+ declaration.
+
+Thu Dec 13 12:31:07 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * predict.c (estimate_probability): Reorganize opcode heuristics.
+ * predict.def (PRED_OPCODE_POSITIVE, PRED_OPCODE_NONEQUAL,
+ PRED_FPOPCODE): New.
+
+ * i386.c (override_options): Recognize various CPU variants and set
+ SSE/MMX/3dNOW flags accordingly.
+ * i386.h (MASK_MMX_SET, MASK_SSE_SET, MASK_SSE2_SET, MASK_3DNOW_SET,
+ MASK_3DNOW_A_SET): New.
+ (MASK_ACCUMULATE_OUTGOING_ARGS_SET): New.
+ (MASK_NO_ACCUMULATE_OUTGOING_ARGS): Delete.
+ (MASK_*): Renumber.
+ (TARGET_FLAGS): Use new masks.
+ (CPP_CPU_SPECS): Recognize new CPU variants.
+ * invoke.texi (-mcpu): Update documentation.
+
+ * flags.h (flag_prefetch_loop_arrays): Declare.
+ * loop.h (LOOP_PREFETCH): Define new constant.
+ * loop.c (strength_reduce): Call emit_prefetch_instructions.
+ (MAX_PREFETCHES, PREFETCH_BLOCKS_BEFORE_LOOP_MAX,
+ PREFETCH_BLOCKS_BEFORE_LOOP_MIN, PREFETCH_BLOCKS_IN_LOOP_MIN): New
+ constants.
+ (check_store_data): New structure.
+ (check_store, emit_prefetch_instructions, rtx_equal_for_prefetch_p):
+ New functions.
+ * toplev.c: Include insn-flags.h.
+ (flag_prefetch_loop_arrays): New global variable.
+ (lang_independent_option): Add -fprefetch-loop-arrays.
+ (rest_of_compilation) Pass LOOP_PREFETCH when flag_prefetch_loop_arrays
+ is set.
+ * Makefile.in (toplev.c): Depend on insn-flags.h.
+ * invoke.texi (-fprefetch-loop-arrays): Document.
+
+ * predict.c (estimate_probability): Distribute the loop exit
+ probability according to number of exit edges.
+
+ * cfgcleanup.c (insns_match_p): Break out from ...;
+ (flow_find_cross_jump): ... here;
+ (outgoing_edges_match): Add parameter MODE; attempt to match everything
+ except for tablejumps.
+ (try_crossjump_to_edge): Accept complex edges.
+ (try_crossjump_bb): Likewise.
+
2001-11-29 Corey Minyard <minyard@acm.org>
* recog.c (validate_replace_rtx_1): Use simplify_gen_binary