1. 13 Mar, 2005 2 commits
    • In gcc/ada/ 2005-03-12 Daniel Berlin <dberlin@dberlin.org> · c75ab022
      In gcc/ada/
      2005-03-12  Daniel Berlin <dberlin@dberlin.org>
      
      	* misc.c (gnat_post_options): Turn off structural
      	aliasing for now.
      In gcc/
      2005-03-12  Daniel Berlin  <dberlin@dberlin.org>
      
      	* tree-flow-inline.h (ref_contains_array_ref): New function.
      	(lookup_subvars_for_var): Ditto.
      	(get_subvars_for_var): Ditto.
      	(var_can_have_subvars): Ditto.
      
      	* tree-flow.h (mem_tag_kind): Add STRUCT_FIELD.
      	(struct subvar): New type.
      
      	* tree-dfa.c (okay_component_ref_for_subvars): New function.
      
      	* tree-optimize.c (init_tree_optimization_passes): Call
      	pass_create_structure_vars.
      
      	* tree-ssa-alias.c: Include vec.h.
      	(init_alias_info): Don't auto-clear call clobbered on struct-field
      	tags.
      	(compute_flow_insensitive_aliasing): Handle subvars.
      	(group_aliases): Handle STRUCT_FIELD aliases.
      	(setup_pointers_and_addressables): Ditto.
      	Don't mark variables non-addressable if they still have
      	addressable subvars.
      	Also mark subvars addressable when the real variable is marked
      	addressable.
      	(add_pointed_to_var): Try to prune the pointed-to set by only
      	pointing to subvars when possible.
      	Otherwise, make sure we set addresses_needed and pt_vars to
      	properly include subvars.
      	(bitpos_of_field): New function.
      	(push_fields_onto_fieldstack): Ditto.
      	(get_or_create_used_part_for): Ditto.
      	(create_overlap_variables_for): Ditto.
      	(find_used_portions): Ditto.
      	(create_structure_vars): Ditto.
      	(pass_create_structure_vars): New structure.
      
      	* tree-ssa-operands.c (finalize_ssa_v_must_defs): Remove assert.
      	(get_expr_operands): Handle subvars.  Also try to turn
      	COMPONENT_REF accesses into must-defs now that we can accurately
      	portray it.
      	(note_addressable): Try to only mark as addressable those subvars
      	we know a COMPONENT_REF touches.
      	(overlap_subvar): New function.
      
      	* tree-vect-analyze.c (vect_object_analysis): Add new parameter.
      	Handle subvar storing.
      	(vect_address_analysis): Update caller of vect_object_analysis.
      
      	* tree-vect-transform.c (vect_create_data_ref_ptr): Copy subvars.
      
      	* tree-vectorizer.h (struct _stmt_vec_info): Add subvars member.
      	(STMT_VINFO_SUBVARS): New macro.
      
      	* common.opts: add flag_tree_salias.
      
      	* opts.c (decode_options): flag_tree_salias defaults to on.
      
      	* doc/invoke.texi: Document fdump-tree-svars and -ftree-salias.
      
      	* doc/tree-ssa.texi: Document structural alias analysis.
      
      From-SVN: r96362
      Daniel Berlin committed
    • Daily bump. · 23845f02
      From-SVN: r96360
      GCC Administrator committed
  2. 12 Mar, 2005 28 commits
  3. 11 Mar, 2005 10 commits
    • re PR rtl-optimization/20306 (FP complex modes moved via GPRs) · c6506442
              PR rtl-optimization/20306
              * expr.c (emit_move_complex): Set try_int false if mode is
              MODE_COMPLEX_FLOAT and mov_optab exists for inner mode.  Only try
              emit_block_move if try_int is true.
      
      From-SVN: r96312
      David Edelsohn committed
    • libjava.exp (libjava_init): Use the same target check for Darwin. · a96cf763
      2005-03-11  Andreas Tobler  <a.tobler@schweiz.ch>
      
      	* testsuite/lib/libjava.exp (libjava_init): Use the same target
      	check for Darwin.
      	(libjava_arguments): Likewise.
      
      	* testsuite/libjava.jni/jni.exp (gcj_jni_compile_c_to_so): Likewise.
      	(gcj_jni_test_one): Likewise.
      	(gcj_jni_invocation_compile_c_to_binary): Likewise.
      	Add flags to keep the Darwin linker quiet.
      	(gcj_jni_invocation_test_one): Use the same target check for Darwin.
      	Add -liconv for Darwin.
      
      From-SVN: r96311
      Andreas Tobler committed
    • re PR target/20415 (Vector init builtin produces invalid instruction pshufw) · f817d5d4
              PR target/20415
              * config/i386/mmx.md (vec_dupv4hi): Fix predicate.
              * config/i386/i386.c (ix86_expand_vector_init_duplicate): Update
              to match.
      
      From-SVN: r96304
      Richard Henderson committed
    • Main.java (main): Handle '-p'. · 558b8548
      libjava:
      	* gnu/gcj/tools/gcj_dbtool/Main.java (main): Handle '-p'.
      	(usage): Document '-p'.
      	* Makefile.in: Rebuilt.
      	* Makefile.am (dbexecdir): New variable.
      	(db_name): Likewise.
      	(dbexec_DATA): Likewise.
      	($(db_name)): New target.
      	(AM_CXXFLAGS): Define LIBGCJ_DEFAULT_DATABASE.
      	* java/lang/natRuntime.cc (insertSystemProperties): Set default
      	system database.
      gcc/java:
      	* gcj.texi (Invoking gcj-dbtool): Document 'gcj-dbtool -p'.
      	(libgcj Runtime Properties): Document the default .db.
      
      From-SVN: r96303
      Tom Tromey committed
    • mips.h (mips_fix_vr4130_string): Declare. · 0ac40e7a
      	* config/mips/mips.h (mips_fix_vr4130_string): Declare.
      	(TARGET_FIX_VR4130): New macro.
      	(TARGET_OPTIONS): Add -mfix-vr4130.
      	(ISA_HAS_MACCHI): New macro.
      	(ASM_SPEC): Add -mfix-vr4130.
      	* config/mips/mips.c (mips_fix_vr4130_string): New variable.
      	(override_options): Handle mips_fix_vr4130_string.
      	(mips_avoid_hazards): Clear all_noreorder_p
      	if we're working around VR4130 errata and the macc alternatives
      	are not available.
      	* config/mips/mips.md (mfhilo_<mode>): Turn into a define_expand.
      	(*mfhilo_<mode>, *mfhilo_<mode>_macc): New insns.
      	* config/mips/vr.h (DEFAULT_VR_ARCH): Set to mfix-vr4130.
      	(MULTILIB_DEFAULTS): Remove leading "march=".
      	(DRIVER_SELF_SPECS): Likewise.  Make -mfix-vr4130 imply -march=vr4130
      	if no architecture option is given.
      	* config/mips/t-vr (MULTILIB_OPTIONS): Use -mfix-vr4130 for the
      	VR4130 multilibs.
      	(MULTILIB_MATCHES): Map -march=vr4130 to the -mfix-vr4130 multilibs.
      	* doc/invoke.texi: Document -mfix-vr4130.
      
      From-SVN: r96301
      Richard Sandiford committed
    • mips.c (override_options): Only warn about -mint64 deprecation if TARGET_INT64. · 266c6b40
      	* config/mips/mips.c (override_options): Only warn about -mint64
      	deprecation if TARGET_INT64.
      
      From-SVN: r96299
      Richard Sandiford committed
    • builtin-attrs.def (ATTR_NONNULL_LIST, [...]): New "nonnull" attribute lists… · 74124c73
      builtin-attrs.def (ATTR_NONNULL_LIST, [...]): New "nonnull" attribute lists which are non-specific regarding the nonnull...
      
      	* builtin-attrs.def (ATTR_NONNULL_LIST, ATTR_NOTHROW_NONNULL,
      	ATTR_CONST_NOTHROW_NONNULL, ATTR_PURE_NOTHROW_NONNULL,
      	ATTR_MALLOC_NOTHROW_NONNULL): New "nonnull" attribute lists which
      	are non-specific regarding the nonnull parameter positions.
      	(ATTR_NONNULL_1_2, ATTR_NONNULL_1_4, ATTR_NOTHROW_NONNULL_1_2,
      	ATTR_NOTHROW_NONNULL_1_4, ATTR_CONST_NOTHROW_NONNULL_1,
      	ATTR_PURE_NOTHROW_NONNULL_1, ATTR_PURE_NOTHROW_NONNULL_1_2,
      	ATTR_MALLOC_NOTHROW_NONNULL_1): Delete.
      
      	* builtins.def: Use the non-specific "nonnull" attibute lists.
      
      From-SVN: r96298
      Kaveh R. Ghazi committed
    • basic-block.h (single_succ_p, [...]): Improve comments. · 81b29e2f
      	* basic-block.h (single_succ_p, single_pred_p, single_succ_edge,
      	single_pred_edge, single_succ, single_pred): Improve comments.
      
      From-SVN: r96293
      Zdenek Dvorak committed
    • basic-block.h (single_succ_p, [...]): New inline functions. · c5cbcccf
      	* basic-block.h (single_succ_p, single_pred_p, single_succ_edge,
      	single_pred_edge, single_succ, single_pred): New inline functions.
      	* bb-reorder.c (rotate_loop, find_traces_1_round,
      	add_labels_and_missing_jumps, fix_up_fall_thru_edges,
      	duplicate_computed_gotos): Use the single_succ/pred functions.
      	* cfganal.c (forwarder_block_p): Ditto.
      	* cfgbuild.c (compute_outgoing_frequencies): Ditto.
      	* cfgcleanup.c (try_simplify_condjump, try_forward_edges,
      	outgoing_edges_match, try_crossjump_to_edge, try_optimize_cfg,
      	merge_seq_blocks): Ditto.
      	* cfghooks.c (split_edge, tidy_fallthru_edges): Ditto.
      	* cfglayout.c (fixup_reorder_chain): Ditto.
      	* cfgloop.c (mark_single_exit_loops, update_latch_info,
      	canonicalize_loop_headers, verify_loop_structure): Ditto.
      	* cfgloopmanip.c (remove_path, unloop, loop_delete_branch_edge,
      	mfb_update_loops, create_preheader, force_single_succ_latches,
      	create_loop_notes): Ditto.
      	* cfgrtl.c (rtl_can_merge_blocks, try_redirect_by_replacing_jump,
      	force_nonfallthru_and_redirect, rtl_tidy_fallthru_edge,
      	commit_one_edge_insertion, purge_dead_edges,
      	cfg_layout_can_merge_blocks_p): Ditto.
      	* except.c (sjlj_emit_function_enter): Ditto.
      	* flow.c (init_propagate_block_info): Ditto.
      	* function.c (thread_prologue_and_epilogue_insns): Ditto.
      	* gcse.c (find_implicit_sets, bypass_conditional_jumps,
      	insert_insn_end_bb): Ditto.
      	* ifcvt.c (merge_if_block, find_if_block, find_if_case_1,
      	find_if_case_2): Ditto.
      	* lambda-code.c (perfect_nestify): Ditto.
      	* lcm.c (optimize_mode_switching): Ditto.
      	* loop-doloop.c (doloop_modify): Ditto.
      	* loop-init.c (loop_optimizer_init): Ditto.
      	* loop-iv.c (simplify_using_initial_values): Ditto.
      	* loop-unroll.c (unroll_loop_runtime_iterations): Ditto.
      	* loop-unswitch.c (unswitch_loop): Ditto.
      	* modulo-sched.c (generate_prolog_epilog): Ditto.
      	* predict.c (combine_predictions_for_insn, estimate_probability,
      	tree_estimate_probability, last_basic_block_p,
      	estimate_bb_frequencies): Ditto.
      	* profile.c (branch_prob): Ditto.
      	* regrename.c (copyprop_hardreg_forward): Ditto.
      	* sched-rgn.c (is_cfg_nonregular, find_rgns, update_live): Ditto.
      	* tracer.c (layout_superblocks): Ditto.
      	* tree-cfg.c (tree_can_merge_blocks_p, tree_merge_blocks,
      	cfg_remove_useless_stmts_bb, cleanup_control_flow,
      	cleanup_control_expr_graph, disband_implicit_edges,
      	tree_find_edge_insert_loc, bsi_commit_edge_inserts,
      	tree_verify_flow_info, tree_make_forwarder_block,
      	tree_forwarder_block_p, remove_forwarder_block,
      	remove_forwarder_block_with_phi, merge_phi_nodes): Ditto.
      	* tree-if-conv.c (tree_if_conversion): Ditto.
      	* tree-mudflap.c (mf_build_check_statement_for): Ditto.
      	* tree-ssa-dce.c (remove_dead_stmt): Ditto.
      	* tree-ssa-dom.c (dom_opt_finalize_block): Ditto.
      	* tree-ssa-loop-ch.c (should_duplicate_loop_header_p,
      	copy_loop_headers): Ditto.
      	* tree-ssa-loop-im.c (loop_commit_inserts): Ditto.
      	* tree-ssa-loop-ivopts.c (compute_phi_arg_on_exit): Ditto.
      	* tree-ssa-loop-manip.c (split_loop_exit_edge, ip_normal_pos,
      	lv_adjust_loop_entry_edge, tree_ssa_loop_version): Ditto.
      	* tree-ssa-loop-niter.c (simplify_using_initial_conditions): Ditto.
      	* tree-ssa-loop-unswitch.c (simplify_using_entry_checks): Ditto.
      	* tree-ssa-phiopt.c (tree_ssa_phiopt, value_replacement): Ditto.
      	* tree-ssa-pre.c (compute_antic_aux, insert_aux, init_pre): Ditto.
      	* tree-ssa-threadupdate.c (redirect_edges): Ditto.
      	* tree-tailcall.c (independent_of_stmt_p, find_tail_calls,
      	eliminate_tail_call, tree_optimize_tail_calls_1): Ditto.
      	* tree-vect-analyze.c (vect_analyze_loop_form): Ditto.
      	* tree-vect-transform.c (vect_update_ivs_after_vectorizer): Ditto.
      	* tree-vectorizer.c (slpeel_update_phi_nodes_for_guard,
      	slpeel_add_loop_guard): Ditto.
      
      From-SVN: r96292
      Zdenek Dvorak committed
    • [multiple changes] · 0b2df4a7
      2005-03-12  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
      
              PR libfortran/20124
              * gfortran.dg/pr20124.f90: New Test
      
      2005-03-11  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
      
              PR libfortran/20124
              * write.c (output_float): Adds a nzero_real variable to store
              the number of leading zeros whatever the format width is. Corrects
              the rounding of numbers less than 10^(-width). Fixes typo in an
              error message. Updates copyright years
      
      From-SVN: r96291
      Francois-Xavier Coudert committed