+2004-03-23 Olivier Hainque <hainque@act-europe.fr>
+
+ * optabs.c (expand_binop): When synthesizing double word rotates
+ from single word shifts, use a new register target if the provided
+ target is not a REG already.
+
+2004-03-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * alias.c (get_alias_set): Add support for TYPE_REF_CAN_ALIAS_ALL.
+ * c-common.c (handle_mode_attribute): Add extra arg to
+ build_pointer_type_for_mode and build_reference_type_for_mode.
+ * c-typeck.c (build_c_cast): Only look at TREE_CONSTANT_OVERFLOW
+ for INTEGER_CST.
+ * tree.c (build_pointer_type_for_mode): Add arg CAN_ALIAS_ALL.
+ Chain pointers via TYPE_NEXT_PTR_TO.
+ (build_reference_type_for_mode): Similarly.
+ (build_type_no_quals): Add extra arg to build_pointer_type_for_mode
+ and build_reference_type_for_mode.
+ (tree_check4_failed): New function.
+ * tree.h (TREE_CHECK4, PTR_OR_REF_CHECK): New macros.
+ (TYPE_REF_CAN_ALIAS_ALL, TYPE_NEXT_PTR_TO, TYPE_NEXT_REF_TO): Likewise.
+ (TREE_NO_UNSUED_WARNING, TREE_VIA_VIRTUAL, TREE_CONSTANT_OVERFLOW):
+ Add check.
+
+2004-03-23 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (tree_expr_nonnegative_p): A&B is nonnegative when
+ A is nonnegative or B is nonnegative. Similarly A|B is nonnegative
+ when both A and B are nonnegative.
+ (tree_expr_nonzero_p): A|B is nonzero when A is nonzero or B is
+ nonzero.
+
+2004-03-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ * fold-const.c (fold): Remove cases for INTEGER_CST, REAL_CST,
+ VECTOR_CST, STRING_CST, COMPLEX_CST, and CONSTRUCTOR.
+
+2004-03-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR optimization/14669
+ * fold-const.c (fold): Only unwiden integer comparisons for equality
+ and inequality operators, or when the signedness doesn't change.
+
+2004-03-23 Jakub Jelinek <jakub@redhat.com>
+
+ * config.gcc (sparc-*-linux*): Add sparc/t-linux to tmake_file.
+ * config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Set.
+ * config/sparc/t-linux: New file.
+
+2004-03-23 Richard Sandiford <rsandifo@redhat.com>
+
+ * gcse.c (can_assign_to_reg_p): New function, split out from...
+ (want_to_gcse_p): ...here.
+ (compute_ld_motion_mems): Use can_assign_to_reg_p to validate
+ the rhs of a store.
+
+2004-03-22 Diego Novillo <dnovillo@redhat.com>
+
+ * c-typeck.c (same_translation_unit_p): Fix pasto.
+
+2004-03-22 David Edelsohn <edelsohn@gnu.org>
+
+ * params.def (PARAM_MAX_SCHED_REGION_BLOCKS): New.
+ (PARAM_MAX_SCHED_REGION_INSNS): New.
+ * sched-rgn.c: Include params.h
+ (MAX_RGN_BLOCKS): Delete.
+ (MAX_RGN_INSNS): Delete.
+ (too_large): Return bool. Convert to PARAM_VALUE.
+ * Makefile.in (sched-rgn.o): Depend on $(PARAMS_H).
+ * doc/invoke.texi (param): Document max-sched-region-blocks and
+ max-sched-region-insns.
+
+2004-03-22 Joel Brobecker <brobecker@gnat.com>
+
+ * dwarf2out.c (is_subrange_type): Do not emit a subrange_type DIE
+ for base types.
+
+2004-03-22 Joel Brobecker <brobecker@gnat.com>
+
+ * dwarf2out.c (is_subrange_type): Minor code rework. No behavior
+ change.
+
+2004-03-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/14069
+ * c-decl.c (finish_struct): Change type of incorrect flexible array
+ field into error_mark_node.
+
+2004-03-22 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR target/14580
+ * config/rs6000/rs6000.c (symbol_ref_operand): Reject symbols
+ who are not local for Darwin PIC.
+
+2004-03-22 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * regrename.c (regrename_optimize): Set regs_ever_live for all
+ registers introduced as replacement.
+
+2004-03-22 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR middle-end/14470
+ * expr.c (mark_queue): New function.
+ (emit_insns_enqueued_after_mark): New function replacing
+ emit_queue. Clear the body of emitted queued insns.
+ (emit_queue): Call emit_insns_enqueued_after_mark.
+ (store_expr): Mark the increment queue on entry. Emit
+ only the incrementations queued when expanding the source.
+
+2004-03-22 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.ac: Allow --disable-coverage-flags (for the future benefit
+ of top level bootstrap, and consistency). Reindent.
+ * configure: Regenerate.
+
+2004-03-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * bt-load.c, builtins.c, cfghooks.c, cfgrtl.c, gcse.c,
+ ggc-page.c, integrate.c, var-tracking.c, web.c: Remove
+ unnecessary casts.
+
+2004-03-22 Danny Smith <dannysmith@users.sourceforge.net>
+
+ PR target/14291
+ * gcov-io.h (gcov_truncate): Define ftruncate as _chsize for
+ __MINGW32__.
+
+2004-03-21 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("*doloop_si"): Change predicate for operand 2
+ to nonimmediate_operand.
+ ("*doloop_di"): Likewise.
+
+2004-03-21 Alexandre Oliva <aoliva@redhat.com>
+
+ * real.h (struct real_value): Use the same type for all
+ bitfields. Rename exp to uexp.
+ (REAL_EXP, SET_REAL_EXP): New accessor macros for uexp.
+ Adjust all uses of exp...
+ * builtins.c: ... here, ...
+ * emit-rtl.c: ... here, and ...
+ * real.c: ... and here.
+
+2004-03-21 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * pretty-print.c (pp_base_maybe_space): New function.
+ * pretty-print.h (pp_base_maybe_space): Declare.
+ (pp_maybe_space): New macro.
+
+2004-03-21 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("addti3", "subti3"): New insns and splitters.
+
+2004-03-21 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * expmed.c (choose_mult_variant): Pass MULT_COST as argument instead
+ of using register multiplication cost.
+ (expand_mult): Adapt choose_mult_variant call.
+ (expand_mult_highpart): Call choose_mult_variant with WIDER_MODE
+ of MODE; pass appropriate cost bound. Adjust result when
+ performing signed multiplication by a negative constant.
+ Don't use intermediate modes larger than word_mode.
+
+2004-03-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * alias.c (get_alias_set): Remove handling of PLACEHOLDER_EXPR.
+ * emit-rtl.c (component_ref_for_mem_expr): Likewise.
+ (set_mem_attributes_minus_bitpos): Call SUBSTITUTE_PLACEHOLDER_IN_EXPR.
+ * explow.c (expr_size): Likewise.
+ * expr.h (placeholder_list, find_placeholder): Deleted.
+ * expr.c (store_constructor): Likewise.
+ (get_inner_reference): Likewise. Also don't call find_placeholder.
+ (placeholder_list, find_placeholder): Deleted.
+ (is_aligning_offset): Don't handle WITH_RECORD_EXPR, PLACEHOLDER_EXPR.
+ (expand_expr_real, cases PLACEHOLDER_EXPR, WITH_RECORD_EXPR): Likewise.
+ (highest_pow2_factor, case WITH_RECORD_EXPR): Remove.
+ * dojump.c (do_jump, case WITH_RECORD_EXPR): Likewise.
+ * dwarf2out.c (loc_descriptor_from_tree, case WITH_RECORD_EXPR):
+ Likewise.
+ * fold-const.c (invert_truthvalue, case WITH_RECORD_EXPR): Likewise.
+ (extract_muldiv, case WITH_RECORD_EXPR): Likewise.
+ * tree.c (expr_align, case WITH_RECORD_EXPR): Likewise.
+ (contains_placeholder_p): Don't handle WITH_RECORD_EXPR.
+ Clean up by using first_rtl_op.
+ (substitute_in_expr): Use SUBSTITUTE_IN_EXPR for recursive call.
+ (substitute_placeholder_in_expr): New function.
+ * tree.def (WITH_RECORD_EXPR): Deleted.
+ * tree.h (SUBSTITUTE_IN_EXPR, SUBSTITUTE_PLACEHOLDER_IN_EXPR): New.
+ (substitute_placeholder_in_expr): New.
+
+2004-03-21 Andrew Pinski <pinskia@gcc.gnu.org>
+
+ * dojump.c (prefer_and_bit_test): Fix which part of
+ the and_test is replaced.
+
+2004-03-21 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * frontends.texi: Add missing line.
+
+2004-03-21 Zack Weinberg <zack@codesourcery.com>
+ Chris Devers <cdevers@pobox.com>
+ Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/frontends.texi: Rewrite.
+ * doc/gcc.texi: Update last modification date.
+
+2004-03-21 Josef Zlomek <zlomekj@suse.cz>
+
+ * cfgrtl.c (cfg_layout_redirect_edge_and_branch): Print the debug
+ message before redirecting the edge.
+
+2004-03-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * emit-rtl.c (set_mem_attributes_minus_bitpos): Set MEM_POINTER
+ flag.
+ * explow.c (force_not_mem): Set REG_POINTER flag according to
+ MEM_POINTER one.
+ * rtl.h (MEM_POINTER): New macro.
+ (struct rtx_def): Use integrated for MEM_SCALAR_P and frame_related
+ for MEM_POINTER.
+
+2004-03-20 Roger Sayle <roger@eyesopen.com>
+
+ PR target/13889
+ * cse.c (fold_rtx): Avoid substituting constants into unary
+ conversion operations.
+
+2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * fold-const.c (fold): Replace "expr" with "t".
+
+2004-03-20 Ian Lance Taylor <ian@wasabisystems.com>
+
+ PR c/12373
+ * c-typeck.c (tagged_types_tu_compatible_p): Don't use
+ DECL_ORIGINAL_TYPE if there isn't one.
+
+2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * fold-const.c (fold): Replace "final_type" with "type".
+ Remove variable "final_type".
+
+2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * fold-const.c (fold): Constify "type".
+ Replace "TREE_TYPE (t)" with "type".
+
+2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * bb-reorder.c, bt-load.c, c-decl.c, cfgcleanup.c, coverage.c,
+ dwarf2asm.c, ifcvt.c, stor-layout.c, varasm.c: Replace calls
+ via (*targetm.foo) () with targetm.foo ().
+
+2004-03-20 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR other/14630
+ * doc/install.texi: Add info directory category and entry.
+
2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
* fold-const.c (fold): Replace "t" with "tem" where it is used
* config/rs6000/rs6000.h: Definition of DWARF_CIE_DATA_ALIGNMENT
macro for mixed mode.
->>>>>>> 2.3203
2004-03-18 Jan Hubicka <jh@suse.cz>
* predict.c (propagate_freq): Compute correctly frequency of