gcc/cygwin-gcc.git
17 years agoThis commit was manufactured by cvs2svn to create tagr106029.78/tags/tree-profiling-postcfginline-20041117
No Author [Wed, 17 Nov 2004 22:08:01 +0000 (17 22:08 +0000)]
This commit was manufactured by cvs2svn to create tag
'tree-profiling-postcfginline-20041117'.

From-SVN: r90823

18 years agoMainline merge as of 2004-02-11.
Diego Novillo [Fri, 13 Feb 2004 13:16:04 +0000 (13 08:16 -0500)]
Mainline merge as of 2004-02-11.

From-SVN: r77756

18 years agotree-flow.h (kill_redundant_phi_nodes): Remove declaration.
Diego Novillo [Fri, 13 Feb 2004 11:15:57 +0000 (13 11:15 +0000)]
tree-flow.h (kill_redundant_phi_nodes): Remove declaration.

* tree-flow.h (kill_redundant_phi_nodes): Remove declaration.
* tree-optimize.c (init_tree_optimization_passes): Add
pass_redundant_phi after DOM and CCP.
(execute_todo): Do not call kill_redundant_phi_nodes.
* tree-pass.h (TODO_redundant_phi): Remove.
Update all users.
Adjust values for all the other TODO_* entries.
(pass_redundant_phi): Declare.
* tree-ssa.c (replace_immediate_uses): Call mark_new_vars_to_rename
if a pointer was replaced.
(kill_redundant_phi_nodes): Make static.
(pass_redundant_phi): Define.

From-SVN: r77754

18 years agoDaily bump.
GCC Administrator [Fri, 13 Feb 2004 00:16:28 +0000 (13 00:16 +0000)]
Daily bump.

From-SVN: r77742

18 years agoMakefile.in (OBJS-common): Add rtl-profile.o, tree-profile.o.
Dale Johannesen [Fri, 13 Feb 2004 00:10:30 +0000 (13 00:10 +0000)]
Makefile.in (OBJS-common): Add rtl-profile.o, tree-profile.o.

2004-02-12  Dale Johannesen  <dalej@apple.com>

* Makefile.in (OBJS-common): Add rtl-profile.o, tree-profile.o.
(profile.o): Add tree-flow.h dependency.
(rtl-profile.o): New rule.
(tree-profile.o): New rule.
(GTFILES): Add tree-profile.c, rtl-profile.c.
* basic-block.h (flow_call_edges_add): Remove.
* cfganal.c (need_fake_edge_p): Move to cfgrtl.c.
(flow_call_edges_add): Move to cfgrtl.c (rtl_flow_call_edges_add).
* cfghooks.c: (block_ends_with_call_p): New.
(block_ends_with_condjump_p): New.
(flow_call_edges_add): New.
* cfghooks.h: (struct cfg_hooks): add block_ends_with_call_p,
block_ends_with_condjump_p, flow_call_edges_add.
(block_ends_with_call_p): New declaration.
(block_ends_with_condjump_p): New declaration.
(flow_call_edges_add): New declaration.
* cfgrtl.c (rtl_block_ends_with_call_p): New.
(rtl_block_ends_with_condjump_p): New.
(need_fake_edge_p): Moved from cfganal.c.
(rtl_flow_call_edges_add): Moved from cfganal.c (flow_call_edges_add).
(rtl_cfg_hooks): Add rtl_block_ends_with_call_p,
rtl_block_ends_with_condjump_p, rtl_flow_call_edges_add.
(cfg_layout_rtl_cfg_hooks): Ditto.
* common.opt (ftree-based-profiling): New.
* coverage.c (tree_ctr_tables): New.
(coverage_counter_alloc): Use it.
(build_ctr_info_value): Ditto.
(coverage_counter_ref): Ditto.  Rename to rtl_coverage_counter_ref.
(tree_coverage_counter_ref): New.
* coverage.h (coverage_counter_ref): Remove declaration.
(rtl_coverage_counter_ref): New declaration.
(tree_coverage_counter_ref): New declaration.
* opts.c (OPT_ftree_based_profiling): New.
* profile.c: Include cfghooks.h, tree-flow.h.
(profile_hooks): New.
(profile_dump_file): New.
(instrument_edges): Use hooks instead of RTL-specific code.
(instrument_values): Ditto.
(get_exec_counts): Ditto.
(compute_branch_probabilities): Ditto.
(compute_value_histograms): Ditto.
(branch_prob): Ditto.
(find_spanning_tree): Ditto.
(end_branch_prob): Ditto.
(gen_edge_profiler): Move to rtl-profile.c (rtl_gen_edge_profiler).
(gen_interval_profiler): Ditto (rtl_gen_interval_profiler).
(gen_pow2_profiler): Ditto (rtl_gen_pow2_profiler).
(gen_one_value_profiler): Ditto (rtl_gen_one_value_profiler).
(tree_register_profile_hooks): New.
(rtl_register_profile_hooks): New.
* rtl-profile.c: New file.
* rtl.h (init_branch_prob): Move declaration to value-prof.h.
(end_branch_prob): Ditto.
(branch_prob): Ditto.
* toplev.c (flag_tree_based_profiling): New.
(f_options): Add -ftree-based-profiling.
(compile_file): Register rtl-based CFG and profiling hooks.
(rest_of_compilation): Do rtl-based profiling only when
!flag_tree_based_profiling.  Register rtl-based profiling hooks.
(process_options): Sorry for -ftree-based-profiling plus
-ftest-coverage or -fprofile-values.
* toplev.h (flag_tree_based_profiling): New.
* tree-cfg.c (tree_block_ends_with_call_p): New.
(tree_block_ends_with_condjump_p): New.
(need_fake_edge_p): New.
(tree_flow_call_edges_add): New (largely from flow_call_edges_add
in cfganal.c).
(tree_cfg_hooks): Add tree_block_ends_with_call_p,
tree_block_ends_with_condjump_p, tree_flow_call_edges_add.
* tree-optimize.c (init_tree_optimization_passes):
Add pass_tree_profile.
* tree-pass.h: Ditto.
* tree-profile.c: New file.
* value-prof.c (value_prof_hooks): New.
(find_values_to_profile): Rename to rtl_find_values_to_profile.
Move rtl-specific bits in from branch_prob.
(value_profile_transformations): Rename to
rtl_value_profile_transformations.
(struct value_prof_hooks): New.
(rtl_value_prof_hooks): New.
(rtl_register_value_prof_hooks): New.
(tree_find_values_to_profile): New stub.
(tree_value_profile_transformations): New stub.
(tree_value_prof_hooks): New stub.
(tree_register_value_prof_hooks): New stub.
(find_values_to_profile): New.
(value_profile_transformations): New.
* value-prof.h: Add multiple inclusion guard.
(struct histogram_value): Change rtx fields to void *.
(rtl_register_value_prof_hooks): New declaration.
(tree_register_value_prof_hooks): New declaration.
(find_values_to_profile): New declaration.
(free_profiled_values): New declaration.
(value_profile_transformations): New declaration.
(struct profile_hooks): New declaration.
(init_branch_prob): Declaration moved from rtl.h.
(branch_prob): Declaration moved from rtl.h.
(end_branch_prob): Declaration mooved from rtl.h.
(tree_register_profile_hooks): New declaration.
(rtl_register_profile_hooks): New declaration.
(tree_profile_hooks): New declaration.
(rtl_profile_hooks): New declaration.
* doc/invoke.texi: Document -ftree-based-profiling.

From-SVN: r77738

18 years ago*** empty log message ***
Diego Novillo [Thu, 12 Feb 2004 20:15:57 +0000 (12 15:15 -0500)]
*** empty log message ***

From-SVN: r77726

18 years agoThis commit was manufactured by cvs2svn to create branch
No Author [Thu, 12 Feb 2004 20:15:57 +0000 (12 20:15 +0000)]
This commit was manufactured by cvs2svn to create branch
'tree-ssa-20020619-branch'.

From-SVN: r77725

18 years ago* BUGS: Remove.
Paul Brook [Thu, 12 Feb 2004 19:03:35 +0000 (12 19:03 +0000)]
* BUGS: Remove.

From-SVN: r77720

18 years agodomwalk.c (walk_dominator_tree): Move statement walking from clients into here.
Jeff Law [Thu, 12 Feb 2004 16:43:45 +0000 (12 09:43 -0700)]
domwalk.c (walk_dominator_tree): Move statement walking from clients into here.

        * domwalk.c (walk_dominator_tree): Move statement walking from
        clients into here.  Walk statements in forward or backward order
        as requested by the client.  Walk either the dominator tree or
        the post-dominator tree as requested by the client.
        * domwalk.h (dom_walk_data): Add two fields to control direction of
        statement walk and dominator vs post-dominator tree walk.  Add
        BSI argument to the per-statement callbacks.
        * tree-ssa-dom.c (optimize_stmt): Update prototype so that it can
        be directly used as a callback for the dominator tree walker.
        Update stmts_to_rescan here.
        (tree_ssa_dominator_optimize): Initialize new fields in the dominator
        walker structure.  Use optimize_stmt instead of dom_opt_walk_stmts
        for statement callback.
        (dom_opt_walk_stmts): Kill.  No longer used.
        * tree-ssa.c (mark_def_sites): Update prototype so that it can be
        called as the per-statement callback.  No longer walk statements here.
        (mark_def_sites_initialize_block): New.
        (rewrite_stmt): Update prototype so that it can be called as the
        per-statement callback.
        (rewrite_walk_stmts): Kill.  No longer used.
        (rewrite_into_ssa): Initialize new fields in the dominator walker
        structure.  Use rewrite_stmt instead of rewrite_walk_stmts.  Add
        mark_def_sites_initialize_block callback.

From-SVN: r77714

18 years agocfg.texi: New file.
Steven Bosscher [Thu, 12 Feb 2004 08:54:59 +0000 (12 08:54 +0000)]
cfg.texi: New file.

* doc/cfg.texi: New file.
* doc/ggcint.texi: Include it.  Add a new chapter.

From-SVN: r77697

18 years agoDaily bump.
GCC Administrator [Thu, 12 Feb 2004 00:16:21 +0000 (12 00:16 +0000)]
Daily bump.

From-SVN: r77684

18 years agoMakefile.in (OBJS-common): Add tree-ssa-forwprop.o
Jeff Law [Wed, 11 Feb 2004 21:32:32 +0000 (11 14:32 -0700)]
Makefile.in (OBJS-common): Add tree-ssa-forwprop.o

        * Makefile.in (OBJS-common): Add tree-ssa-forwprop.o
        (tree-ssa-forwprop.o): Add dependencies.
        * timevar.def (TV_TREE_FORWPROP): New timevar.
        * tree-optimize.c (init_tree_optimization_passes): Link in
        the forward propagation pass.
        * tree-pass.h (pass_forwprop): Declare.
        * tree-ssa-forwprop.c: New file with forward propagation pass.
        * doc/invoke.texi: Document dump for forward propagation pass.

From-SVN: r77673

18 years agotree-ssa.c (rewrite_out_of_ssa): Don't use coalesce list until new bug resolved.
Andrew MacLeod [Wed, 11 Feb 2004 16:59:43 +0000 (11 16:59 +0000)]
tree-ssa.c (rewrite_out_of_ssa): Don't use coalesce list until new bug resolved.

2004-02-11  Andrew MacLeod  <amacleod@redhat.com>

* tree-ssa.c (rewrite_out_of_ssa): Don't use coalesce list until new
bug resolved.

From-SVN: r77667

18 years agotree-ssa-live.c (compare_pairs): New.
Andrew MacLeod [Wed, 11 Feb 2004 16:28:41 +0000 (11 16:28 +0000)]
tree-ssa-live.c (compare_pairs): New.

2004-02-11  Andrew MacLeod  <amacleod@redhat.com>

* tree-ssa-live.c (compare_pairs): New.  Coalesce list cost function.
(sort_coalesce_list): Use qsort() to sort list by cost.
(coalesce_tpa_members): Use correct partition representatives.  Add more
debug information.  Allow coalesce by list, root_var, or both.
(tpa_dump): Show partition index.
* tree-ssa-live.h (SSANORM_COALESCE_PARTITIONS): New flag.
(SSANORM_USE_COALESCE_LIST): New flag.
* tree-ssa.c (create_temp): Don't mark as used when created.
(coalesce_ssa_name): Create coalesce list if requested.  Add more
debug output.
(assign_vars): Add additional debug info.
(remove_ssa_form): Perform TER after assign_vars().
(rewrite_vars_out_of_ssa): Pass coalesce partitions flag to
remove_ssa_form.
(rewrite_out_of_ssa): Add coalesce list flag to remove_ssa_form call.

From-SVN: r77666

18 years ago* gcc.dg/tree-ssa/20040210-1.c: New test.
Jeff Law [Wed, 11 Feb 2004 14:55:38 +0000 (11 07:55 -0700)]
* gcc.dg/tree-ssa/20040210-1.c: New test.

From-SVN: r77656

18 years agoXFAIL
Steven Bosscher [Wed, 11 Feb 2004 10:44:55 +0000 (11 10:44 +0000)]
XFAIL

From-SVN: r77645

18 years ago20000603-1.c: Resolve alias ambiguity and point to DR#236.
Diego Novillo [Wed, 11 Feb 2004 02:41:39 +0000 (11 02:41 +0000)]
20000603-1.c: Resolve alias ambiguity and point to DR#236.

* gcc.c-torture/execute/20000603-1.c: Resolve alias ambiguity and
point to DR#236.

From-SVN: r77633

18 years agoDaily bump.
GCC Administrator [Wed, 11 Feb 2004 00:16:17 +0000 (11 00:16 +0000)]
Daily bump.

From-SVN: r77628

18 years agoMakefile.in (OBJS-common): Add tree-ssa-phiopt.o
Jeff Law [Tue, 10 Feb 2004 23:23:16 +0000 (10 16:23 -0700)]
Makefile.in (OBJS-common): Add tree-ssa-phiopt.o

        * Makefile.in (OBJS-common): Add tree-ssa-phiopt.o
        (tree-ssa-phiopt.o): Add dependencies.
        * timevar.def (TV_TREE_PHIOPT): New timevar.
        * tree-cfg.c (extract_true_false_edges_from_block): Moved here from
        tree-ssa-dom.c.
        (tree_verify_flow_info): Use extract_true_false_edges_from_block.
        * tree-flow.h (extract_true_false_edges_from_block): Declare.
        * tree-ssa-dom.c (extract_true_false_edges_from_block): Moved into
        tree-cfg.c.
        (get_eq_expr_value): Improve type check.
        * tree-optimize.c (init_tree_optimization_passes): Link in
        phiopt pass.
        * tree-pass.h (pass_phiopt): Declare.
        * tree-ssa-phiopt.c: New file with PHI node optimization pass.
        * doc/invoke.texi: Document dump for PHI node optimization.

From-SVN: r77623

18 years ago* tree-sra.c (lookup_scalar): Handle unnamed fields.
Richard Henderson [Tue, 10 Feb 2004 21:57:32 +0000 (10 13:57 -0800)]
* tree-sra.c (lookup_scalar): Handle unnamed fields.

From-SVN: r77617

18 years agoMakefile.in (OBJS-common): Add tree-ssa-alias.o.
Diego Novillo [Tue, 10 Feb 2004 18:24:18 +0000 (10 18:24 +0000)]
Makefile.in (OBJS-common): Add tree-ssa-alias.o.

* Makefile.in (OBJS-common): Add tree-ssa-alias.o.
(tree-ssa-alias.o): New rule.
(tree-ssa-operands.o): Add dependency on $(TIMEVAR_H) and tree-pass.h
(gt-tree-dfa.h): Remove.
* timevar.def (TV_TREE_OPS): Rename from unused entry TV_TREE_DFA.
* tree-ssa-alias.c: New file.
* tree-dfa.c (struct alias_stats_d, alias_stats, dump_alias_stats,
may_alias_p, add_may_alias, global_var, aliases_computed_p,
compute_may_aliases): Move to tree-ssa-alias.c.
(struct walk_state): Remove fields 'is_asm_expr' and 'num_calls'.
Update all users.
(compute_alias_sets, create_memory_tags, may_access_global_mem_p,
get_memory_tag_for, promote_call_clobbered_vars,
find_addressable_vars): Remove.
(call_clobbered_vars): Move to tree-ssa-alias.c and convert to
bitmap.
(find_referenced_vars): Move logic to create .GLOBAL_VAR to
tree-ssa-alias.c.
(create_ssa_name_ann): New.
(dump_variable): Rearrange.
(dump_dfa_stats): Do not show the number of call clobbered
variables.
(find_vars_r): Do not try to determine if an assignment my access
global memory.
(add_referenced_var): Remove hacks to establish global memory
dependencies.
If the variable needs to live in memory mark it call-clobbered.
* tree-flow-inline.h (ssa_name_ann): New.
(get_ssa_name_ann): New.
(set_may_alias_global_mem): Remove.
(may_alias_global_mem_p): Remove.
(set_may_point_to_global_mem): Remove.
(may_point_to_global_mem_p): Remove.
(is_call_clobbered): New
(mark_call_clobbered): New
(mark_non_addressable): New
* tree-flow.h (enum tree_ann_type): Add SSA_NAME_ANN.
(enum mem_tag_kind): Declare.
(struct var_ann_d): Remove fields 'is_call_clobbered',
'may_alias_global_mem' and 'may_point_to_global_mem'.
Replace bitfield 'mem_tag' with enum bitfield 'mem_tag_kind'.
Rename field 'mem_tag' to 'type_mem_tag'.
(struct stmt_ann_d): Change type of field 'addresses_taken' to a
bitmap.  Update all users.
(struct ssa_name_ann_d): Declare.
(union tree_ann_d): Add field 'ssa_name'.
(ssa_name_ann_t): New type.
(struct bb_ann_d): Add field 'has_escape_site'.
(num_call_clobbered_vars): Remove.
(call_clobbered_var): Remove.
(call_clobbered_vars): Change to bitmap.
(dump_points_to_info): Declare.
(debug_points_to_info): Declare.
(walk_use_def_chains_fn): New type.
(walk_use_def_chains): Declare.
(is_call_clobbered): Declare.
(mark_call_clobbered): Declare.
* tree-simple.c (needs_to_live_in_memory): Move to tree.c.
(is_gimple_non_addressable): Update comment.
(is_gimple_call_clobbered): Remove.
(get_call_expr_in): New.
(get_base_var): Rename from get_base_symbol.  Update all callers.
Don't strip SSA_NAME wrappers.
(get_base_decl): New.
(get_base_address): New.
* tree-simple.h (is_gimple_call_clobbered): Remove.
(needs_to_live_in_memory): Remove.
(get_base_decl): Declare.
(get_base_var): Declare.
(get_base_address): Declare.
* tree-ssa-dce.c (need_to_preserve_store): Reduce to calling
needs_to_live_in_memory.
* tree-ssa-operands.c: Include tree-pass.h and timevar.h
(get_stmt_operands): Push/pop TV_TREE_OPS time var.
Call mark_call_clobbered for asms that store to memory.
(get_expr_operands): When adding operands for INDIRECT_REF
expressions, use flow-sensitive aliasing, if available.
Assume that malloc-like function calls won't clobber.
(add_call_clobber_ops):
(add_call_read_ops):
* tree-ssa.c (rewrite_into_ssa): If any variable in vars_to_rename
is a pointer, invalidate all name memory tags.
(create_temp): Call is_call_clobbered and mark_call_clobbered.
(walk_use_def_chains_1): New.
(walk_use_def_chains): New.

* tree.c (needs_to_live_in_memory): New.
* tree.h (DECL_NEEDS_TO_LIVE_IN_MEMORY_INTERNAL): Define.
(struct tree_decl): Add bitfield 'needs_to_live_in_memory'.
Update unused bits comment.
(needs_to_live_in_memory): Declare.

* tree-simple.h (get_call_expr_in): Declare.
* tree-sra.c (scalarize_stmt): Call get_call_expr_in when handling
function calls.
* tree-ssa-ccp.c (likely_value): Likewise.

* params.def (PARAM_MAX_CLOBBERED_VARS_GLOBAL_VAR): Remove.
(PARAM_MAX_CALLS_GLOBAL_VAR): Remove.
(PARAM_GLOBAL_VAR_THRESHOLD): Define.
(PARAM_MAX_ALIAS_SET_SIZE): Define.
Update all users.
* params.h (MAX_CALLS_FOR_GLOBAL_VAR): Remove.
(MAX_CLOBBERED_VARS_FOR_GLOBAL_VAR): Remove.
(GLOBAL_VAR_THRESHOLD): Define.
(MAX_ALIAS_SET_SIZE): Define.

From-SVN: r77610

18 years agotree-ssa-dom.c (get_eq_expr_value): Improve handling of boolean conditions.
Jeff Law [Tue, 10 Feb 2004 03:15:00 +0000 (9 20:15 -0700)]
tree-ssa-dom.c (get_eq_expr_value): Improve handling of boolean conditions.

* tree-ssa-dom.c (get_eq_expr_value): Improve handling of boolean
conditions.

From-SVN: r77585

18 years agolanghooks.h (lang_hooks_for_functions): Add missing_noreturn_ok_p.
Richard Henderson [Tue, 10 Feb 2004 00:53:36 +0000 (9 16:53 -0800)]
langhooks.h (lang_hooks_for_functions): Add missing_noreturn_ok_p.

        * langhooks.h (lang_hooks_for_functions): Add missing_noreturn_ok_p.
        * langhooks-def.h, c-lang.c, objc/objc-lang.c
        (LANG_HOOKS_FUNCTION_MISSING_NORETURN_OK_P): New.
        * c-objc-common.c (c_missing_noreturn_ok_p): Return bool.
        (c_objc_common_init): Don't set lang_missing_noreturn_ok_p.
        * c-tree.h (c_missing_noreturn_ok_p): Update decl.
        * flow.c (lang_missing_noreturn_ok_p): Remove.
cp/
        * cp-lang.c (LANG_HOOKS_FUNCTION_MISSING_NORETURN_OK_P): New.
        * cp-tree.h (cp_missing_noreturn_ok_p): Declare.
        * decl.c (cp_missing_noreturn_ok_p): Export.
        (cxx_init_decl_processing): Don't set lang_missing_noreturn_ok_p.

        * flow.c (check_function_return_warnings): Move to tree-cfg.c.
        * toplev.c (rest_of_compilation): Don't call it.
        * tree-cfg.c (execute_warn_function_return): Move from flow.c,
        rename, update for tree vs rtl.
        (pass_warn_function_return): New.
        * tree-pass.h (pass_warn_function_return): Declare it.
        * tree-optimize.c (init_tree_optimization_passes): Run it.

        * function.h (struct function): Remove x_clobber_return_insn.
        * function.c (free_after_compilation): Don't set it.
        (expand_function_end): Likewise.

testsuite/
        * gcc.dg/noreturn-1.c: Adjust line numbers on warnings.
        * gcc.dg/noreturn-4.c: Likewise.
        * gcc.dg/noreturn-7.c: Likewise.  Adjust warnings for
        changes to tail-call optimizations.
        * gcc.dg/return-type-3.c: Turn on optimization.
        * gcc.dg/uninit-6.c: Adjust line numbers on warnings.
        * gcc.dg/uninit-8.c: XFAIL.

From-SVN: r77580

18 years agoDaily bump.
GCC Administrator [Tue, 10 Feb 2004 00:16:16 +0000 (10 00:16 +0000)]
Daily bump.

From-SVN: r77574

18 years agodomwalk.c (walk_dominator_tree): Completely lose PARENT argument.
Jeff Law [Mon, 9 Feb 2004 23:11:26 +0000 (9 16:11 -0700)]
domwalk.c (walk_dominator_tree): Completely lose PARENT argument.

        * domwalk.c (walk_dominator_tree): Completely lose PARENT argument.
        Callers updated.  No longer pass PARENT to callbacks.
        * domwalk.h (struct dom_walk_data): Corresponding changes.
        * tree-ssa-dom.c: Likewise.
        * tree-ssa.c: Likewise.

From-SVN: r77569

18 years agorevert: tree-ssa-dom.c (record_equivalences_from_phis): Use record_const_or_copy.
Richard Henderson [Mon, 9 Feb 2004 21:41:04 +0000 (9 13:41 -0800)]
revert: tree-ssa-dom.c (record_equivalences_from_phis): Use record_const_or_copy.

        Revert:
        2004-02-06  Richard Henderson  <rth@redhat.com>
        * tree-ssa-dom.c (record_equivalences_from_phis): Use
        record_const_or_copy.
        (record_equivalences_from_stmt): Likewise.  Replace
        block_avail_exprs_p and block_nonzero_vars_p args with bd.

From-SVN: r77558

18 years ago* gfortran.fortran-torture/execute/specifics.f90: Fix mod type.
Feng Wang [Mon, 9 Feb 2004 20:14:19 +0000 (9 20:14 +0000)]
* gfortran.fortran-torture/execute/specifics.f90: Fix mod type.

From-SVN: r77551

18 years agodomwalk.c (walk_dominator_tree): Change last argument to be the parent block in the...
Jeff Law [Mon, 9 Feb 2004 20:07:08 +0000 (9 13:07 -0700)]
domwalk.c (walk_dominator_tree): Change last argument to be the parent block in the dominator tree rather than...

        * domwalk.c (walk_dominator_tree): Change last argument to be the
        parent block in the dominator tree rather than the last statement
        in the parent block in the dominator tree.  Similarly in all the
        callbacks.
        * domwalk.h (struct dom_walk_data): Update callback prototypes.
        * tree-ssa-dom.c: Corresponding changes.
        * tree-ssa.c: Likewise.

From-SVN: r77550

18 years ago20040209-2.c: New test.
Zdenek Dvorak [Mon, 9 Feb 2004 17:49:45 +0000 (9 18:49 +0100)]
20040209-2.c: New test.

        * gcc.dg/tree-ssa/20040209-2.c: New test.

Co-Authored-By: Jeff Law <law@redhat.com>
From-SVN: r77545

18 years agotree-ssa-dom.c (redirect_edges_and_update_ssa_graph): Break out of tree_ssa_dominator...
Jeff Law [Mon, 9 Feb 2004 17:35:26 +0000 (9 10:35 -0700)]
tree-ssa-dom.c (redirect_edges_and_update_ssa_graph): Break out of tree_ssa_dominator_optimize.

        * tree-ssa-dom.c (redirect_edges_and_update_ssa_graph): Break out
        of tree_ssa_dominator_optimize.  If the out-of-ssa pass creates
        new variables, then invalidate some requested jump threads.

From-SVN: r77541

18 years agoflow.c (regno_uninitialized): Remove.
Richard Henderson [Mon, 9 Feb 2004 02:03:49 +0000 (8 18:03 -0800)]
flow.c (regno_uninitialized): Remove.

        * flow.c (regno_uninitialized): Remove.
        * output.h (regno_uninitialized): Remove.
        * function.c (setjmp_vars_warning): Rename from
        uninitialized_vars_warning, remove uninitialized vars warning.
        * toplev.c (rest_of_handle_life): Update to match.
        * tree.h (setjmp_vars_warning): Likewise.

        * tree-sra.c (lookup_scalar): Set DECL_NAME to something descriptive.

        * tree-ssa.c (warn_uninit): New.
        (warn_uninitialized_var, warn_uninitialized_phi): New.
        (execute_early_warn_uninitialized): New.
        (execute_late_warn_uninitialized): New.
        (gate_warn_uninitialized): New.
        (pass_early_warn_uninitialized): New.
        (pass_late_warn_uninitialized): New.
        * tree-pass.h (pass_early_warn_uninitialized): New.
        (pass_late_warn_uninitialized): New.
        * tree-optimize.c (init_tree_optimization_passes): Add them.

* testsuite/gcc.dg/uninit-11.c: New.

From-SVN: r77521

18 years agocppexp.c (append_digit): Rearrange unsignedp/overflow setting.
Richard Henderson [Mon, 9 Feb 2004 01:25:01 +0000 (8 17:25 -0800)]
cppexp.c (append_digit): Rearrange unsignedp/overflow setting.

        * cppexp.c (append_digit): Rearrange unsignedp/overflow setting.
        (eval_token, num_binary_op, num_part_mul, num_div_op): Likewise.
        * ra-rewrite.c (rewrite_program2): Zero info.
        * reload.c (decompose): Zero val.
        * tree-ssa-ccp.c (visit_phi_node): Zero phi_val.const_val.

From-SVN: r77519

18 years agoDaily bump.
GCC Administrator [Mon, 9 Feb 2004 00:16:15 +0000 (9 00:16 +0000)]
Daily bump.

From-SVN: r77516

18 years agoForgot to commit ChangeLog entries in previous commit.
Diego Novillo [Sun, 8 Feb 2004 17:21:52 +0000 (8 12:21 -0500)]
Forgot to commit ChangeLog entries in previous commit.

From-SVN: r77490

18 years agoi386-signal.h (HANDLE_DIVIDE_OVERFLOW): Add volatile qualifier to _regs.
Diego Novillo [Sun, 8 Feb 2004 17:13:49 +0000 (8 12:13 -0500)]
i386-signal.h (HANDLE_DIVIDE_OVERFLOW): Add volatile qualifier to _regs.

* include/i386-signal.h (HANDLE_DIVIDE_OVERFLOW): Add volatile
qualifier to _regs.

[[Split portion of a mixed commit.]]

From-SVN: r77488.1

18 years agoi386-signal.h (MAKE_THROW_FRAME): Add volatile qualifier to _regs.
Diego Novillo [Sun, 8 Feb 2004 16:42:48 +0000 (8 11:42 -0500)]
i386-signal.h (MAKE_THROW_FRAME): Add volatile qualifier to _regs.

* include/i386-signal.h (MAKE_THROW_FRAME): Add volatile qualifier
to _regs.

From-SVN: r77483

18 years ago* gfortran.texi: Fix typos.
Steve Kargl [Sun, 8 Feb 2004 16:38:47 +0000 (8 16:38 +0000)]
* gfortran.texi: Fix typos.

From-SVN: r77482

18 years agoDaily bump.
GCC Administrator [Sun, 8 Feb 2004 00:16:15 +0000 (8 00:16 +0000)]
Daily bump.

From-SVN: r77470

18 years ago* tree-inline.c (save_body): Clone the parm decl correctly.
Jan Hubicka [Sat, 7 Feb 2004 20:07:11 +0000 (7 21:07 +0100)]
* tree-inline.c (save_body): Clone the parm decl correctly.

From-SVN: r77465

18 years agoMakefile.am: Add m4/dotprodc.m4.
Feng Wang [Sat, 7 Feb 2004 18:06:18 +0000 (7 18:06 +0000)]
Makefile.am: Add m4/dotprodc.m4.

* Makefile.am: Add m4/dotprodc.m4. And fix spelling.
* Makefile.in: Regenerate.
* m4/dotprodc.m4: New file. Implement complex dot_product.
* m4/dotprod.m4: Delete the complex implementation.
* generated/dotprod_*: Update.
testsuite/
* gfortran.fortran-torture/execute/intrinsic_dotprod.f90: Add complex
test.

From-SVN: r77463

18 years agocgraph.c: Add introductionary comment.
Jan Hubicka [Sat, 7 Feb 2004 15:54:32 +0000 (7 16:54 +0100)]
cgraph.c: Add introductionary comment.

* cgraph.c: Add introductionary comment.
(cgraph_remove_node): Release DECL_SAVED_INSNS too.
* cgraphunit.c: Likewise.
(cgraph_finalize_function): Release DECL_SAVED_INSNS of external function.
(decl_expand_function): Release DECL_SAVED_INSNS/body/tree.
(cgraph_remove_unreachable_nodes): Likewise; guard cgraph verification.

From-SVN: r77456

18 years agore PR libfortran/14038 ([gfortan] Mangled character in Hollerith)
Bud Davis [Sat, 7 Feb 2004 15:40:30 +0000 (7 15:40 +0000)]
re PR libfortran/14038 ([gfortan] Mangled character in Hollerith)

PR libfortran/14038
* gfortran.fortran-torture/execute/holletith.f90: New test.

From-SVN: r77455

18 years agotransfer.c (write_constant_string): Do not delete H's in hollerith formats.
Bud Davis [Sat, 7 Feb 2004 15:33:29 +0000 (7 15:33 +0000)]
transfer.c (write_constant_string): Do not delete H's in hollerith formats.

* transfer.c (write_constant_string): Do not delete H's in hollerith
formats.

From-SVN: r77452

18 years agore PR fortran/13909 (f77 style logical*1 variables unusable)
Bud Davis [Sat, 7 Feb 2004 14:20:54 +0000 (7 14:20 +0000)]
re PR fortran/13909 (f77 style logical*1 variables unusable)

PR gfortran/13909
* intrinsic.c (add_conversions) Use logical conversion instead
of real.
* trans-types.c (gfc_get_logical_type) implemented logical*1
and logical*2.

From-SVN: r77450

18 years agoDaily bump.
GCC Administrator [Sat, 7 Feb 2004 00:16:46 +0000 (7 00:16 +0000)]
Daily bump.

From-SVN: r77434

18 years agocommon.opt (fdisable-tree-ssa): Remove.
Richard Henderson [Fri, 6 Feb 2004 23:20:07 +0000 (6 15:20 -0800)]
common.opt (fdisable-tree-ssa): Remove.

        * common.opt (fdisable-tree-ssa): Remove.
        * flags.h (flag_disable_tree_ssa): Remove.
        * toplev.c (flag_disable_tree_ssa): Remove.
        (f_options): Don't set it.
        * opts.c (common_handle_option): Likewise.
        * doc/invoke.texi (fdisable-tree-ssa): Remove.

From-SVN: r77429

18 years agotree-ssa-dom.c (record_equivalences_from_phis): Use record_const_or_copy.
Richard Henderson [Fri, 6 Feb 2004 22:00:50 +0000 (6 14:00 -0800)]
tree-ssa-dom.c (record_equivalences_from_phis): Use record_const_or_copy.

        * tree-ssa-dom.c (record_equivalences_from_phis): Use
        record_const_or_copy.
        (record_equivalences_from_stmt): Likewise.  Replace
        block_avail_exprs_p and block_nonzero_vars_p args with bd.

From-SVN: r77426

18 years agore PR middle-end/13127 (Inlining causes spurious "might be used uninitialized" warnings)
Andrew Pinski [Fri, 6 Feb 2004 21:30:05 +0000 (6 21:30 +0000)]
re PR middle-end/13127 (Inlining causes spurious "might be used uninitialized" warnings)

2004-02-06  Andrew Pinski  <pinskia@physics.uc.edu>

        PR middle-end/13127
        * tree-inline.c (declare_return_variable): Set the no warning bit
        on the variable created for the return value.

2004-02-06  Andrew Pinski  <pinskia@physics.uc.edu>

        PR middle-end/13127
        * gcc.dg/20040206-1.c: New test.

From-SVN: r77424

18 years ago* tree-pretty-print.c (dump_generic_node): Render NON_LVALUE_EXPR.
Richard Henderson [Fri, 6 Feb 2004 19:21:46 +0000 (6 11:21 -0800)]
* tree-pretty-print.c (dump_generic_node): Render NON_LVALUE_EXPR.

From-SVN: r77414

18 years agotree-ssa-dom.c (local_fold): New.
Richard Henderson [Fri, 6 Feb 2004 19:14:05 +0000 (6 11:14 -0800)]
tree-ssa-dom.c (local_fold): New.

        * tree-ssa-dom.c (local_fold): New.
        (thread_across_edge, simplify_rhs_and_lookup_avail_expr,
        find_equivalent_equality_comparison): Use it.

From-SVN: r77412

18 years agore PR c/13863 ([tree-ssa] gcc.dg/uninit-D.c fails)
Andrew Pinski [Fri, 6 Feb 2004 15:20:30 +0000 (6 15:20 +0000)]
re PR c/13863 ([tree-ssa] gcc.dg/uninit-D.c fails)

2004-02-06  Andrew Pinski  <pinskia@physics.uc.edu>

        PR c/13863
        * c-common.c (c_decl_uninit_1): Remove.
        (c_decl_uninit): Remove.
        * c-common.h (c_decl_uninit): Remove prototype.
        * c-lang.c (LANG_HOOKS_DECL_UNINIT): Delete.
        * objc/objc-lang.c (LANG_HOOKS_DECL_UNINIT): Delete.
        * c-simplify.c (gimplify_decl_stmt): Set TREE_NO_WARNING
        on the decl where the initial is itself.
        * function.c (uninitialized_vars_warning): Remove old comment
        and check for DECL_INITIAL, replace with a check of TREE_NO_WARNING
        and do not call the langhook.
        * langhooks-def.h (LANG_HOOKS_DECL_UNINIT): Remove.
        (LANG_HOOKS_INITIALIZER): Remove usage of LANG_HOOKS_DECL_UNINIT.
        * langhooks.c (lhd_decl_uninit): Remove.
        * langhooks.h (lhd_decl_uninit): Remove prototype.

2004-02-06  Andrew Pinski  <pinskia@physics.uc.edu>

        PR c/13863
        * cp-lang.c (LANG_HOOKS_DECL_UNINIT): Remove.

From-SVN: r77398

18 years agotree-ssa-dom.c (record_const_or_copy_1): New.
Richard Henderson [Fri, 6 Feb 2004 09:06:41 +0000 (6 01:06 -0800)]
tree-ssa-dom.c (record_const_or_copy_1): New.

        * tree-ssa-dom.c (record_const_or_copy_1): New.
        (record_const_or_copy): New.
        (thread_across_edge): Use it.
        (dom_opt_finalize_block): Likewise.  Tidy.
        (record_equality): Split out from ...
        (record_equivalences_from_incoming_edge): ... here.

From-SVN: r77390

18 years agotree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Allow mixing PLUS and MINUS...
Richard Henderson [Fri, 6 Feb 2004 07:15:30 +0000 (5 23:15 -0800)]
tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Allow mixing PLUS and MINUS when folding operations.

        * tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Allow
        mixing PLUS and MINUS when folding operations.

From-SVN: r77384

18 years agotree-pretty-print.c (dump_bb_header): Allow TDF_SLIM printing.
Andrew MacLeod [Fri, 6 Feb 2004 00:19:04 +0000 (6 00:19 +0000)]
tree-pretty-print.c (dump_bb_header): Allow TDF_SLIM printing.

2004-02-05  Andrew Macleod  <amacleod@redhat.com>

* tree-pretty-print.c (dump_bb_header):  Allow TDF_SLIM printing.
(dump_bb_end):  Allow TDF_SLIM printing.
(dump_generic_bb_buff):  Add flags parameter to dump_bb_end.

From-SVN: r77359

18 years agoDaily bump.
GCC Administrator [Fri, 6 Feb 2004 00:16:18 +0000 (6 00:16 +0000)]
Daily bump.

From-SVN: r77357

18 years ago* g++.dg/opt/bool1.C: Declare abort.
Richard Henderson [Thu, 5 Feb 2004 19:51:21 +0000 (5 11:51 -0800)]
* g++.dg/opt/bool1.C: Declare abort.

From-SVN: r77335

18 years agoalias.c (find_base_term, get_addr): Do not dereference NULL pointer when all VALUE...
Jan Hubicka [Thu, 5 Feb 2004 19:20:25 +0000 (5 19:20 +0000)]
alias.c (find_base_term, get_addr): Do not dereference NULL pointer when all VALUE's locations has been invalidated.

* alias.c (find_base_term, get_addr):  Do not dereference NULL
pointer when all VALUE's locations has been invalidated.
(rtx_equal_for_memref_p): Simplify checking of VALUEs.

From-SVN: r77331

18 years agotree-alias-ander.c (andersen_init): Reorder/Redo code so that we actually free the...
Daniel Berlin [Thu, 5 Feb 2004 16:21:23 +0000 (5 16:21 +0000)]
tree-alias-ander.c (andersen_init): Reorder/Redo code so that we actually free the memory in intraprocedural mode.

2004-02-04  Daniel Berlin  <dberlin@dberlin.org>

* tree-alias-ander.c (andersen_init): Reorder/Redo code so that we
actually free the memory in intraprocedural mode.
(andersen_cleanup): Ditto.

From-SVN: r77321

18 years agotree-ssa-ccp.c (get_value, [...]): Tidy.
Richard Henderson [Thu, 5 Feb 2004 06:36:51 +0000 (4 22:36 -0800)]
tree-ssa-ccp.c (get_value, [...]): Tidy.

        * tree-ssa-ccp.c (get_value, visit_phi_node,
        visit_assignment, dump_lattice_value): Tidy.
        (evaluate_stmt): Don't do debug dump here.
        (def_to_undefined): Merge into set_lattice_value.
        (def_to_varying): Likewise, but retain as a wrapper.
        (set_lattice_value): Tidy.  Emit correct debug info.
        (replace_uses_in): Remove strlen hacks.
        (execute_fold_all_builtins): Fix DECL_BUILT_IN comparison.
        Force folding of BUILT_IN_CONSTANT_P.
        * gcc.dg/tree-ssa/ssa-ccp-10.c: Look at fab dump.

From-SVN: r77302

18 years agobuiltins.c (fold_builtin_expect): New.
Richard Henderson [Thu, 5 Feb 2004 06:07:27 +0000 (4 22:07 -0800)]
builtins.c (fold_builtin_expect): New.

        * builtins.c (fold_builtin_expect): New.
        (fold_builtin_1): Call it.

From-SVN: r77300

18 years agoDaily bump.
GCC Administrator [Thu, 5 Feb 2004 00:16:19 +0000 (5 00:16 +0000)]
Daily bump.

From-SVN: r77283

18 years agojump.c (duplicate_loop_exit_test): Allow copying of the loop exit test even if we...
Jeff Law [Wed, 4 Feb 2004 20:49:24 +0000 (4 13:49 -0700)]
jump.c (duplicate_loop_exit_test): Allow copying of the loop exit test even if we do not find the LOOP_END note.

* jump.c (duplicate_loop_exit_test): Allow copying of the loop
exit test even if we do not find the LOOP_END note.

From-SVN: r77273

18 years ago* domwalk.c: Update comments.
Jeff Law [Wed, 4 Feb 2004 19:36:43 +0000 (4 12:36 -0700)]
* domwalk.c: Update comments.

From-SVN: r77266

18 years agore PR rtl-optimization/13755 ([tree-ssa] ICE on legal, depends on .GLOBAL_VAR.)
Brian Booth [Wed, 4 Feb 2004 19:08:06 +0000 (4 19:08 +0000)]
re PR rtl-optimization/13755 ([tree-ssa] ICE on legal, depends on .GLOBAL_VAR.)

        PR opt/13755
        * tree-dfa.c (compute_alias_sets): set rename flag for variables
        aliased by GLOBAL_VAR.

From-SVN: r77264

18 years agore PR other/12220 ([tree-ssa] bootstrap error with gmake,cc on mips-sgi-IRIX6.5)
Daniel Berlin [Wed, 4 Feb 2004 15:25:04 +0000 (4 15:25 +0000)]
re PR other/12220 ([tree-ssa] bootstrap error with gmake,cc on mips-sgi-IRIX6.5)

2004-02-03  Daniel Berlin  <dberlin@dberlin.org>

Fix PR other/12220
* engine/Makefile.am: Remove -fno-strict-aliasing.
* libcompat/Makefile.am: Ditto.
* points-to/Makefile.am: Ditto.
* configure: Regenerated.
* config.h.in: Ditto.
* Makefile.in: Ditto.
* engine/Makefile.am: Ditto.
* libcompat/Makefile.am: Ditto.
* points-to/Makefile.am: Ditto.

From-SVN: r77252

18 years agotree-ssa-dom.c (simplify_switch_and_lookup_avail_expr): New.
Richard Henderson [Wed, 4 Feb 2004 11:36:10 +0000 (4 03:36 -0800)]
tree-ssa-dom.c (simplify_switch_and_lookup_avail_expr): New.

        * tree-ssa-dom.c (simplify_switch_and_lookup_avail_expr): New.
        (eliminate_redundant_computations): Call it.

From-SVN: r77240

18 years ago20040204-1.c: Rename from ssa-ccp-5.c.
Richard Henderson [Wed, 4 Feb 2004 11:15:39 +0000 (4 03:15 -0800)]
20040204-1.c: Rename from ssa-ccp-5.c.

        * gcc.dg/tree-ssa/20040204-1.c: Rename from ssa-ccp-5.c.
        Look at .optimized output.  XFAIL.
        * gcc.dg/tree-ssa/ssa-ccp-11.c: XFAIL.
        * gcc.dg/tree-ssa/ssa-ccp-3.c: XFAIL.
        * gcc.dg/tree-ssa/ssa-ccp-4.c: Remove.
        * gcc.dg/tree-ssa/ssa-ccp-6.c: Remove.
        * gcc.dg/tree-ssa/ssa-ccp-8.c: Remove.

From-SVN: r77235

18 years ago20031106-1.c: XFAIL.
Richard Henderson [Wed, 4 Feb 2004 10:51:30 +0000 (4 02:51 -0800)]
20031106-1.c: XFAIL.

        * gcc.dg/tree-ssa/20031106-1.c: XFAIL.
        * gcc.dg/tree-ssa/20031106-2.c: XFAIL.
        * gcc.dg/tree-ssa/20031106-3.c: XFAIL.
        * gcc.dg/tree-ssa/20031106-4.c: XFAIL.
        * gcc.dg/tree-ssa/20031106-5.c: XFAIL.
        * gcc.dg/tree-ssa/20031106-6.c: XFAIL.
        * gcc.dg/tree-ssa/sra-2.c: XFAIL.
        * gcc.dg/tree-ssa/sra-3.c: XFAIL.

From-SVN: r77232

18 years ago* gcc.dg/tree-ssa/20030814-6.c: XFAIL.
Richard Henderson [Wed, 4 Feb 2004 08:06:23 +0000 (4 00:06 -0800)]
* gcc.dg/tree-ssa/20030814-6.c: XFAIL.

From-SVN: r77231

18 years agoi386-ssetype-1.c: XFAIL.
Richard Henderson [Wed, 4 Feb 2004 06:59:40 +0000 (3 22:59 -0800)]
i386-ssetype-1.c: XFAIL.

        * gcc.dg/i386-ssetype-1.c: XFAIL.
        * gcc.dg/i386-ssetype-3.c: XFAIL.

From-SVN: r77228

18 years ago* gcc.dg/tree-ssa/20030731-1.c: XFAIL.
Richard Henderson [Wed, 4 Feb 2004 06:53:15 +0000 (3 22:53 -0800)]
* gcc.dg/tree-ssa/20030731-1.c: XFAIL.

From-SVN: r77227

18 years agore PR rtl-optimization/13869 ([tree-ssa] wrong code with a simple loop)
Richard Henderson [Wed, 4 Feb 2004 06:08:20 +0000 (3 22:08 -0800)]
re PR rtl-optimization/13869 ([tree-ssa] wrong code with a simple loop)

        PR opt/13869
        * tree-cfg.c (cfg_remove_useless_stmts_bb): Correct handling of
        boolean variables in COND_EXPR_COND.
* g++.dg/opt/bool1.C: New.

From-SVN: r77223

18 years agore PR middle-end/13325 ([tree-ssa] Weird warning on memcpy(d, s, 0))
Richard Henderson [Wed, 4 Feb 2004 02:24:28 +0000 (3 18:24 -0800)]
re PR middle-end/13325 ([tree-ssa] Weird warning on memcpy(d, s, 0))

        PR middle-end/13325
        * builtins.c (fold_builtin_1): Rename from fold_builtin.
        (fold_builtin): New.
        * c-simplify.c (gimplify_expr_stmt): Check TREE_NO_WARNING.
        * stmt.c (expand_expr_stmt_value): Likewise.
        * tree.h (struct tree_common): Add nowarning_flag.
        (TREE_NO_WARNING): New.
        (TREE_NO_UNUSED_WARNING): Remove.
        * c-typeck.c (build_unary_op): Use TREE_NO_WARNING instead.
        * stmt.c (warn_if_unused_value): Likewise.
cp/
        * call.c, cvt.c, init.c, typeck.c: Use TREE_NO_WARNING instead
        of TREE_NO_UNUSED_WARNING.
        * cvt.c (convert_to_void): Also use it for "has no effect" warning.
testsuite/
* g++.dg/warn/noeffect5.C: New.
* gcc.dg/20040202-1.c: New.

From-SVN: r77215

18 years agoalias.c (find_base_term, get_addr): Do not dereference NULL pointer when all VALUE...
Jan Hubicka [Wed, 4 Feb 2004 01:57:24 +0000 (4 02:57 +0100)]
alias.c (find_base_term, get_addr): Do not dereference NULL pointer when all VALUE's locations has been invalidated.

        * alias.c (find_base_term, get_addr):  Do not dereference NULL
        pointer when all VALUE's locations has been invalidated.
        (rtx_equal_for_memref_p): Simplify checking of VALUEs.

From-SVN: r77212

18 years agocselib.c (discard_useless_values): Clear out value pointer pointing to datastructure...
Jan Hubicka [Wed, 4 Feb 2004 01:49:26 +0000 (4 02:49 +0100)]
cselib.c (discard_useless_values): Clear out value pointer pointing to datastructure to be recycled.

        * cselib.c (discard_useless_values):  Clear out value pointer pointing
        to datastructure to be recycled.

From-SVN: r77211

18 years agoDaily bump.
GCC Administrator [Wed, 4 Feb 2004 00:16:18 +0000 (4 00:16 +0000)]
Daily bump.

From-SVN: r77207

18 years agotree-ssa-dce.c: Partial rewrite.
Steven Bosscher [Tue, 3 Feb 2004 18:46:36 +0000 (3 18:46 +0000)]
tree-ssa-dce.c: Partial rewrite.

gcc/
* tree-ssa-dce.c: Partial rewrite.  The old DCE is now called
`conservative'.  The more aggressive algorithm uses control
dependence and is called `aggressive' or cd-dce.
* timevar.def (TV_TREE_DCE): Rename.
(TV_TREE_CD_DCE, TV_CONTROL_DEPENDENCES): New timevars.
* tree-pass.h: Declare extern pass_cd_dce.
* tree-optimize.c (init_tree_optimization_passes): Replace
the final DCE pass with a CD-DCE pass.

testsuite/
* gcc.dg/tree-ssa/20030709-2.c: Replace `dce4' with `cddce' for
tree dump scans.
* gcc.dg/tree-ssa/20030808-1.c: Likewise.

From-SVN: r77184

18 years agore PR target/13789 ([tree-ssa] ICE on _builtin_expect_addr)
Richard Henderson [Tue, 3 Feb 2004 04:35:33 +0000 (2 20:35 -0800)]
re PR target/13789 ([tree-ssa] ICE on _builtin_expect_addr)

        PR target/13789
        * expr.c (store_expr): Use force_operand before emit_move_insn.

From-SVN: r77157

18 years agoDaily bump.
GCC Administrator [Tue, 3 Feb 2004 00:16:17 +0000 (3 00:16 +0000)]
Daily bump.

From-SVN: r77144

18 years agovarray.c (struct elements): Make varray_heads for edges and basic blocks garbage...
Steven Bosscher [Mon, 2 Feb 2004 14:55:16 +0000 (2 14:55 +0000)]
varray.c (struct elements): Make varray_heads for edges and basic blocks garbage collectable.

* varray.c (struct elements): Make varray_heads for edges
and basic blocks garbage collectable.
* tree-ssa-dom.c (tree_ssa_dominator_optimize): Don't free
redirection_edges, just clear it.
(redirection_edges): Add GTY marker.
* tree-ssa-ccp.c (cfg_blocks): Likewise.
* basic-block.h (basic_block_info): Likewise.
* tree-cfg.c (label_to_block_map): Likewise.
(delete_tree_cfg): Clear basic_block_info.
* cfgbuild.c (find_basic_blocks): Likewise.
* flow.c (free_basic_block_vars): Likewise.
* tree-ssa-operands.c (finalize_ssa_vdefs): Clear build_vdefs.
(finalize_ssa_vuses): Clear build_vuses.

From-SVN: r77115

18 years agoDaily bump.
GCC Administrator [Mon, 2 Feb 2004 00:16:16 +0000 (2 00:16 +0000)]
Daily bump.

From-SVN: r77086

18 years agocgraphunit.c (cgraph_mark_inline_edge): Fix insertion to cgraph_inline_hash.
Jan Hubicka [Sun, 1 Feb 2004 12:42:11 +0000 (1 13:42 +0100)]
cgraphunit.c (cgraph_mark_inline_edge): Fix insertion to cgraph_inline_hash.

* cgraphunit.c (cgraph_mark_inline_edge): Fix insertion to
cgraph_inline_hash.

From-SVN: r77068

18 years agoDaily bump.
GCC Administrator [Sun, 1 Feb 2004 00:16:17 +0000 (1 00:16 +0000)]
Daily bump.

From-SVN: r77062

18 years agointrinsic_mmloc_4.f90: Delete print statements.
Canqun Yang [Sat, 31 Jan 2004 10:44:31 +0000 (31 18:44 +0800)]
intrinsic_mmloc_4.f90: Delete print statements.

* gfortran.fortran-torture/execute/intrinsic_mmloc_4.f90:
Delete print statements.

From-SVN: r77028

18 years agoDaily bump.
GCC Administrator [Sat, 31 Jan 2004 00:17:27 +0000 (31 00:17 +0000)]
Daily bump.

From-SVN: r77013

18 years agore PR c++/13693 ([tree-ssa] build failure in mipsisa64-elf)
Richard Henderson [Fri, 30 Jan 2004 23:37:11 +0000 (30 15:37 -0800)]
re PR c++/13693 ([tree-ssa] build failure in mipsisa64-elf)

        PR c++/13693
        * method.c (use_thunk): Don't force_target_expr for void thunks.
        * tree.c (build_target_expr_with_type): Assert non-void type.
        (force_target_expr): Likewise.

From-SVN: r77007

18 years agocommon.opt: Add support for -fmudflapth, -fmudflapir.
Frank Ch. Eigler [Fri, 30 Jan 2004 22:24:26 +0000 (30 22:24 +0000)]
common.opt: Add support for -fmudflapth, -fmudflapir.

2004-01-30  Frank Ch. Eigler  <fche@redhat.com>

* common.opt: Add support for -fmudflapth, -fmudflapir.
* invoke.texi: Document them.

From-SVN: r77002

18 years agocommon.opt: Add support for -fmudflapth, -fmudflapir.
Frank Ch. Eigler [Fri, 30 Jan 2004 21:30:38 +0000 (30 21:30 +0000)]
common.opt: Add support for -fmudflapth, -fmudflapir.

2004-01-30  Frank Ch. Eigler  <fche@redhat.com>

* common.opt: Add support for -fmudflapth, -fmudflapir.
* opts.c: Ditto.
* flags.h: Add new flags flag_mudflap_threads, _ignore_reads.
* toplev.c: Initialize new flags.  Remove redundant code from
lang_independent_options[].
* tree-mudflap.c (*): Support new flag_mudflap_threads encoding.
(mf_xform_derefs_1): Support flag_mudflap_ignore_reads option.
* c-mudflap.c (mflang_flush_calls): Mark static ctor TREE_USED.

2004-01-30  Frank Ch. Eigler  <fche@redhat.com>

* cp-mudflap.c (mflang_flush_calls): Mark static ctor as TREE_USED.

2004-01-30  Frank Ch. Eigler  <fche@redhat.com>

* testsuite/libmudflap.c/pass36-frag.c: Add missing free() call.
* testsuite/libmudflap.c/pass46-frag.c: New test for -fmudflapir.
* testsuite/libmudflap.cth/cthfrags.exp: Add -DSTATIC to compiler
flags for static linking permutation.
* testsuite/libmudflap.cth/pass40-frag.c: When -DSTATIC, avoid
some pthreads code that croaks on linux glibc tls.

From-SVN: r76992

18 years ago* gengtype-yacc.y (bitfieldlen): Add empty action.
Ian Lance Taylor [Fri, 30 Jan 2004 19:17:13 +0000 (30 19:17 +0000)]
* gengtype-yacc.y (bitfieldlen): Add empty action.

From-SVN: r76986

18 years agoMainline merge as of 2004-01-26.
Diego Novillo [Fri, 30 Jan 2004 13:20:35 +0000 (30 08:20 -0500)]
Mainline merge as of 2004-01-26.

From-SVN: r76954

18 years agoThis commit was manufactured by cvs2svn to create branch
No Author [Fri, 30 Jan 2004 13:20:35 +0000 (30 13:20 +0000)]
This commit was manufactured by cvs2svn to create branch
'tree-ssa-20020619-branch'.

From-SVN: r76953

18 years agore PR rtl-optimization/13524 ([tree-ssa] ICE in optimize_inline_calls when passing...
Richard Henderson [Fri, 30 Jan 2004 09:19:59 +0000 (30 01:19 -0800)]
re PR rtl-optimization/13524 ([tree-ssa] ICE in optimize_inline_calls when passing inline function result to builtin)

        PR opt/13524
        * gengtype-yacc.y (struct_fields): Accept unnamed bitfields.
        (bitfieldlen): Split from ...
        (bitfieldopt): ... here.
        * gimplify.c (mark_not_gimple): Remove.
        (gimplify_call_expr): Don't ignore BUILT_IN_MD.
        * tree-dfa.c (struct walk_state): Remove is_not_gimple.
        (find_referenced_vars): Don't look for TREE_NOT_GIMPLE.
        (find_vars_r, add_referenced_var): Likewise.
        * tree-ssa-operands.c (get_stmt_operands, get_expr_operands): Likewise.
        * tree-simple.h (mark_not_gimple): Remove.
        * tree.h (struct tree_common): Remove not_gimple_flag.
        (TREE_NOT_GIMPLE): Remove.

From-SVN: r76936

18 years agore PR c++/13865 ([tree-ssa] dtor runs prematurely for loop-scoped variable)
Jason Merrill [Fri, 30 Jan 2004 04:35:26 +0000 (29 23:35 -0500)]
re PR c++/13865 ([tree-ssa] dtor runs prematurely for loop-scoped variable)

        PR c++/13865
        * c-simplify.c (gimplify_for_stmt): Reorganize to fix cleanups.

[[Split portion of a mixed commit.]]

From-SVN: r76923.1

18 years agore PR java/12906 ([tree-ssa] jc1 is killed during bytecode to native compilation)
Richard Henderson [Fri, 30 Jan 2004 01:00:59 +0000 (29 17:00 -0800)]
re PR java/12906 ([tree-ssa] jc1 is killed during bytecode to native compilation)

        PR java/12906
        * decl.c (maybe_pushlevels): Careful with TREE_CHAIN when
        registering decls with push_jvm_slot.

From-SVN: r76918

18 years agoNew test.
Richard Henderson [Fri, 30 Jan 2004 00:36:03 +0000 (29 16:36 -0800)]
New test.

From-SVN: r76911

18 years agore PR c++/13543 ([tree-ssa] ICE in make_decl_rtl at -O3)
Richard Henderson [Fri, 30 Jan 2004 00:31:08 +0000 (29 16:31 -0800)]
re PR c++/13543 ([tree-ssa] ICE in make_decl_rtl at -O3)

        PR c++/13543
        * tree-inline.c (initialize_inlined_parameters): Register the
        substitute reference also.

From-SVN: r76909

18 years agotree-inline.c (gimple_expand_calls_inline): Look inside RETURN_EXPR.
Richard Henderson [Fri, 30 Jan 2004 00:28:16 +0000 (29 16:28 -0800)]
tree-inline.c (gimple_expand_calls_inline): Look inside RETURN_EXPR.

        * tree-inline.c (gimple_expand_calls_inline): Look inside
        RETURN_EXPR.

From-SVN: r76908

18 years agotree-pretty-print.c (dump_generic_node): If TDF_DETAILS, dump both name and uid.
Richard Henderson [Fri, 30 Jan 2004 00:24:38 +0000 (29 16:24 -0800)]
tree-pretty-print.c (dump_generic_node): If TDF_DETAILS, dump both name and uid.

        * tree-pretty-print.c (dump_generic_node): If TDF_DETAILS, dump
        both name and uid.

From-SVN: r76907

18 years agoDaily bump.
GCC Administrator [Fri, 30 Jan 2004 00:16:17 +0000 (30 00:16 +0000)]
Daily bump.

From-SVN: r76905

18 years ago* cfg.c (unlink_block): Reset prev_bb and next_bb.
Zdenek Dvorak [Thu, 29 Jan 2004 23:13:14 +0000 (30 00:13 +0100)]
* cfg.c (unlink_block): Reset prev_bb and next_bb.

From-SVN: r76901