+2004-10-13 Frank Ch. Eigler <fche@redhat.com>
+
+ * toplev.c (compile_file): Call mudflap_finish_file from here ...
+ * c-decl.c (c_write_global_declarations): ... instead of here ...
+ * cp/decl.c (cp_finish_file): ... and here.
+ * tree-mudflap.c (mudflap_enqueue_decl): Reword a warning message.
+
+2004-10-13 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * tree-ssa-dom.c (record_range): Free the element if we are not
+ going to use it.
+
+2004-10-13 Tom Tromey <tromey@redhat.com>
+
+ PR java/15578:
+ * gcc.c (option_map): Added --extdirs and --encoding.
+
+2004-10-13 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/14454
+ * config/sparc/sparc.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): Set to
+ sparc_can_output_mi_thunk.
+ (sparc_output_mi_thunk): Simplify handling of delta offset. Add
+ handling of vcall offset.
+ (sparc_can_output_mi_thunk): New predicate.
+ * doc/tm.texi (TARGET_ASM_OUTPUT_MI_THUNK): Document VCALL_OFFSET.
+ (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Delete.
+ (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New target hook.
+
+ * config/sparc/sparc.c (emit_and_preserve): Preserve stack alignment.
+
+ * config/sparc/sparc.md (movdi): Remove redundant test.
+
+2004-10-13 Paolo Bonzini <bonzini@gnu.org>
+
+ * tree-dump.c (dump_options): Remove TDF_TREE, TDF_RTL,
+ TDF_IPA from -fdump-tree-*-all.
+
+2004-10-13 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm-protos.h (arm_load_pic_register): Update prototype.
+ * config/arm/arm.c (thumb_find_work_register): Update comments.
+ (arm_load_pic_register): Add argument for scratch register.
+ (arm_expand_prologue, thumb_expand_prologue): Pass extra argument.
+ * config/arm/arm.md (builtin_setjmp_receiver): Ditto.
+
+2004-10-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-data-ref.c: Fix comment typos.
+
+2004-10-13 Jakub Jelinek <jakub@redhat.com>
+ Zdenek Dvorak <dvorakz@suse.cz>
+
+ PR tree-optimization/17724
+ * tree-cfg.c (tree_purge_dead_eh_edges): Free dominance info.
+
+2004-10-13 Dorit Naishlos <dorit@il.ibm.com>
+
+ * rs6000.c (altivec_builtin_mask_for_load): Made static GTY(()).
+ (altivec_builtin_mask_for_store): Likewise.
+ (altivec_init_builtins): Use lang_hooks.builtin_function to
+ create the decls for builtin_altivec_mask_for_load/store.
+
+2004-10-13 Nick Clifton <nickc@redhat.com>
+
+ * config/c4x/c4x.c: Remove inclusion of loop.h.
+
+2004-10-12 Ben Elliston <bje@au.ibm.com>
+
+ * basic-block.h (edge_iterator): Keep the address of VEC(edge) *.
+ (ei_container): New; renamed.
+ (ei_start, ei_last): New macros.
+ (ei_start_1, ei_last_1): Renamed from ei_start.
+ (ei_last_1, ei_end_p): Use ei_container() where applicable.
+ (ei_one_before_end_p, ei_next, ei_edge): Likewise.
+ * gcse.c (remove_reachable_equiv_notes): Use ei_container().
+
+2004-10-11 Sebastian Pop <pop@cri.ensmp.fr>
+
+ * Makefile.in (tree-ssa-loop-niter.o): Depends on tree-data-ref.h.
+ * cfgloop.c (initialize_loops_parallel_p): New.
+ (flow_loops_find): Initialize the parallel_p field to true for all
+ the loops.
+ * tree-ssa-loop-niter.c: Include "tree-data-ref.h".
+ (estimate_numbers_of_iterations_loop): Infers the loop bounds from
+ the size of the data accessed in the loop.
+ (struct nb_iter_bound): Moved...
+ * cfgloop.h (struct nb_iter_bound): ... here.
+ (estimated_nb_iterations, parallel_p): New fields in struct loop.
+ (record_estimate): Declare extern here.
+ * tree-chrec.c: Fix comments.
+ (nb_vars_in_chrec): New function.
+ * tree-chrec.h (nb_vars_in_chrec): Declared here.
+ * tree-data-ref.c: Don't include lambda.h, that is already included
+ in tree-data-ref.h.
+ (tree_fold_divides_p): Don't check for integer_onep.
+ (tree_fold_bezout): Removed.
+ (gcd): New static duplicated function.
+ (int_divides_p, dump_subscript): New.
+ (dump_data_dependence_relation): Use dump_subscript.
+ (dump_dist_dir_vectors, dump_ddrs, compute_estimated_nb_iterations,
+ estimate_niter_from_size_of_data): New.
+ (analyze_array_indexes, analyze_array): Call
+ estimate_niter_from_size_of_data during the detection of array
+ references. Pass in a pointer to the statement that contains the
+ array reference.
+ (all_chrecs_equal_p): New.
+ (compute_distance_vector): Renamed compute_subscript_distance.
+ Deal with multivariate conflict functions.
+ (initialize_data_dependence_relation): Initialize DDR_AFFINE_P,
+ DDR_SIZE_VECT, DDR_DIST_VECT, and DDR_DIR_VECT.
+ (non_affine_dependence_relation): New.
+ (analyze_ziv_subscript, analyze_siv_subscript_cst_affine,
+ analyze_siv_subscript, analyze_miv_subscript,
+ analyze_overlapping_iterations, subscript_dependence_tester):
+ Initialize and return last_conflicts function.
+ (initialize_matrix_A, FLOOR, compute_overlap_steps_for_affine_univar,
+ compute_overlap_steps_for_affine_1_2): New.
+ (analyze_siv_subscript_affine_cst): Removed.
+ (analyze_subscript_affine_affine): Disprove dependences based on the
+ iteration domains. Solve the univariate dependence case as before,
+ but use lambda_matrix_right_hermite instead of tree_fold_bezout.
+ Implement the multivariate case of 2 versus 1 variables.
+ (build_classic_dist_vector, build_classic_dir_vector): Implement some
+ unhandled cases.
+ (find_data_references_in_loop): Compute and initialize
+ loop->estimated_nb_iterations and loop->parallel_p.
+ (analyze_all_data_dependences): Modify the debug dump order.
+ * tree-data-ref.h (SUB_LAST_CONFLICT_IN_A, SUB_LAST_CONFLICT_IN_B,
+ subscript->last_conflict_in_a, subscript->last_conflict_in_b): Removed.
+ (SUB_LAST_CONFLICT, subscript->last_conflict,
+ data_dependence_relation->affine_p, data_dependence_relation->size_vect,
+ DDR_AFFINE_P, DDR_SIZE_VECT): New.
+ (find_data_references_in_loop, initialize_data_dependence_relation,
+ dump_subscript, dump_ddrs, dump_dist_dir_vectors): Declared here.
+
+2004-10-12 Kelley Cook <kcook@gcc.gnu.org>
+
+ * configure: Regenerate.
+
+2004-10-12 Fariborz Jahanian <fjahanian@apple.com>
+
+ PR 17892
+ * tree-ssa-dom.c (unsafe_associative_fp_binop): New function.
+ (simplify_rhs_and_lookup_avail_expr): Disallow associativity
+ and constant folding of floating point MULT_EXPR/PLUS_EXPR
+ expressions.
+
+2004-10-12 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_va_start): Use build_va_arg_indirect_ref.
+ (s390_gimplify_va_arg): Likewise.
+
+2004-10-12 Daniel Jacobowitz <dan@debian.org>
+
+ * defaults.h (REGNO_MODE_OK_FOR_BASE_P, REG_MODE_OK_FOR_BASE_P)
+ (MODE_BASE_REG_REG_CLASS, REGNO_MODE_OK_FOR_REG_BASE_P)
+ (REG_MODE_OK_FOR_REG_BASE_P): Provide default definitions.
+ * regclass.c (record_address_regs): Remove ifdef. Use
+ REG_MODE_OK_FOR_REG_BASE_P and MODE_BASE_REG_REG_CLASS.
+ * regrename.c (REG_MODE_OK_FOR_BASE_P): Remove unnecessary
+ definition.
+ (scan_rtx_address, replace_oldest_value_addr): Use
+ REG_MODE_OK_FOR_REG_BASE_P and MODE_BASE_REG_REG_CLASS.
+ * reload.c (REGNO_MODE_OK_FOR_BASE_P, REG_MODE_OK_FOR_BASE_P): Remove
+ unnecessary definitions.
+ (find_reloads_address_1): Support REG_MODE_OK_FOR_REG_BASE_P
+ and MODE_BASE_REG_REG_CLASS.
+ * config/arm/arm.h (MODE_BASE_REG_CLASS): Don't check reload_completed.
+ (MODE_BASE_REG_REG_CLASS): Define.
+ (REGNO_MODE_OK_FOR_REG_BASE_P): Define.
+ (REG_MODE_OK_FOR_REG_BASE_P): Define.
+ * doc/tm.texi (Register Classes): Document MODE_BASE_REG_REG_CLASS,
+ REG_MODE_OK_FOR_REG_BASE_P, and REGNO_MODE_OK_FOR_REG_BASE_P.
+
+2004-10-12 Daniel Berlin <dberlin@dberlin.org>
+
+ * tree-ssa-alias.c (verify_name_tags): New function.
+ (verify_flow_sensitive_alias_info): Remove code that used to check name tags.
+ (verify_alias_info): Call verify_name_tags.
+
+2004-10-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR rtl-optimization/17931
+ * config/i386/i386.c (ix86_rtx_costs): Handle COMPARE with
+ ZERO_EXTRACT in it.
+
+2004-10-12 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_print_operand): Use output_operand_lossage where possible
+ rather than aborting.
+
+2004-10-12 Paul Brook <paul@coudesourcery.com>
+
+ * config.gcc: Add armv6{k,z,zk}
+ * config/arm/arm-cores.def: Add arm1176 and mpcore.
+ * config/arm/tune.md: Regenerate.
+ * config/arm/arm.c (FL_FOR_ARCH6K, FL_FOR_ARCH6Z, FL_FOR_ARCH6ZK):
+ Define.
+ (all_architectures): Add armv6k, armv6z, armv6zk.
+ * config/arm/lib1funcs.asm: Recognise new arm arcitectures.
+ * doc/invoke.texi: Document new arch and cpu values.
+
+2004-10-12 Paul Brook <paul@coodesourcery.com>
+
+ * config/arm/bpabi.h (SUBTARGET_EXTRA_ASM_SPEC): Change meabi=3 to
+ meabi=4.
+
+2004-10-12 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.md (addsi3_cbranch_scratch): Correct constraints.
+ Handle negative constants.
+
+2004-10-12 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/17301
+ * c-typeck.c (convert_arguments): Return error_mark_node if there
+ are too few arguments.
+ (build_function_call): Handle error_mark_node return from
+ convert_arguments.
+
+2004-10-06 Paolo Bonzini <bonzini@gnu.org>
+
+ * configure.ac (symbolic_link): Replace with $LN_S.
+ (Assembler/Linker): Hard link from gas and binutils trees.
+ * aclocal.m4 (gcc_AC_PROG_LN_S): Try "cp -p" before cp.
+ * configure: Regenerate.
+
+2004-10-12 Paul Brook <paul@codesourcery.com>
+
+ * configure.ac: Don't look for host assembler when building a canadian
+ cross.
+ * configure: Regenerate.
+
+2004-10-11 Roger Sayle <roger@eyesopen.com>
+
+ PR other/17361
+ * c-opts.c (permit_fortran_options): Delete/obsolete global variable.
+ (c_common_init_options): Remove #ifdef CL_F77 code. Scan command
+ line options for "-lang-asm" and if found allow any of the C-family
+ front-end options.
+ (c_common_handle_option): Remove last use of permit_fortran_options.
+
+2004-10-11 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (print_operand): Support 'S' format flag.
+ * config/s390/s390.md ("*tmqi_mem"): Use 'S' format flag.
+ ("*tstsi", "*tstsi_cconly", "*tstsi_cconly2"): Likewise.
+ ("*tsthiCCT", "*tsthiCCT_cconly", "*tsthi", "*tsthi_cconly"): Likewise.
+ ("*tstqiCCT", "*tstqiCCT_cconly", "*tstqi", "*tstqi_cconly"): Likewise.
+ ("*cmphi_ccu", "*cmpqi_ccu", "*clc"): Likewise
+ ("movti", "*movdi_31", "*movqi", "*movdf_31", "*mvc"): Likewise.
+ ("*movstricthi"): Likewise.
+ ("*load_multiple_di", "*load_multiple_si"): Likewise.
+ ("*store_multiple_di", "*store_multiple_si"): Likewise.
+ ("*sethiqisi", "*sethihisi"): Likewise.
+ ("*sethiqidi_64", "*sethiqidi_31"): Likewise.
+ ("*andqi3_zarch", "*andqi3_esa", "*nc"): Likewise.
+ ("*iorqi3_zarch", "*iorqi3_esa", "*oc"): Likewise.
+ ("*xorqi3", "*xc", "*xc_zero"): Likewise.
+ ("get_tp_64", "get_tp_31", "set_tp_64", "set_tp_31"): Likewise.
+
+ ("*tmhi_full"): Fix incorrect op_type attribute.
+
+ ("*adddi3_alc_cc", "*adddi3_alc"): Remove double backslash.
+ ("*subdi3_slb_cc", "*subdi3_slb"): Likewise.
+ ("*addsi3_alc_cc", "*addsi3_alc"): Likewise.
+ ("*subsi3_slb_cc", "*subsi3_slb"): Likewise.
+
+2004-10-11 Andrew Pinski <pinskia@physics.uc.edu
+
+ PR middle-end/16266
+ * function.c (temp_slots_at_level): Fix typo which creates too
+ many temp stack slots levels.
+
+2004-10-11 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_trampoline_template): Generate shorter
+ trampoline code.
+ (s390_trampoline_instantiate): Adapt.
+ * config/s390/s390.h (TRAMPOLINE_SIZE): Adapt to new code.
+
+2004-10-11 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/17657
+ * stmt.c (add_case_node): Add additional type argument. Declare
+ as static to match prototype. Convert the upper and lower bounds
+ to the specified index type. Optimize away case ranges/values
+ that are outside the index type's bounds. Truncate case ranges
+ that span the index type's bounds.
+ (expand_case): Avoid unnessary computation and memory allocation
+ when index type is error_mark_node. Pass index_type as required
+ by change to add_case_node API. No need to convert case range
+ bounds to index_type, this is now done by add_case_node.
+
+2004-10-11 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390-protos.h (s390_offset_p): Add prototype.
+ * config/s390/s390.c (s390_offset_p): New function.
+ * config/s390/s390.md ("*cmpdi_cct", "*cmpsi_cct", "*cmpdi_ccu",
+ "*cmpsi_ccu", "*cmphi_ccu", "*cmpqi_ccu"): Use splitter to
+ transform Q->Q alternatives to *clc pattern.
+ ("*clc"): Move.
+ ("movti", "*movdi_64", "*movdi_31", "*movsi_zarch", "*movsi_esa",
+ "*movhi", "*movqi", "*movdf_64", "*movdf_31", "movsf"): Use splitter
+ to transform Q->Q alternatives to *mvc pattern.
+ ("*mvc"): Move. Add peephole to merge adjacent MVCs.
+ ("*anddi3", "*andsi3_zarch", "*andsi3_esa", "*andhi3_zarch",
+ "*andhi3_esa", "*andqi3_zarch", "*andqi3_esa"): Use splitter to
+ transform Q->Q alternatives to *nc pattern.
+ ("*nc"): New insn. New peephole to merge adjacent NCs.
+ ("*iordi3", "*iorsi3_zarch", "*iorsi3_esa", "*iorhi3_zarch",
+ "*iorhi3_esa", "*iorqi3_zarch", "*iorqi3_esa"): Use splitter to
+ transform Q->Q alternatives to *oc pattern.
+ ("*oc"): New insn. New peephole to merge adjacent OCs.
+ ("*xordi3", "*xorsi3", "*xorhi3", "*xorqi3"): Use splitter to
+ transform Q->Q alternatives to *xc pattern.
+ ("*xc"): New insn. New peephole to merge adjacent XCs.
+ ("*xc_zero"): Move. Add peephole to merge adjacent XCs.
+
+2004-10-11 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * gimplify.c (gimple_push_condition): Make sure that we don't
+ have any saved condition cleanup if we were at the top level.
+
+2004-10-11 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/frv/frv.md (*adddi3_internal): Change name to...
+ (adddi3): ...replacing the exisiting define_expand. Combine
+ alternatives. Fix the range of the constant constraints ('J' instead
+ of 'NOP'). Remove bogus operands[2] check. Use simplify_gen_subreg
+ to extract the lower and upper halves of the DImode operands.
+ Always use addi3_lower and adddi3_upper, not the subdi3 forms.
+ (adddi3_lower): Fix the range of the constant constraints and
+ remove the bogus operands[2] check.
+ (adddi3_upper): Use gpr_or_int10_operand as the predicate for
+ operand 2. Use addxi to handle constant operands.
+ (subdi3_lower, subdi3_upper): Don't handle constant operands.
+
+2004-10-11 Nathan Sidwell <nathan@codesourcery.com>
+
+ * gengtype-lex.l: Add commented } & ) characters to unconfuse
+ editor's paren matching. Allow #define inside a struct.
+
+2004-10-10 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR middle-end/17703
+ part of PR c++/17657
+ * fold-const.c (fold_build_cleanup_point_expr): New function.
+ * tree.h (fold_build_cleanup_point_expr): Prototype.
+
+2004-10-10 Eric Christopher <echristo@redhat.com>
+
+ * dwarf2out.c: Move attribute to subprogram declaration
+ instead of subroutine type.
+
+2004-10-10 Kazu Hirata <kazu@cs.umass.edu>
+
+ * basic-block.h: Remove the prototypes for can_hoist_insn_p,
+ hoist_insn_after, and hoist_insn_to_edge.
+ * rtl.h: Remove the prototypes for reg_referenced_between_p,
+ no_jumps_between_p, and insn_dependent_p.
+ * rtlanal.c (no_jumps_between_p, reg_referenced_between_p,
+ insn_dependent_p, insn_dependent_p_1, hoist_test_store,
+ can_hoist_insn_p, hoist_update_store, hoist_insn_after,
+ hoist_insn_to_edge): Remove.
+
+2004-10-10 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/17881
+ * c-decl.c (grokparms): Don't warn for parameters of incomplete
+ type in declarations that are not definitions except for the case
+ of parameters of void type.
+
+2004-10-10 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-cfg.c: Fix comment typos.
+
+2004-10-10 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/17301
+ * builtins.c (expand_builtin_va_start): Check for too few
+ arguments to va_start.
+
+2004-10-10 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/17189
+ * c-decl.c (grokfield): Make diagnostic for bad cases of unnamed
+ fields a pedwarn. Pedwarn here for unnamed structs/unions if
+ pedantic.
+ * c-parse.in (component_decl): Don't pedwarn here for unnamed
+ fields.
+
+2004-10-09 Zdenek Dvorak <dvorakz@suse.cz>
+
+ PR tree-optimization/17906
+ * tree-tailcall.c (tree_optimize_tail_calls_1): Do not attempt to
+ copy non-gimple reg arguments.
+
+2004-10-09 Roger Sayle <roger@eyesopen.com>
+
+ PR rtl-optimization/17853
+ * simplify-rtx.c (simplify_relational_operation): Correct comment.
+ Reorganize handling of comparison operations with floating point
+ results (always return 0.0 even without FLOAT_STORE_FLAG_VALUE).
+ Likewise, introduce support for comparison operations with vector
+ result types, introducing a new VECTOR_STORE_FLAG_VALUE target macro.
+
+ * doc/rtl.texi: Document new VECTOR_STORE_FLAG_VALUE target macro.
+ * doc/tm.texi: Likewise.
+
+2004-10-09 Steven Bosscher <stevenb@suse.de>
+
+ * regs.h (struct reg_info_def): Remove the last_node_uid and
+ changes_mode fields.
+ (REGNO_LAST_NOTE_UID): Don't define.
+ * regclass.c (reg_scan_mark_refs): Don't set REGNO_LAST_NOTE_UID.
+ * regmove.c (copy_src_to_dest): Likewise.
+
+2004-10-09 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/17894
+ * fold-const.c (fold_div_compare): When optimizing X/C1 op C2, the
+ relational comparison operator op needs to be swapped/reversed when
+ C1 is negative. i.e. X/-10 < 1 becomes X >= -9, not X < -9.
+
+2004-10-08 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR tree-opt/17902
+ * tree-ssa-phiopt.c (conditional_replacement): Use bsi_after_labels
+ instead of bsi_start.
+ (value_replacement): Likewise.
+ (abs_replacement): Likewise
+
+2004-10-09 Steven Bosscher <stevenb@suse.de>
+
+ * cfgexpand.c (maybe_dump_rtl_for_tree_stmt): New function.
+ (expand_gimple_cond_expr, expand_gimple_tailcall,
+ expand_gimple_basic_block): Use it to dump RTL for each stmt.
+ (tree_expand_cfg): Announce full RTL function dump.
+ * tree-optimize.c (execute_one_pass): Use normal RTL printing,
+ not the graph version.
+ * tree-pretty-print.c (dump_generic_node): Allow empty statements
+ in the arms of a COND_EXPR for lowered nodes.
+
+2004-10-08 Joseph S. Myers <joseph@codesourcery.com>
+
+ * config/rs6000/spe.h (atosfix16, atosfix32, atosfix64, atoufix16,
+ atoufix32, atoufix64, strtosfix16, strtosfix32, strtosfix64,
+ strtoufix16, strtoufix32, strtoufix64): Declare.
+
+2004-10-08 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-lex.c (interpret_float): Give a pedwarn rather than a warning
+ for an out-of-range floating point constant.
+ * builtins.c (fold_builtin_inf): Give a pedwarn rather than a
+ warning if the target format does not support infinities.
+
+2004-10-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * emit-rtl.c (last_label_num, base_label_num): Remove.
+ (max_label_num): Always return label_num.
+ (set_new_last_label_num, restore_emit_status): Remove.
+ (init_emit): Don't initialize last_label_num.
+ * function.c (pop_function_context_from): Don't call
+ restore_emit_status.
+ * function.h: Remove the prototype for restore_emit_status.
+ * rtl.h: Remove the prototype for set_new_last_label_num.
+
+2004-10-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * stmt.c (expand_decl_init): Remove.
+ * tree.h: Remove the corresponding prototype.
+
+2004-10-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * integrate.c (try_constants, subst_constants, mark_stores):
+ Remove.
+ * integrate.h: Remove the prototype for try_constants.
+
+2004-10-08 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-typeck.c (enum impl_conv): Add ic_argpass_nonproto.
+ (convert_for_assignment): Handle ic_argpass_nonproto. Add
+ comments about its relevance to errors.
+ (c_convert_parm_for_inlining): Use ic_argpass_nonproto.
+
+2004-10-08 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR c/16999
+ * c-ppoutput.c (cb_ident): Don't quote string as it is already
+ quoted.
+
+2004-10-08 Diego Novillo <dnovillo@redhat.com>
+
+ * tree-ssa-pre.c (init_pre): Use size of ARRAY_REF to allocate
+ reference_node_pool.
+
+2004-10-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-cfg.c: Fix a comment typo.
+
+2004-10-08 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.c (s390_register_info): Don't save fprs for
+ -msoft-float.
+ (s390_conditional_register_usage): Make fprs 'fixed' for -msoft-float.
+
+2004-10-08 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.h (TARGET_DEFAULT_BACKCHAIN): New define.
+ (TARGET_DEFAULT): Use symbolic values.
+ * config/s390/tpf.h (TARGET_DEFAULT_BACKCHAIN): Redefine.
+ (TARGET_DEFAULT): Use symbolic values.
+ * config/s390/s390.c (s390_backchain_string): Initialize to
+ TARGET_DEFAULT_BACKCHAIN.
+
+2004-10-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (expand_builtin_mempcpy): Move tree handling code to
+ fold_builtin_mempcpy. Accept a type parameter. Delete duplicate
+ code.
+ (expand_builtin_strcat): Accept a type parameter.
+ (fold_builtin_mempcpy): Accept a type and endp parameter.
+
+ * builtins.c (expand_builtin_strncpy): Delete duplicate code.
+ Accept an `exp' instead of an `arglist'.
+
+2004-10-08 Nathan Sidwell <nathan@codesourcery.com>
+
+ * tree-tailcall.c (tree_optimize_tail_calls_1): Use fold_convert,
+ reverting my 2004-09-07 patch to use build_int_cst.
+
+2004-10-08 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/17245
+ * config/sparc/sparc.c (input_operand): Remove redundant code
+ for handling LO_SUM.
+ (legitimate_address_p) <REG+REG>: Do not recheck TARGET_V9.
+ <LO_SUM>: If LO_SUM is offsettable, accept it for TFmode on V9.
+ Otherwise only accept it for TFmode if quad move insns are available.
+
+2004-10-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-cfg.c (tree_forwarder_block_p): Reorder checks so that
+ common cases will be caught earlier than others.
+
+2004-10-08 Michael Matz <matz@suse.de>
+
+ * loop-doloop.c (doloop_optimize): Extend count.
+
+2004-10-08 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/sh.md (prefetch_media, prefetch_i4): New insns.
+ (prefetch): Convert to expander.
+
+2004-10-08 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/sh.md (tls_global_dynamic): Use MEM pattern for the
+ first argument of CALL.
+ (tls_local_dynamic): Likewise.
+
+2004-10-08 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-typeck.c (enum impl_conv): New.
+ (convert_for_assignment): Use it. Take tree for function called
+ instead of its name. Handle ObjC selectors for diagnostics at
+ start of function. Select diagnostic text within the function
+ using full sentences for diagnsotics. Use %qE to name functions
+ in diagnostics.
+ (convert_arguments, build_modify_expr,
+ c_convert_parm_for_inlining, digest_init, c_finish_return): Update
+ callers to convert_for_assignment.
+ (warn_for_assignment): Remove.
+
+2004-10-08 Nick Clifton <nickc@redhat.com>
+
+ * config/sh/symbian.c (symbian_possibly_export_base_class):
+ Replace use of deleted TYPE_USES_VIRTUAL_BASECLASSES macro with
+ TYPE_CONTAINS_VPTR_P.
+
+2004-10-08 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * config/m32r/m32r.h (CONDITIONAL_REGISTER_USAGE): Don't exclude
+ fixed registers form all_used_regs. Update call_really_used_regs.
+ (CALL_REALLY_USED_REGISTERS): Define.
+ * config/m32r/m32r.c (MUST_SAVE_REGISTER): Replace call_used_regs
+ with call_really_used_regs.
+
+2004-10-08 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/sysv4.h (STARTFILE_LINUX_SPEC): Choose gcrt1.o
+ for -profile as well as -p and -pg.
+
+2004-10-07 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * libgcc2.c (__moddi3): Cast &w to UDWtype*.
+
+2004-10-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-cfg.c (tree_block_forwards_to): Remove.
+ * tree-flow.h: Remove the corresponding prototype.
+
+2004-10-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tree-flow-inline.h (phi_nodes): Remove an unnecessary check
+ for ENTRY_BLOCK_PTR and EXIT_BLOCK_PTR.
+
+2004-10-07 Geoffrey Keating <geoffk@apple.com>
+
+ Radar 3813796
+ * config/rs6000/rs6000.c (rs6000_generate_compare): When
+ flag_trapping_math is in effect, don't generate subtract
+ instructions.
+
+2004-10-07 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390-protos.h (s390_narrow_logical_operator): Add.
+ * config/s390/s390.c (s390_narrow_logical_operator): New function.
+ (s390_extra_constraint_str): Add 'A' constraints.
+ (s390_const_ok_for_constraint_p): Add 'Nx' constraints.
+ * config/s390/s390.h (EXTRA_MEMORY_CONSTRAINT): Add 'A' constraint.
+ (CONSTRAINT_LEN): Likewise.
+ * config/s390/s390.md ("*anddi3"): Add NI alternative and splitter.
+ ("*andsi3_zarch", "*andsi3_esa"): Likewise.
+ ("*andhi3_zarch", "*andhi3_esa"): Likewise.
+ ("*iordi3"): Add OI alternative and splitter.
+ ("*iorsi3_zarch", "*iorsi3_esa"): Likewise.
+ ("*iorhi3_zarch", "*iorhi3_esa"): Likewise.
+ ("*xordi3"): Add XI alternative and splitter.
+ ("*xorsi3", "*xorhi3"): Likewise.
+
+2004-10-07 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_function_rodata_section): New function.
+ (TARGET_ASM_FUNCTION_RODATA_SECTION): Use it.
+
+2004-10-07 Devang Patel <dpatel@apple.com>
+
+ * rs6000/altivec.md (UNSPEC_VCMPBFP, UNSPEC_VCMPEQUB, UNSPEC_VCMPEQUH,
+ UNSPEC_VCMPEQUW, UNSPEC_VCMPGEFP, UNSPEC_VCMPGTUB, UNSPEC_VCMPGTSB,
+ UNSPEC_VCMPGTUH, UNSPEC_VCMPGTSH, UNSPEC_VCMPGTUW, UNSPEC_VCMPGTSW,
+ UNSPEC_VCMPGTFP, UNSPEC_VSEL4SI, UNSPEC_VSEL4SF, UNSPEC_VSEL8HI,
+ UNSPEC_VSEL16QI, UNSPEC_VCOND_V4SI, UNSPEC_VCOND_V4SF, UNSPEC_VCOND_V8HI,
+ UNSPEC_VCOND_V16QI, UNSPEC_VCONDU_V4SI, UNSPEC_VCONDU_V8HI,
+ UNSPEC_VCONDU_V16QI): New constant defines.
+ (vcondv4si, vcondv4sf, vcondv8hi, vcondv16qi, vconduv4si, vconduv8hi,
+ vconduv16qi): New patterns.
+ * rs6000/rs6000-protos.h (rs6000_emit_vector_cond_expr): New function.
+ * rs6000/rs6000.c (rs6000_emit_vector_cond_expr): New function.
+ (get_vec_cmp_insn): Same.
+ (get_vsel_insn): Same.
+ (rs6000_emit_vector_compare): Same.
+ (rs6000_emit_vector_select): Same.
+ (INSN_NOT_AVAILABLE): New.
+
+2004-10-07 Zdenek Dvorak <dvorakz@suse.cz>
+
+ PR tree-optimization/17749
+ * tree-tailcall.c (find_tail_calls): Check that parameter is
+ a gimple_reg.
+
+2004-10-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/ia64/ia64.c: Fix a comment typo.
+
+2004-10-07 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * doc/install.texi (*-*-solaris2*): Fix marker for URL.
+
+2004-10-07 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ PR c++/17115
+ * tree-inline.c (expand_call_inline): Do not warn for functions
+ marked with attribute noinline.
+
+2004-10-07 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/17862
+ * config/sparc/sparc.c (sparc_output_mi_thunk): Set
+ current_function_uses_only_leaf_regs as well as sparc_leaf_function_p.
+
+ * config/sparc/sparc.c (sparc_gimplify_va_arg): Pass 'false' instead
+ of 0 as 4th argument to pass_by_reference.
+ Call build_va_arg_indirect_ref instead of build_fold_indirect_ref.
+
2004-10-06 Eric Christopher <echristo@redhat.com>
* config/sh/sh.c (sh_dwarf_calling_convention): Fix renesas dwarf
2004-10-07 Eric Botcazou <ebotcazou@libertysurf.fr>
- PR middle-end/17285
+ PR middle-end/17835
* expmed.c (expand_sdiv_pow2): Force a stack adjustment
before tentatively building the conditional move sequence.
2004-10-04 Sebastian Pop <pop@cri.ensmp.fr>
- * Makefile.in (tree-ssa-loop-niter.o): Depends on tree-data-ref.h.
- * cfgloop.c (initialize_loops_parallel_p): New.
- (flow_loops_find): Initialize the parallel_p field to true for all
- the loops.
- * tree-ssa-loop-niter.c: Include "tree-data-ref.h".
- (estimate_numbers_of_iterations_loop): Infers the loop bounds from
- the size of the data accessed in the loop.
- (struct nb_iter_bound): Moved...
- * cfgloop.h (struct nb_iter_bound): ... here.
- (estimated_nb_iterations, parallel_p): New fields in struct loop.
- (record_estimate): Declare extern here.
- * tree-chrec.c: Fix comments.
- (nb_vars_in_chrec): New function.
- * tree-chrec.h (nb_vars_in_chrec): Declared here.
- * tree-data-ref.c: Don't include lambda.h, that is already included
- in tree-data-ref.h.
- (tree_fold_divides_p): Don't check for integer_onep.
- (tree_fold_bezout): Removed.
- (gcd): New static duplicated function.
- (int_divides_p, dump_subscript): New.
- (dump_data_dependence_relation): Use dump_subscript.
- (dump_dist_dir_vectors, dump_ddrs, compute_estimated_nb_iterations,
- estimate_niter_from_size_of_data): New.
- (analyze_array_indexes, analyze_array): Call
- estimate_niter_from_size_of_data during the detection of array
- references. Pass in a pointer to the statement that contains the
- array reference.
- (all_chrecs_equal_p): New.
- (compute_distance_vector): Renamed compute_subscript_distance.
- Deal with multivariate conflict functions.
- (initialize_data_dependence_relation): Initialize DDR_AFFINE_P,
- DDR_SIZE_VECT, DDR_DIST_VECT, and DDR_DIR_VECT.
- (non_affine_dependence_relation): New.
- (analyze_ziv_subscript, analyze_siv_subscript_cst_affine,
- analyze_siv_subscript, analyze_miv_subscript,
- analyze_overlapping_iterations, subscript_dependence_tester):
- Initialize and return last_conflicts function.
- (initialize_matrix_A, FLOOR, compute_overlap_steps_for_affine_univar,
- compute_overlap_steps_for_affine_1_2): New.
- (analyze_siv_subscript_affine_cst): Removed.
- (analyze_subscript_affine_affine): Disprove dependences based on the
- iteration domains. Solve the univariate dependence case as before,
- but use lambda_matrix_right_hermite instead of tree_fold_bezout.
- Implement the multivariate case of 2 versus 1 variables.
- (undetermined_conflicts_p, no_conflicts_p): New.
- (build_classic_dist_vector, build_classic_dir_vector): Implement some
- unhandled cases.
- (find_data_references_in_loop): Compute and initialize
- loop->estimated_nb_iterations and loop->parallel_p.
- (analyze_all_data_dependences): Modify the debug dump order.
- * tree-data-ref.h (SUB_LAST_CONFLICT_IN_A, SUB_LAST_CONFLICT_IN_B,
- subscript->last_conflict_in_a, subscript->last_conflict_in_b): Removed.
- (SUB_LAST_CONFLICT, subscript->last_conflict,
- data_dependence_relation->affine_p, data_dependence_relation->size_vect,
- DDR_AFFINE_P, DDR_SIZE_VECT): New.
- (find_data_references_in_loop, initialize_data_dependence_relation,
- dump_subscript, dump_ddrs, dump_dist_dir_vectors): Declared here.
-
-
-2004-10-04 Sebastian Pop <pop@cri.ensmp.fr>
-
* tree-data-ref.c (array_base_name_differ_p): Fix comments. When
the predicate cannot be computed, don't initialize the result to
false.