1. 02 Jan, 2014 1 commit
  2. 17 Dec, 2013 1 commit
  3. 16 Dec, 2013 1 commit
    • internal-fn.c: Include stringpool.h and tree-ssanames.h. · 97286431
      	* internal-fn.c: Include stringpool.h and tree-ssanames.h.
      	(ubsan_expand_si_overflow_addsub_check): In the generic expansion,
      	try to improve generated code if one of the arguments is constant
      	or get_range_info says that one of the argument is always
      	negative or always non-negative.
      	* tree-vrp.c (simplify_internal_call_using_ranges): New function.
      	(simplify_stmt_using_ranges): Call it.
      
      From-SVN: r206025
      Jakub Jelinek committed
  4. 09 Dec, 2013 3 commits
    • Eliminate FOR_EACH_BB macro. · 11cd3bed
      gcc/
      	* basic-block.h (FOR_EACH_BB): Eliminate macro.
      
      	* asan.c (transform_statements, execute_sanopt): Eliminate
      	use of FOR_EACH_BB in favor of FOR_EACH_BB_FN, to make use of cfun
      	explicit.
      	* auto-inc-dec.c (rest_of_handle_auto_inc_dec): Likewise.
      	* bb-reorder.c (find_rarely_executed_basic_blocks_and_crossing_edges,
      	set_edge_can_fallthru_flag, fix_up_fall_thru_edges,
      	fix_crossing_unconditional_branches, add_reg_crossing_jump_notes,
      	insert_section_boundary_note, rest_of_handle_reorder_blocks,
      	duplicate_computed_gotos): Likewise.
      	* cfg.c (clear_edges, compact_blocks, brief_dump_cfg): Likewise.
      	* cfganal.c (find_unreachable_blocks, add_noreturn_fake_exit_edges,
      	compute_dominance_frontiers_1, single_pred_before_succ_order): Likewise.
      	* cfgbuild.c (find_many_sub_basic_blocks): Likewise.
      	* cfgcleanup.c (try_optimize_cfg, delete_dead_jumptables): Likewise.
      	* cfgexpand.c (add_scope_conflicts, discover_nonconstant_array_refs):
      	Likewise.
      	* cfgloop.c (flow_loops_cfg_dump, get_loop_body, record_loop_exits,
      	verify_loop_structure): Likewise.
      	* cfgloopanal.c (mark_loop_exit_edges): Likewise.
      	* cfgrtl.c (compute_bb_for_insn, find_partition_fixes,
      	verify_hot_cold_block_grouping, purge_all_dead_edges,
      	fixup_abnormal_edges, record_effective_endpoints,
      	outof_cfg_layout_mode, fixup_reorder_chain, force_one_exit_fallthru,
      	break_superblocks): Likewise.
      	* cgraphbuild.c (build_cgraph_edges, rebuild_cgraph_edges,
      	cgraph_rebuild_references): Likewise.
      	* combine-stack-adj.c (combine_stack_adjustments): Likewise.
      	* combine.c (delete_noop_moves, create_log_links,
      	combine_instructions): Likewise.
      	* config/arm/arm.c (thumb1_reorg, thumb2_reorg): Likewise.
      	* config/bfin/bfin.c (bfin_gen_bundles, reorder_var_tracking_notes):
      	Likewise.
      	* config/c6x/c6x.c (c6x_gen_bundles, conditionalize_after_sched,
      	c6x_reorg): Likewise.
      	* config/epiphany/resolve-sw-modes.c (resolve_sw_modes): Likewise.
      	* config/frv/frv.c (frv_optimize_membar): Likewise.
      	* config/i386/i386.c (ix86_finalize_stack_realign_flags): Likewise.
      	* config/ia64/ia64.c (ia64_reorg): Likewise.
      	* config/mips/mips.c (mips_annotate_pic_calls): Likewise.
      	* config/picochip/picochip.c (reorder_var_tracking_notes): Likewise.
      	* config/rs6000/rs6000.c (rs6000_alloc_sdmode_stack_slot): Likewise.
      	* config/s390/s390.c (s390_regs_ever_clobbered): Likewise.
      	* config/sh/sh_treg_combine.cc (sh_treg_combine::execute): Likewise.
      	* config/spu/spu.c (spu_machine_dependent_reorg): Likewise.
      	* config/tilegx/tilegx.c (tilegx_gen_bundles,
      	reorder_var_tracking_notes): Likewise.
      	* config/tilepro/tilepro.c (tilepro_gen_bundles,
      	reorder_var_tracking_notes): Likewise.
      	* coverage.c (coverage_compute_cfg_checksum): Likewise.
      	* cprop.c (compute_hash_table_work, compute_cprop_data,
      	local_cprop_pass, find_implicit_sets): Likewise.
      	* cse.c (cse_condition_code_reg): Likewise.
      	* dce.c (prescan_insns_for_dce): Likewise.
      	* df-core.c (df_compact_blocks): Likewise.
      	* df-problems.c (df_word_lr_alloc): Likewise.
      	* df-scan.c (df_scan_start_dump, df_scan_blocks, df_insn_rescan_all,
      	df_update_entry_exit_and_calls): Likewise.
      	* dominance.c (calculate_dominance_info, verify_dominators,
      	debug_dominance_info): Likewise.
      	* dse.c (dse_step5_nospill): Likewise.
      	* except.c (finish_eh_generation): Likewise.
      	* final.c (compute_alignments): Likewise.
      	* function.c (thread_prologue_and_epilogue_insns,
      	rest_of_match_asm_constraints): Likewise.
      	* gcse.c (compute_hash_table_work, prune_expressions,
      	compute_pre_data, compute_code_hoist_vbeinout, hoist_code,
      	calculate_bb_reg_pressure, compute_ld_motion_mems): Likewise.
      	* gimple-iterator.c (gsi_commit_edge_inserts): Likewise.
      	* gimple-ssa-isolate-paths.c (find_implicit_erroneous_behaviour,
      	find_explicit_erroneous_behaviour): Likewise.
      	* graphite-sese-to-poly.c (rewrite_reductions_out_of_ssa,
      	rewrite_cross_bb_scalar_deps_out_of_ssa): Likewise.
      	* haifa-sched.c (haifa_sched_init): Likewise.
      	* hw-doloop.c (discover_loops, set_bb_indices, reorder_loops):
      	Likewise.
      	* ifcvt.c (if_convert): Likewise.
      	* init-regs.c (initialize_uninitialized_regs): Likewise.
      	* ipa-prop.c (ipcp_transform_function): Likewise.
      	* ipa-pure-const.c (analyze_function): Likewise.
      	* ipa-split.c (find_split_points, execute_split_functions): Likewise.
      	* ira-build.c (form_loop_tree): Likewise.
      	* ira-costs.c (find_costs_and_classes): Likewise.
      	* ira-emit.c (emit_moves, add_ranges_and_copies, ira_emit): Likewise.
      	* ira.c (decrease_live_ranges_number, compute_regs_asm_clobbered,
      	mark_elimination, update_equiv_regs, find_moveable_pseudos,
      	split_live_ranges_for_shrink_wrap, allocate_initial_values): Likewise.
      	* jump.c (mark_all_labels): Likewise.
      	* lcm.c (compute_laterin, compute_insert_delete, compute_available,
      	compute_nearerout, compute_rev_insert_delete): Likewise.
      	* loop-init.c (fix_loop_structure): Likewise.
      	* loop-invariant.c (calculate_loop_reg_pressure): Likewise.
      	* lower-subreg.c (decompose_multiword_subregs,
      	decompose_multiword_subregs): Likewise.
      	* lra-assigns.c (assign_by_spills): Likewise.
      	* lra-coalesce.c (lra_coalesce): Likewise.
      	* lra-constraints.c (lra_inheritance, remove_inheritance_pseudos):
      	Likewise.
      	* lra-eliminations.c (lra_init_elimination): Likewise.
      	* lra-spills.c (assign_spill_hard_regs, spill_pseudos,
      	lra_final_code_change): Likewise.
      	* lra.c (remove_scratches, check_rtl, has_nonexceptional_receiver,
      	update_inc_notes): Likewise.
      	* mcf.c (adjust_cfg_counts): Likewise.
      	* mode-switching.c (optimize_mode_switching): Likewise.
      	* modulo-sched.c (rest_of_handle_sms): Likewise.
      	* omp-low.c (optimize_omp_library_calls, expand_omp_taskreg,
      	expand_omp_target): Likewise.
      	* postreload-gcse.c (alloc_mem, compute_hash_table): Likewise.
      	* postreload.c (reload_cse_regs_1): Likewise.
      	* predict.c (strip_predict_hints, tree_bb_level_predictions,
      	tree_estimate_probability, expensive_function_p,
      	estimate_bb_frequencies, compute_function_frequency): Likewise.
      	* profile.c (is_inconsistent, compute_branch_probabilities,
      	branch_prob): Likewise.
      	* ree.c (find_removable_extensions): Likewise.
      	* reg-stack.c (compensate_edges, convert_regs, reg_to_stack): Likewise.
      	* regcprop.c (copyprop_hardreg_forward): Likewise.
      	* reginfo.c (init_subregs_of_mode): Likewise.
      	* regrename.c (regrename_analyze): Likewise.
      	* regstat.c (regstat_compute_ri, regstat_compute_calls_crossed):
      	Likewise.
      	* reload1.c (has_nonexceptional_receiver, reload,
      	calculate_elim_costs_all_insns): Likewise.
      	* resource.c (init_resource_info, free_resource_info): Likewise.
      	* sched-ebb.c (schedule_ebbs): Likewise.
      	* sched-rgn.c (is_cfg_nonregular, find_single_block_region,
      	haifa_find_rgns, sched_rgn_local_init): Likewise.
      	* sel-sched-dump.c (sel_dump_cfg_2): Likewise.
      	* sel-sched-ir.c (init_lv_sets, free_lv_sets,
      	make_regions_from_the_rest): Likewise.
      	* sese.c (build_sese_loop_nests, sese_build_liveouts): Likewise.
      	* stack-ptr-mod.c (notice_stack_pointer_modification): Likewise.
      	* store-motion.c (compute_store_table, build_store_vectors,
      	one_store_motion_pass): Likewise.
      	* tracer.c (tail_duplicate): Likewise.
      	* trans-mem.c (compute_transaction_bits): Likewise.
      	* tree-call-cdce.c (tree_call_cdce): Likewise.
      	* tree-cfg.c (replace_loop_annotate, factor_computed_gotos,
      	fold_cond_expr_cond, make_edges, assign_discriminators,
      	make_abnormal_goto_edges, cleanup_dead_labels, group_case_labels,
      	dump_cfg_stats, gimple_verify_flow_info, print_loop,
      	execute_fixup_cfg): Likewise.
      	* tree-cfgcleanup.c (cleanup_tree_cfg_1, merge_phi_nodes): Likewise.
      	* tree-complex.c (init_dont_simulate_again, tree_lower_complex):
      	Likewise.
      	* tree-dfa.c (collect_dfa_stats, dump_enumerated_decls): Likewise.
      	* tree-eh.c (execute_lower_resx, execute_lower_eh_dispatch,
      	mark_reachable_handlers): Likewise.
      	* tree-emutls.c (lower_emutls_function_body): Likewise.
      	* tree-if-conv.c (main_tree_if_conversion): Likewise.
      	* tree-inline.c (optimize_inline_calls): Likewise.
      	* tree-into-ssa.c (rewrite_into_ssa, update_ssa): Likewise.
      	* tree-nrv.c (tree_nrv, execute_return_slot_opt): Likewise.
      	* tree-object-size.c (compute_object_sizes): Likewise.
      	* tree-outof-ssa.c (eliminate_useless_phis, rewrite_trees,
      	insert_backedge_copies, tree_profiling): Likewise.
      	* tree-scalar-evolution.c (scev_const_prop): Likewise.
      	* tree-sra.c (scan_function, sra_modify_function_body,
      	propagate_dereference_distances, ipa_sra_modify_function_body,
      	convert_callers): Likewise.
      	* tree-ssa-ccp.c (ccp_initialize, execute_fold_all_builtins): Likewise.
      	* tree-ssa-coalesce.c (build_ssa_conflict_graph): Likewise.
      	create_outofssa_var_map, coalesce_partitions): Likewise.
      	* tree-ssa-copy.c (init_copy_prop): Likewise.
      	* tree-ssa-copyrename.c (rename_ssa_copies): Likewise.
      	* tree-ssa-dce.c (find_obviously_necessary_stmts,
      	eliminate_unnecessary_stmts): Likewise.
      	* tree-ssa-dom.c (free_all_edge_infos, tree_ssa_dominator_optimize):
      	Likewise.
      	* tree-ssa-forwprop.c (ssa_forward_propagate_and_combine): Likewise.
      	* tree-ssa-live.c (clear_unused_block_pointer, remove_unused_locals,
      	new_tree_live_info, calculate_live_on_exit, dump_live_info,
      	analyze_memory_references, fill_always_executed_in,
      	tree_ssa_lim_finalize): Likewise.
      	* tree-ssa-loop-manip.c (find_uses_to_rename, verify_loop_closed_ssa):
      	Likewise.
      	* tree-ssa-math-opts.c (execute_cse_reciprocals, execute_cse_sincos,
      	execute_optimize_bswap, execute_optimize_widening_mul): Likewise.
      	* tree-ssa-propagate.c (substitute_and_fold): Likewise.
      	* tree-ssa-structalias.c (compute_points_to_sets): Likewise.
      	* tree-ssa-tail-merge.c (find_same_succ, reset_cluster_vectors):
      	Likewise.
      	* tree-ssa-ter.c (find_replaceable_exprs): Likewise.
      	* tree-ssa-threadupdate.c (thread_through_all_blocks): Likewise.
      	* tree-ssa-uncprop.c (associate_equivalences_with_edges,
      	tree_ssa_uncprop): Likewise.
      	* tree-ssa-uninit.c (warn_uninitialized_vars,
      	execute_late_warn_uninitialized): Likewise.
      	* tree-ssa.c (verify_ssa, execute_update_addresses_taken): Likewise.
      	* tree-stdarg.c (check_all_va_list_escapes, execute_optimize_stdarg):
      	Likewise.
      	* tree-switch-conversion.c (do_switchconv): Likewise.
      	* tree-vect-generic.c (expand_vector_operations): Likewise.
      	* tree-vectorizer.c (adjust_simduid_builtins, note_simd_array_uses,
      	execute_vect_slp): Likewise.
      	* tree-vrp.c (check_all_array_refs, remove_range_assertions,
      	vrp_initialize, identify_jump_threads, instrument_memory_accesses):
      	Likewise.
      	* ubsan.c (ubsan_pass): Likewise.
      	* value-prof.c (verify_histograms, gimple_value_profile_transformations,
      	gimple_find_values_to_profile): Likewise.
      	* var-tracking.c (vt_find_locations, dump_dataflow_sets, vt_emit_notes,
      	vt_initialize, delete_debug_insns, vt_finalize): Likewise.
      
      gcc/testsuite/
      	* g++.dg/plugin/selfassign.c (execute_warn_self_assign): Eliminate
      	use of FOR_EACH_BB in favor of FOR_EACH_BB_FN, to make use of cfun
      	explicit.
      	* gcc.dg/plugin/selfassign.c (execute_warn_self_assign): Likewise.
      
      From-SVN: r205828
      David Malcolm committed
    • Eliminate last_basic_block macro. · 8b1c6fd7
      	* basic-block.h (last_basic_block): Eliminate macro.
      
      	* asan.c (transform_statements): Eliminate use of last_basic_block
      	in favor of last_basic_block_for_fn, in order to make use of cfun
      	explicit.
      	* bb-reorder.c (copy_bb, reorder_basic_blocks): Likewise.
      	* bt-load.c (compute_defs_uses_and_gen, compute_kill, compute_out,
      	link_btr_uses, build_btr_def_use_webs, migrate_btr_defs): Likewise.
      	* cfg.c (compact_blocks): Likewise.
      	* cfganal.c (mark_dfs_back_edges,
      	control_dependences::control_dependences, post_order_compute,
      	pre_and_rev_post_order_compute_fn, dfs_enumerate_from, compute_idf,
      	single_pred_before_succ_order): Likewise.
      	* cfgbuild.c (make_edges): Likewise.
      	* cfgexpand.c (add_scope_conflicts, gimple_expand_cfg): Likewise.
      	* cfghooks.c (verify_flow_info): Likewise.
      	* cfgloop.c (verify_loop_structure): Likewise.
      	* cfgloopanal.c (just_once_each_iteration_p,
      	mark_irreducible_loops): Likewise.
      	* cfgloopmanip.c (fix_bb_placements, remove_path,
      	update_dominators_in_loop): Likewise.
      	* cfgrtl.c (create_basic_block_structure, rtl_create_basic_block,
      	break_superblocks, rtl_flow_call_edges_add): Likewise.
      	* config/epiphany/resolve-sw-modes.c (resolve_sw_modes): Likewise.
      	* config/frv/frv.c (frv_optimize_membar): Likewise.
      	* config/mips/mips.c (r10k_insert_cache_barriers): Likewise.
      	* config/spu/spu.c (spu_machine_dependent_reorg): Likewise.
      	* cprop.c (compute_local_properties, find_implicit_sets,
      	bypass_conditional_jumps, one_cprop_pass): Likewise.
      	* cse.c (cse_main): Likewise.
      	* df-core.c (rest_of_handle_df_initialize, df_worklist_dataflow,
      	df_analyze, df_grow_bb_info, df_compact_blocks): Likewise.
      	* df-problems.c (df_lr_verify_solution_start,
      	df_live_verify_solution_start, df_md_local_compute): Likewise.
      	* dominance.c (init_dom_info, calc_dfs_tree_nonrec, calc_dfs_tree,
      	calc_idoms): Likewise.
      	* domwalk.c (dom_walker::walk): Likewise.
      	* dse.c (dse_step0, dse_step3): Likewise.
      	* function.c (epilogue_done): Likewise.
      	* gcse.c (alloc_gcse_mem, compute_local_properties,
      	prune_insertions_deletions, compute_pre_data,
      	pre_expr_reaches_here_p, one_pre_gcse_pass,
      	compute_code_hoist_vbeinout, should_hoist_expr_to_dom, hoist_code,
      	one_code_hoisting_pass): Likewise.
      	* graph.c (draw_cfg_nodes_no_loops): Likewise.
      	* graphite-sese-to-poly.c (build_scop_bbs): Likewise.
      	* haifa-sched.c (unlink_bb_notes): Likewise.
      	* ipa-split.c (execute_split_functions): Likewise.
      	* ira-build.c (create_loop_tree_nodes,
      	remove_unnecessary_regions): Likewise.
      	* ira-emit.c (ira_emit): Likewise.
      	* ira.c (find_moveable_pseudos, ira): Likewise.
      	* lcm.c (compute_antinout_edge, compute_laterin,
      	compute_insert_delete, pre_edge_lcm, compute_available,
      	compute_nearerout, compute_rev_insert_delete,
      	pre_edge_rev_lcm): Likewise.
      	* loop-unroll.c (opt_info_start_duplication,
      	apply_opt_in_copies): Likewise.
      	* lower-subreg.c (decompose_multiword_subregs): Likewise.
      	* lra-lives.c (lra_create_live_ranges): Likewise.
      	* lra.c (lra): Likewise.
      	* mode-switching.c (optimize_mode_switching): Likewise.
      	* recog.c (split_all_insns): Likewise.
      	* regcprop.c (copyprop_hardreg_forward): Likewise.
      	* regrename.c (regrename_analyze): Likewise.
      	* reload1.c (reload): Likewise.
      	* resource.c (init_resource_info): Likewise.
      	* sched-rgn.c (haifa_find_rgns, extend_rgns, compute_trg_info,
      	realloc_bb_state_array, schedule_region, extend_regions): Likewise.
      	* sel-sched-ir.c (sel_extend_global_bb_info, extend_region_bb_info,
      	recompute_rev_top_order, sel_init_pipelining,
      	make_regions_from_the_rest): Likewise.
      	* store-motion.c (remove_reachable_equiv_notes,build_store_vectors)
      	Likewise.
      	* tracer.c (tail_duplicate): Likewise.
      	* trans-mem.c (tm_region_init, get_bb_regions_instrumented): Likewise.
      	* tree-cfg.c (create_bb, cleanup_dead_labels, gimple_dump_cfg,
      	gimple_flow_call_edges_add): Likewise.
      	* tree-cfgcleanup.c (split_bbs_on_noreturn_calls,
      	cleanup_tree_cfg_1): Likewise.
      	* tree-complex.c (tree_lower_complex): Likewise.
      	* tree-inline.c (copy_cfg_body): Likewise.
      	* tree-into-ssa.c (mark_phi_for_rewrite, rewrite_into_ssa,
      	prepare_def_site_for, update_ssa): Likewise.
      	* tree-ssa-dce.c (tree_dce_init, perform_tree_ssa_dce): Likewise.
      	* tree-ssa-dom.c (record_edge_info): Likewise.
      	* tree-ssa-live.c (new_tree_live_info, live_worklist): Likewise.
      	* tree-ssa-loop-im.c (fill_always_executed_in_1): Likewise.
      	* tree-ssa-loop-manip.c (copy_phi_node_args
      	gimple_duplicate_loop_to_header_edge): Likewise.
      	* tree-ssa-pre.c (compute_antic): Likewise.
      	* tree-ssa-propagate.c (ssa_prop_init): Likewise.
      	* tree-ssa-reassoc.c (init_reassoc): Likewise.
      	* tree-ssa-sccvn.c (init_scc_vn): Likewise.
      	* tree-ssa-tail-merge.c (init_worklist): Likewise.
      	* tree-ssa-uncprop.c (associate_equivalences_with_edges): Likewise.
      	* tree-stdarg.c (reachable_at_most_once): Likewise.
      	* tree-vrp.c (find_assert_locations): Likewise.
      	* var-tracking.c (vt_find_locations): Likewise.
      
      From-SVN: r205826
      David Malcolm committed
    • Eliminate BASIC_BLOCK macro. · 06e28de2
      gcc/
      	* basic-block.h (BASIC_BLOCK): Eliminate macro.
      
      	* alias.c (init_alias_analysis): Eliminate BASIC_BLOCK macro in
      	favor of uses of BASIC_BLOCK_FOR_FN, making uses of cfun explicit.
      	* bt-load.c (compute_defs_uses_and_gen, compute_out, link_btr_uses,
      	block_at_edge_of_live_range_p, migrate_btr_defs): Likewise.
      	* caller-save.c (insert_one_insn): Likewise.
      	* cfg.c (debug_bb, get_bb_original, get_bb_copy): Likewise.
      	* cfgexpand.c (add_scope_conflicts): Likewise.
      	* cfghooks.c (verify_flow_info): Likewise.
      	* cfgloop.c (flow_loops_find): Likewise.
      	* cfgrtl.c (rtl_flow_call_edges_add): Likewise.
      	* config/mips/mips.c (r10k_insert_cache_barriers): Likewise.
      	* config/s390/s390.c (s390_optimize_nonescaping_tx): Likewise.
      	* config/spu/spu.c (spu_machine_dependent_reorg): Likewise.
      	* cse.c (cse_main): Likewise.
      	* dce.c (fast_dce): Likewise.
      	* df-core.c (df_set_blocks, df_worklist_propagate_forward,
      	df_worklist_propagate_backward, df_worklist_dataflow_doublequeue,
      	df_bb_replace, df_dump_region): Likewise.
      	* df-problems.c (df_rd_bb_local_compute, df_lr_bb_local_compute,
      	df_live_bb_local_compute, df_chain_remove_problem)
      	df_chain_create_bb, df_word_lr_bb_local_compute, df_note_bb_compute,
      	df_md_bb_local_compute, df_md_local_compute,
      	df_md_transfer_function): Likewise.
      	* df-scan.c (df_scan_blocks, df_reorganize_refs_by_reg_by_insn,
      	df_reorganize_refs_by_insn, df_bb_refs_collect,
      	df_record_entry_block_defs, df_update_entry_block_defs,
      	df_record_exit_block_uses): Likewise.
      	* dominance.c (nearest_common_dominator_for_set): Likewise.
      	* gcse.c (hoist_code): Likewise.
      	* graph.c (draw_cfg_nodes_no_loops): Likewise.
      	* ipa-inline-analysis.c (param_change_prob,
      	estimate_function_body_sizes): Likewise.
      	* ipa-split.c (dominated_by_forbidden): Likewise.
      	* loop-unroll.c (apply_opt_in_copies): Likewise.
      	* lower-subreg.c (decompose_multiword_subregs): Likewise.
      	* lra-lives.c (lra_create_live_ranges): Likewise.
      	* predict.c (propagate_freq): Likewise.
      	* regrename.c (regrename_analyze): Likewise.
      	* regstat.c (regstat_bb_compute_ri,
      	regstat_bb_compute_calls_crossed): Likewise.
      	* resource.c (mark_target_live_regs): Likewise.
      	* sched-ebb.c (ebb_fix_recovery_cfg): Likewise.
      	* sched-int.h (EBB_FIRST_BB, EBB_LAST_BB): Likewise.
      	* sched-rgn.c (debug_region, dump_region_dot, too_large,
      	haifa_find_rgns, extend_rgns, compute_dom_prob_ps, update_live,
      	propagate_deps, sched_is_disabled_for_current_region_p): Likewise.
      	* sched-vis.c (debug_bb_n_slim): Likewise.
      	* sel-sched-ir.c (sel_finish_global_and_expr, verify_backedges,
      	purge_empty_blocks, sel_remove_loop_preheader): Likewise.
      	* sel-sched.c (remove_insns_that_need_bookkeeping)
      	(current_region_empty_p, sel_region_init,
      	simplify_changed_insns): Likewise.
      	* trans-mem.c (execute_tm_mark, execute_tm_edges,
      	tm_memopt_compute_antic, ipa_tm_scan_irr_function): Likewise.
      	* tree-cfg.c (make_edges, end_recording_case_labels,
      	label_to_block_fn, gimple_debug_bb, gimple_flow_call_edges_add,
      	remove_edge_and_dominated_blocks, remove_edge_and_dominated_blocks,
      	gimple_purge_all_dead_eh_edges,
      	gimple_purge_all_dead_abnormal_call_edges): Likewise.
      	* tree-cfgcleanup.c (fixup_noreturn_call,
      	split_bbs_on_noreturn_calls, cleanup_tree_cfg_1): Likewise.
      	* tree-inline.c (copy_cfg_body, fold_marked_statements): Likewise.
      	* tree-into-ssa.c (set_livein_block, prune_unused_phi_nodes,
      	insert_phi_nodes_for, insert_updated_phi_nodes_for): Likewise.
      	* tree-ssa-dom.c (tree_ssa_dominator_optimize): Likewise.
      	* tree-ssa-live.c (live_worklist): Likewise.
      	* tree-ssa-loop-manip.c (compute_live_loop_exits,
      	add_exit_phis_var, find_uses_to_rename, copy_phi_node_args): Likewise.
      	* tree-ssa-pre.c (compute_antic): Likewise.
      	* tree-ssa-reassoc.c (update_range_test, optimize_range_tests): Likewise.
      	* tree-ssa-sink.c (nearest_common_dominator_of_uses): Likewise.
      	* tree-ssa-tail-merge.c (same_succ_hash, same_succ_def::equal,
      	same_succ_flush_bbs, update_worklist, set_cluster,
      	same_phi_alternatives, find_clusters_1, apply_clusters,
      	update_debug_stmts): Likewise.
      	* tree-ssa-threadupdate.c (mark_threaded_blocks,
      	thread_through_all_blocks): Likewise.
      	* tree-ssa-uncprop.c (associate_equivalences_with_edges): Likewise.
      	* tree-vrp.c (find_assert_locations): Likewise.
      
      From-SVN: r205822
      David Malcolm committed
  5. 05 Dec, 2013 1 commit
    • common.opt: Split up -fisolate-erroneous-paths into -fisolate-erroneous-paths-dereference... · ae93744d
      	* common.opt: Split up -fisolate-erroneous-paths into
      	-fisolate-erroneous-paths-dereference and
      	-fisolate-erroneous-paths-attribute.
      	* invoke.texi: Corresponding changes.
      	* gimple.c (infer_nonnull_range):  Add and use new arguments
      	to control what kind of statements can be used to infer a
      	non-null range.
      	* gimple.h (infer_nonnull_range): Update prototype.
      	* tree-vrp.c (infer_value_range): Corresponding changes.
      	* opts.c (default_options_table): Update due to option split.
      	* gimple-ssa-isolate-paths.c: Fix trailing whitespace.
      	(find_implicit_erroneous_behaviour): Pass additional arguments
      	to infer_nonnull_range.
      	(find_explicit_erroneous_behaviour): Similarly.
      	(gate_isolate_erroneous_paths): Check both of the new
      	options.
      
      testsuite/
      
      	* gcc.dg/pr38984.c: Use -fno-isolate-erroneous-paths-dereference.
      	* gcc.dg/tree-ssa/isolate-2.c: Explicitly turn on
      	-fisolate-erroneous-paths-attribute.
      	* gcc.dg/tree-ssa/isolate-4.c: Likewise.
      
      From-SVN: r205689
      Jeff Law committed
  6. 04 Dec, 2013 1 commit
  7. 02 Dec, 2013 1 commit
  8. 28 Nov, 2013 1 commit
    • tree-core.h (tree_base): Document use of static_flag for SSA_NAME. · f5c8b24c
      gcc/
      	* tree-core.h (tree_base): Document use of static_flag for SSA_NAME.
      	* tree.h (SSA_NAME_ANTI_RANGE_P, SSA_NAME_RANGE_TYPE): New macros.
      	* tree-ssanames.h (set_range_info): Add range_type argument.
      	(duplicate_ssa_name_range_info): Likewise.
      	* tree-ssanames.c (set_range_info): Take the range type as argument
      	and store it in SSA_NAME_ANTI_RANGE_P.
      	(duplicate_ssa_name_range_info): Likewise.
      	(get_range_info): Use SSA_NAME_ANTI_RANGE_P.
      	(set_nonzero_bits): Update call to set_range_info.
      	(duplicate_ssa_name_fn): Update call to duplicate_ssa_name_range_info.
      	* tree-ssa-copy.c (fini_copy_prop): Likewise.
      	* tree-vrp.c (remove_range_assertions): Update call to set_range_info.
      	(vrp_finalize): Likewise, passing anti-ranges directly.
      
      From-SVN: r205489
      Richard Sandiford committed
  9. 26 Nov, 2013 2 commits
  10. 22 Nov, 2013 1 commit
    • gimple.h: Remove all includes. · 2fb9a547
      
      	* gimple.h: Remove all includes.
      	(recalculate_side_effects): Move prototype to gimplify.h.
      	* Makefile.in (PLUGIN_HEADERS): Add flattened gimple.h includes.
      	* gengtype.c (open_base_files): Add gimple.h include list.
      	* gimplify.h (recalculate_side_effects): Relocate prototype here.
      	* gimple.c: Adjust include list.
      	(recalculate_side_effects): Move to gimplify.c.
      	* gimplify.c: Adjust include list.
      	(recalculate_side_effects): Relocate from gimple.c.
      	* alias.c: Add required include files removed from gimple.h.
      	* asan.c: Likewise.
      	* builtins.c: Likewise.
      	* calls.c: Likewise.
      	* cfgexpand.c: Likewise.
      	* cfgloop.c: Likewise.
      	* cfgloopmanip.c: Likewise.
      	* cgraphbuild.c: Likewise.
      	* cgraph.c: Likewise.
      	* cgraphclones.c: Likewise.
      	* cgraphunit.c: Likewise.
      	* cilk-common.c: Likewise.
      	* data-streamer.c: Likewise.
      	* data-streamer-in.c: Likewise.
      	* data-streamer-out.c: Likewise.
      	* dse.c: Likewise.
      	* dwarf2out.c: Likewise.
      	* emit-rtl.c: Likewise.
      	* except.c: Likewise.
      	* expr.c: Likewise.
      	* fold-const.c: Likewise.
      	* function.c: Likewise.
      	* gimple-builder.c: Likewise.
      	* gimple-expr.c: Likewise.
      	* gimple-fold.c: Likewise.
      	* gimple-iterator.c: Likewise.
      	* gimple-low.c: Likewise.
      	* gimple-pretty-print.c: Likewise.
      	* gimple-ssa-isolate-paths.c: Likewise.
      	* gimple-ssa-strength-reduction.c: Likewise.
      	* gimple-streamer-in.c: Likewise.
      	* gimple-streamer-out.c: Likewise.
      	* gimple-walk.c: Likewise.
      	* gimplify-me.c: Likewise.
      	* graphite-blocking.c: Likewise.
      	* graphite.c: Likewise.
      	* graphite-clast-to-gimple.c: Likewise.
      	* graphite-dependences.c: Likewise.
      	* graphite-interchange.c: Likewise.
      	* graphite-optimize-isl.c: Likewise.
      	* graphite-poly.c: Likewise.
      	* graphite-scop-detection.c: Likewise.
      	* graphite-sese-to-poly.c: Likewise.
      	* internal-fn.c: Likewise.
      	* ipa.c: Likewise.
      	* ipa-cp.c: Likewise.
      	* ipa-devirt.c: Likewise.
      	* ipa-inline-analysis.c: Likewise.
      	* ipa-inline.c: Likewise.
      	* ipa-profile.c: Likewise.
      	* ipa-prop.c: Likewise.
      	* ipa-pure-const.c: Likewise.
      	* ipa-reference.c: Likewise.
      	* ipa-split.c: Likewise.
      	* ipa-utils.c: Likewise.
      	* langhooks.c: Likewise.
      	* lto-cgraph.c: Likewise.
      	* lto-compress.c: Likewise.
      	* lto-opts.c: Likewise.
      	* lto-section-in.c: Likewise.
      	* lto-section-out.c: Likewise.
      	* lto-streamer.c: Likewise.
      	* lto-streamer-in.c: Likewise.
      	* lto-streamer-out.c: Likewise.
      	* omp-low.c: Likewise.
      	* opts-global.c: Likewise.
      	* passes.c: Likewise.
      	* predict.c: Likewise.
      	* profile.c: Likewise.
      	* sese.c: Likewise.
      	* stmt.c: Likewise.
      	* stor-layout.c: Likewise.
      	* symtab.c: Likewise.
      	* targhooks.c: Likewise.
      	* toplev.c: Likewise.
      	* tracer.c: Likewise.
      	* trans-mem.c: Likewise.
      	* tree-affine.c: Likewise.
      	* tree.c: Likewise.
      	* tree-call-cdce.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-chrec.c: Likewise.
      	* tree-complex.c: Likewise.
      	* tree-data-ref.c: Likewise.
      	* tree-dfa.c: Likewise.
      	* tree-eh.c: Likewise.
      	* tree-emutls.c: Likewise.
      	* tree-if-conv.c: Likewise.
      	* tree-inline.c: Likewise.
      	* tree-into-ssa.c: Likewise.
      	* tree-loop-distribution.c: Likewise.
      	* tree-nested.c: Likewise.
      	* tree-nrv.c: Likewise.
      	* tree-object-size.c: Likewise.
      	* tree-outof-ssa.c: Likewise.
      	* tree-parloops.c: Likewise.
      	* tree-phinodes.c: Likewise.
      	* tree-predcom.c: Likewise.
      	* tree-pretty-print.c: Likewise.
      	* tree-profile.c: Likewise.
      	* tree-scalar-evolution.c: Likewise.
      	* tree-sra.c: Likewise.
      	* tree-ssa-address.c: Likewise.
      	* tree-ssa-alias.c: Likewise.
      	* tree-ssa.c: Likewise.
      	* tree-ssa-ccp.c: Likewise.
      	* tree-ssa-coalesce.c: Likewise.
      	* tree-ssa-copy.c: Likewise.
      	* tree-ssa-copyrename.c: Likewise.
      	* tree-ssa-dce.c: Likewise.
      	* tree-ssa-dom.c: Likewise.
      	* tree-ssa-dse.c: Likewise.
      	* tree-ssa-forwprop.c: Likewise.
      	* tree-ssa-ifcombine.c: Likewise.
      	* tree-ssa-live.c: Likewise.
      	* tree-ssa-loop.c: Likewise.
      	* tree-ssa-loop-ch.c: Likewise.
      	* tree-ssa-loop-im.c: Likewise.
      	* tree-ssa-loop-ivcanon.c: Likewise.
      	* tree-ssa-loop-ivopts.c: Likewise.
      	* tree-ssa-loop-manip.c: Likewise.
      	* tree-ssa-loop-niter.c: Likewise.
      	* tree-ssa-loop-prefetch.c: Likewise.
      	* tree-ssa-loop-unswitch.c: Likewise.
      	* tree-ssa-math-opts.c: Likewise.
      	* tree-ssanames.c: Likewise.
      	* tree-ssa-operands.c: Likewise.
      	* tree-ssa-phiopt.c: Likewise.
      	* tree-ssa-phiprop.c: Likewise.
      	* tree-ssa-pre.c: Likewise.
      	* tree-ssa-propagate.c: Likewise.
      	* tree-ssa-reassoc.c: Likewise.
      	* tree-ssa-sccvn.c: Likewise.
      	* tree-ssa-sink.c: Likewise.
      	* tree-ssa-strlen.c: Likewise.
      	* tree-ssa-structalias.c: Likewise.
      	* tree-ssa-tail-merge.c: Likewise.
      	* tree-ssa-ter.c: Likewise.
      	* tree-ssa-threadedge.c: Likewise.
      	* tree-ssa-threadupdate.c: Likewise.
      	* tree-ssa-uncprop.c: Likewise.
      	* tree-ssa-uninit.c: Likewise.
      	* tree-stdarg.c: Likewise.
      	* tree-streamer.c: Likewise.
      	* tree-streamer-in.c: Likewise.
      	* tree-streamer-out.c: Likewise.
      	* tree-switch-conversion.c: Likewise.
      	* tree-tailcall.c: Likewise.
      	* tree-vect-data-refs.c: Likewise.
      	* tree-vect-generic.c: Likewise.
      	* tree-vect-loop.c: Likewise.
      	* tree-vect-loop-manip.c: Likewise.
      	* tree-vectorizer.c: Likewise.
      	* tree-vect-patterns.c: Likewise.
      	* tree-vect-slp.c: Likewise.
      	* tree-vect-stmts.c: Likewise.
      	* tree-vrp.c: Likewise.
      	* tsan.c: Likewise.
      	* ubsan.c: Likewise.
      	* value-prof.c: Likewise.
      	* varpool.c: Likewise.
      	* var-tracking.c: Likewise.
      	* vtable-verify.c: Likewise.
      
      	* ada/gcc-interface/trans.c: Add required include files from gimple.h.
      
      	* c/c-typeck.c: Add required include files from gimple.h.
      
      	* c-family/c-common.c: Add required include files from gimple.h.
      	* c-family/c-gimplify.c: Likewise
      	* c-family/cilk.c: Likewise
      
      	* cp/class.c: Add required include files from gimple.h.
      	* cp/cp-gimplify.c: Likewise
      	* cp/decl2.c: Likewise
      	* cp/init.c: Likewise
      	* cp/optimize.c: Likewise
      	* cp/pt.c: Likewise
      	* cp/semantics.c: Likewise
      	* cp/tree.c: Likewise
      	* cp/typeck.c: Likewise
      	* cp/vtable-class-hierarchy.c: Likewise
      
      	* fortran/trans.c: Add required include files from gimple.h.
      	* fortran/trans-expr.c: Likewise
      	* fortran/trans-openmp.c: Likewise
      
      	* go/gofrontend/expressions.cc: Add required include files from
      	gimple.h.
      	* go/gofrontend/gogo-tree.cc: Likewise
      	* go/gofrontend/types.cc: Likewise
      	* go/go-gcc.cc: Likewise
      	* go/go-lang.c: Likewise
      
      	* java/java-gimplify.c: Add required include files from gimple.h.
      
      	* lto/lto.c: Add required include files from gimple.h.
      	* lto/lto-lang.c: Likewise
      	* lto/lto-object.c: Likewise
      	* lto/lto-partition.c: Likewise
      	* lto/lto-symtab.c: Likewise
      
      	* objc/objc-act.c: Add required include files from gimple.h.
      
      	* config/darwin.c: Add required include files removed from gimple.h.
      	* config/aarch64/aarch64-builtins.c: Likewise.
      	* config/aarch64/aarch64.c: Likewise.
      	* config/alpha/alpha.c: Likewise.
      	* config/i386/i386.c: Likewise.
      	* config/i386/winnt.c: Likewise.
      	* config/ia64/ia64.c: Likewise.
      	* config/m32c/m32c.c: Likewise.
      	* config/mep/mep.c: Likewise.
      	* config/mips/mips.c: Likewise.
      	* config/rs6000/rs6000.c: Likewise.
      	* config/s390/s390.c: Likewise.
      	* config/sh/sh.c: Likewise.
      	* config/sparc/sparc.c: Likewise.
      	* config/spu/spu.c: Likewise.
      	* config/stormy16/stormy16.c: Likewise.
      	* config/tilegx/tilegx.c: Likewise.
      	* config/tilepro/tilepro.c: Likewise.
      	* config/xtensa/xtensa.c: Likewise.
      
      	* testsuite/gcc.dg/plugin/finish_unit_plugin.c: Add required include
      	files removed from gimple.h.
      	* testsuite/gcc.dg/plugin/ggcplug.c: Likewise.
      	* testsuite/gcc.dg/plugin/one_time_plugin.c: Likewise.
      	* testsuite/gcc.dg/plugin/selfassign.c: Likewise.
      	* testsuite/gcc.dg/plugin/start_unit_plugin.c: Likewise.
      	* testsuite/g++.dg/plugin/selfassign.c: Likewise.
      
      From-SVN: r205272
      Andrew MacLeod committed
  11. 19 Nov, 2013 2 commits
    • cfgloop.h (struct loop_iterator): C++-ify, add constructor and destructor and… · f0bd40b1
      cfgloop.h (struct loop_iterator): C++-ify, add constructor and destructor and make fel_next a member function.
      
      2013-11-19  Richard Biener  <rguenther@suse.de>
      
      	* cfgloop.h (struct loop_iterator): C++-ify, add constructor
      	and destructor and make fel_next a member function.
      	(fel_next): Transform into ...
      	(loop_iterator::next): ... this.
      	(fel_init): Transform into ...
      	(loop_iterator::loop_iterator): ... this.
      	(loop_iterator::~loop_iterator): New.
      	(FOR_EACH_LOOP): Remove loop-iterator argument.
      	(FOR_EACH_LOOP_BREAK): Remove no longer necessary macro.
      	* cfgloop.c, cfgloopmanip.c, config/mn10300/mn10300.c,
      	graphite-clast-to-gimple.c, graphite-scop-detection.c,
      	graphite-sese-to-poly.c, ipa-inline-analysis.c, ipa-pure-const.c,
      	loop-init.c, loop-invariant.c, loop-unroll.c, loop-unswitch.c,
      	modulo-sched.c, predict.c, sel-sched-ir.c, tree-cfg.c, tree-data-ref.c,
      	tree-if-conv.c, tree-loop-distribution.c, tree-parloops.c,
      	tree-predcom.c, tree-scalar-evolution.c, tree-ssa-dce.c,
      	tree-ssa-loop-ch.c, tree-ssa-loop-im.c, tree-ssa-loop-ivcanon.c,
      	tree-ssa-loop-ivopts.c, tree-ssa-loop-manip.c, tree-ssa-loop-niter.c,
      	tree-ssa-loop-prefetch.c, tree-ssa-loop-unswitch.c,
      	tree-ssa-threadupdate.c, tree-vectorizer.c, tree-vrp.c: Adjust
      	uses of FOR_EACH_LOOP and remove loop_iterator variables.  Replace
      	FOR_EACH_LOOP_BREAK with break.
      
      From-SVN: r205032
      Richard Biener committed
    • Factor unrelated declarations out of tree.h. · d8a2d370
      This patch applies the rule that functions defined in FOO.c must be
      declared in FOO.h. One of the worst offenders in the code base is
      tree.h, unsurprisingly.
      
      The patch creates several new headers: attribs.h calls.h fold-const.h
      gcc-symtab.h print-rtl.h print-tree.h stmt.h stor-layout.h stringpool.h
      tree-nested.h tree-object-size.h varasm.h.
      
      Functions in each corresponding .c file got moved to those headers and
      others that already existed. I wanted to make this patch as mechanical
      as possible, so I made no attempt to fix problems like having
      build_addr defined in tree-inline.c. I left that for later.
      
      There were some declarations that I could not move out of tree.h
      because of header poisoning or the use of target macros. We forbid the
      inclusion of things like expr.h from FE files. While that's a
      reasonable idea, the FE file *still* manage to at expr.c functionality
      because the declarations they want to use were defined in tree.h.
      
      The affected files are builtins.h, emit-rtl.h and expr.h.
      
      If that functionality is allowed to be accessed from the FEs,
      then I will later move those functions out of expr.c into tree.c.
      I have moved these declarations to the bottom of tree.h so they
      are easy to identify later.
      
      There is a namespace collision with libcpp. The file gcc/symtab.c
      cannot use gcc/symtab.h because the #include command picks up
      libcpp/include/symtab.h first. So I named this file gcc-symtab.h
      for now.
      
      Finally, I added a new header to PLUGIN_HEADERS to account for the
      tree.h refactoring. I did not add all headers factored out of tree.h
      because it is unclear (and impossible to tell) what plugins need.
      This adds the one header used by the plugins in the testsuite.
      
      This will be changing quite dramatically as we progress with the header
      refactoring.
      
      This patch should offer some minimal incremental build advantages
      by reducing the size of tree.h. Changes that would otherwise
      affected tree.h, will now go to other headers which are less
      frequently included.
      
      	* tree.h: Include fold-const.h.
      	(aggregate_value_p): Moved to function.h.
      	(alloca_call_p): Moved to calls.h.
      	(allocate_struct_function): Moved to function.h.
      	(apply_tm_attr): Moved to attribs.h.
      	(array_at_struct_end_p): Moved to expr.h.
      	(array_ref_element_size): Moved to tree-dfa.h.
      	(array_ref_low_bound): Moved to tree-dfa.h.
      	(array_ref_up_bound): Moved to tree.h.
      	(assemble_alias): Moved to cgraph.h.
      	(bit_from_pos): Moved to stor-layout.h.
      	(build_addr): Moved to tree-nested.h.
      	(build_duplicate_type): Moved to tree-inline.h.
      	(build_fold_addr_expr): Moved to fold-const.h.
      	(build_fold_addr_expr_with_type): Moved to fold-const.h.
      	(build_fold_addr_expr_with_type_loc): Moved to fold-const.h.
      	(build_fold_indirect_ref): Moved to fold-const.h.
      	(build_fold_indirect_ref_loc): Moved to fold-const.h.
      	(build_personality_function): Moved to tree.h.
      	(build_range_check): Moved to fold-const.h.
      	(build_simple_mem_ref): Moved to fold-const.h.
      	(build_simple_mem_ref_loc): Moved to fold-const.h.
      	(build_tm_abort_call): Moved to trans-mem.h.
      	(byte_from_pos): Moved to stor-layout.h.
      	(call_expr_flags): Moved to calls.h.
      	(can_move_by_pieces): Moved to expr.h.
      	(categorize_ctor_elements): Moved to expr.h.
      	(change_decl_assembler_name): Moved to gcc-symtab.h.
      	(combine_comparisons): Moved to fold-const.h.
      	(complete_ctor_at_level_p): Moved to tree.h.
      	(component_ref_field_offset): Moved to tree-dfa.h.
      	(compute_builtin_object_size): Moved to tree-object-size.h.
      	(compute_record_mode): Moved to stor-layout.h.
      	(constant_boolean_node): Moved to fold-const.h.
      	(constructor_static_from_elts_p): Moved to varasm.h.
      	(cxx11_attribute_p): Moved to attribs.h.
      	(debug_body): Moved to print-tree.h.
      	(debug_find_tree): Moved to tree-inline.h.
      	(debug_fold_checksum): Moved to fold-const.h.
      	(debug_head): Moved to print-tree.h.
      	(debug_head): Moved to print-tree.h.
      	(debug_raw): Moved to print-tree.h.
      	(debug_tree): Moved to print-tree.h.
      	(debug_vec_tree): Moved to print-tree.h.
      	(debug_verbose): Moved to print-tree.h.
      	(debug_verbose): Moved to print-tree.h.
      	(decl_attributes): Moved to attribs.h.
      	(decl_binds_to_current_def_p): Moved to varasm.h.
      	(decl_default_tls_model): Moved to varasm.h.
      	(decl_replaceable_p): Moved to varasm.h.
      	(div_if_zero_remainder): Moved to fold-const.h.
      	(double_int mem_ref_offset): Moved to fold-const.h.
      	(dump_addr): Moved to print-tree.h.
      	(element_precision): Moved to machmode.h.
      	(expand_dummy_function_end): Moved to function.h.
      	(expand_function_end): Moved to function.h.
      	(expand_function_start): Moved to function.h.
      	(expand_label): Moved to stmt.h.
      	(expr_first): Moved to tree-iterator.h.
      	(expr_last): Moved to tree-iterator.h.
      	(finalize_size_functions): Moved to stor-layout.h.
      	(finish_builtin_struct): Moved to stor-layout.h.
      	(finish_record_layout): Moved to stor-layout.h.
      	(fixup_signed_type): Moved to stor-layout.h.
      	(fixup_unsigned_type): Moved to stor-layout.h.
      	(flags_from_decl_or_type): Moved to calls.h.
      	(fold): Moved to fold-const.h.
      	(fold_abs_const): Moved to fold-const.h.
      	(fold_binary): Moved to fold-const.h.
      	(fold_binary_loc): Moved to fold-const.h.
      	(fold_binary_to_constant): Moved to fold-const.h.
      	(fold_build1): Moved to fold-const.h.
      	(fold_build1_initializer_loc): Moved to fold-const.h.
      	(fold_build1_loc): Moved to fold-const.h.
      	(fold_build1_stat_loc): Moved to fold-const.h.
      	(fold_build2): Moved to fold-const.h.
      	(fold_build2_initializer_loc): Moved to fold-const.h.
      	(fold_build2_loc): Moved to fold-const.h.
      	(fold_build2_stat_loc): Moved to fold-const.h.
      	(fold_build3): Moved to fold-const.h.
      	(fold_build3_loc): Moved to fold-const.h.
      	(fold_build3_stat_loc): Moved to fold-const.h.
      	(fold_build_call_array): Moved to fold-const.h.
      	(fold_build_call_array_initializer): Moved to fold-const.h.
      	(fold_build_call_array_initializer_loc): Moved to fold-const.h.
      	(fold_build_call_array_loc): Moved to fold-const.h.
      	(fold_build_cleanup_point_expr): Moved to fold-const.h.
      	(fold_convert): Moved to fold-const.h.
      	(fold_convert_loc): Moved to fold-const.h.
      	(fold_convertible_p): Moved to fold-const.h.
      	(fold_defer_overflow_warnings): Moved to fold-const.h.
      	(fold_deferring_overflow_warnings_p): Moved to fold-const.h.
      	(fold_fma): Moved to fold-const.h.
      	(fold_ignored_result): Moved to fold-const.h.
      	(fold_indirect_ref): Moved to fold-const.h.
      	(fold_indirect_ref_1): Moved to fold-const.h.
      	(fold_indirect_ref_loc): Moved to fold-const.h.
      	(fold_read_from_constant_string): Moved to fold-const.h.
      	(fold_real_zero_addition_p): Moved to fold-const.h.
      	(fold_single_bit_test): Moved to fold-const.h.
      	(fold_strip_sign_ops): Moved to fold-const.h.
      	(fold_ternary): Moved to fold-const.h.
      	(fold_ternary_loc): Moved to fold-const.h.
      	(fold_unary): Moved to tree-data-ref.h.
      	(fold_unary_ignore_overflow): Moved to fold-const.h.
      	(fold_unary_ignore_overflow_loc): Moved to fold-const.h.
      	(fold_unary_loc): Moved to fold-const.h.
      	(fold_unary_to_constant): Moved to fold-const.h.
      	(fold_undefer_and_ignore_overflow_warnings): Moved to fold-const.h.
      	(fold_undefer_overflow_warnings): Moved to fold-const.h.
      	(folding_initializer): Moved to fold-const.h.
      	(free_temp_slots): Moved to function.h.
      	(generate_setjmp_warnings): Moved to function.h.
      	(get_attribute_name): Moved to attribs.h.
      	(get_identifier): Moved to stringpool.h.
      	(get_identifier_with_length): Moved to stringpool.h.
      	(get_inner_reference): Moved to tree.h.
      	(gimple_alloca_call_p): Moved to calls.h.
      	(gimplify_parameters): Moved to function.h.
      	(highest_pow2_factor): Moved to expr.h.
      	(indent_to): Moved to print-tree.h.
      	(init_attributes): Moved to attribs.h.
      	(init_dummy_function_start): Moved to function.h.
      	(init_function_start): Moved to function.h.
      	(init_inline_once): Moved to tree-inline.h.
      	(init_object_sizes): Moved to tree-object-size.h.
      	(init_temp_slots): Moved to function.h.
      	(init_tree_optimization_optabs): Moved to optabs.h.
      	(initialize_sizetypes): Moved to stor-layout.h.
      	(initializer_constant_valid_for_bitfield_p): Moved to varasm.h.
      	(initializer_constant_valid_p): Moved to varasm.h.
      	(int_const_binop): Moved to fold-const.h.
      	(internal_reference_types): Moved to stor-layout.h.
      	(invert_tree_comparison): Moved to fold-const.h.
      	(invert_truthvalue): Moved to fold-const.h.
      	(invert_truthvalue_loc): Moved to fold-const.h.
      	(is_tm_ending_fndecl): Moved to trans-mem.h.
      	(is_tm_may_cancel_outer): Moved to trans-mem.h.
      	(is_tm_pure): Moved to trans-mem.h.
      	(is_tm_safe): Moved to trans-mem.h.
      	(layout_decl): Moved to stor-layout.h.
      	(layout_type): Moved to stor-layout.h.
      	(lookup_attribute_spec): Moved to attribs.h.
      	(make_accum_type): Moved to stor-layout.h.
      	(make_decl_one_only): Moved to varasm.h.
      	(make_decl_rtl): Moved to tree.h.
      	(make_decl_rtl_for_debug): Moved to varasm.h.
      	(make_fract_type): Moved to stor-layout.h.
      	(make_or_reuse_sat_signed_accum_type): Moved to stor-layout.h.
      	(make_or_reuse_sat_signed_fract_type): Moved to stor-layout.h.
      	(make_or_reuse_sat_unsigned_accum_type): Moved to stor-layout.h.
      	(make_or_reuse_sat_unsigned_fract_type): Moved to stor-layout.h.
      	(make_or_reuse_signed_accum_type): Moved to stor-layout.h.
      	(make_or_reuse_signed_fract_type): Moved to stor-layout.h.
      	(make_or_reuse_unsigned_accum_type): Moved to stor-layout.h.
      	(make_or_reuse_unsigned_fract_type): Moved to stor-layout.h.
      	(make_range): Moved to fold-const.h.
      	(make_range_step): Moved to fold-const.h.
      	(make_sat_signed_accum_type): Moved to stor-layout.h.
      	(make_sat_signed_fract_type): Moved to stor-layout.h.
      	(make_sat_unsigned_accum_type): Moved to stor-layout.h.
      	(make_sat_unsigned_fract_type): Moved to stor-layout.h.
      	(make_signed_accum_type): Moved to stor-layout.h.
      	(make_signed_fract_type): Moved to stor-layout.h.
      	(make_signed_type): Moved to stor-layout.h.
      	(make_unsigned_accum_type): Moved to stor-layout.h.
      	(make_unsigned_fract_type): Moved to stor-layout.h.
      	(make_unsigned_type): Moved to stor-layout.h.
      	(mark_decl_referenced): Moved to varasm.h.
      	(mark_referenced): Moved to varasm.h.
      	(may_negate_without_overflow_p): Moved to fold-const.h.
      	(maybe_get_identifier): Moved to stringpool.h.
      	(merge_ranges): Moved to fold-const.h.
      	(merge_weak): Moved to varasm.h.
      	(mode_for_size_tree): Moved to stor-layout.h.
      	(multiple_of_p): Moved to fold-const.h.
      	(must_pass_in_stack_var_size): Moved to calls.h.
      	(must_pass_in_stack_var_size_or_pad): Moved to calls.h.
      	(native_encode_expr): Moved to fold-const.h.
      	(native_interpret_expr): Moved to fold-const.h.
      	(non_lvalue): Moved to fold-const.h.
      	(non_lvalue_loc): Moved to fold-const.h.
      	(normalize_offset): Moved to stor-layout.h.
      	(normalize_rli): Moved to stor-layout.h.
      	(notice_global_symbol): Moved to varasm.h.
      	(omit_one_operand): Moved to fold-const.h.
      	(omit_one_operand_loc): Moved to fold-const.h.
      	(omit_two_operands): Moved to fold-const.h.
      	(omit_two_operands_loc): Moved to fold-const.h.
      	(operand_equal_p): Moved to tree-data-ref.h.
      	(parse_input_constraint): Moved to stmt.h.
      	(parse_output_constraint): Moved to stmt.h.
      	(place_field): Moved to stor-layout.h.
      	(pop_function_context): Moved to function.h.
      	(pop_temp_slots): Moved to function.h.
      	(pos_from_bit): Moved to stor-layout.h.
      	(preserve_temp_slots): Moved to function.h.
      	(print_node): Moved to print-tree.h.
      	(print_node_brief): Moved to print-tree.h.
      	(print_rtl): Moved to rtl.h.
      	(process_pending_assemble_externals): Moved to varasm.h.
      	(ptr_difference_const): Moved to fold-const.h.
      	(push_function_context): Moved to function.h.
      	(push_struct_function): Moved to function.h.
      	(push_temp_slots): Moved to function.h.
      	(record_tm_replacement): Moved to trans-mem.h.
      	(relayout_decl): Moved to stor-layout.h.
      	(resolve_asm_operand_names): Moved to stmt.h.
      	(resolve_unique_section): Moved to varasm.h.
      	(rli_size_so_far): Moved to stor-layout.h.
      	(rli_size_unit_so_far): Moved to stor-layout.h.
      	(round_down): Moved to fold-const.h.
      	(round_down_loc): Moved to fold-const.h.
      	(round_up): Moved to fold-const.h.
      	(round_up_loc): Moved to fold-const.h.
      	(set_decl_incoming_rtl): Moved to emit-rtl.h.
      	(set_decl_rtl): Moved to tree.h.
      	(set_min_and_max_values_for_integral_type): Moved to stor-layout.h.
      	(set_user_assembler_name): Moved to varasm.h.
      	(setjmp_call_p): Moved to calls.h.
      	(size_binop): Moved to fold-const.h.
      	(size_binop_loc): Moved to fold-const.h.
      	(size_diffop): Moved to fold-const.h.
      	(size_diffop_loc): Moved to fold-const.h.
      	(size_int_kind): Moved to fold-const.h.
      	(stack_protect_epilogue): Moved to function.h.
      	(start_record_layout): Moved to stor-layout.h.
      	(supports_one_only): Moved to varasm.h.
      	(swap_tree_comparison): Moved to fold-const.h.
      	(tm_malloc_replacement): Moved to trans-mem.h.
      	(tree build_fold_addr_expr_loc): Moved to fold-const.h.
      	(tree build_invariant_address): Moved to fold-const.h.
      	(tree_binary_nonnegative_warnv_p): Moved to fold-const.h.
      	(tree_binary_nonzero_warnv_p): Moved to fold-const.h.
      	(tree_call_nonnegative_warnv_p): Moved to fold-const.h.
      	(tree_expr_nonnegative_p): Moved to fold-const.h.
      	(tree_expr_nonnegative_warnv_p): Moved to fold-const.h.
      	(tree_output_constant_def): Moved to varasm.h.
      	(tree_overlaps_hard_reg_set): Moved to stmt.h.
      	(tree_single_nonnegative_warnv_p): Moved to fold-const.h.
      	(tree_single_nonzero_warnv_p): Moved to fold-const.h.
      	(tree_swap_operands_p): Moved to fold-const.h.
      	(tree_unary_nonnegative_warnv_p): Moved to fold-const.h.
      	(tree_unary_nonzero_warnv_p): Moved to fold-const.h.
      	(update_alignment_for_field): Moved to stor-layout.h.
      	(use_register_for_decl): Moved to function.h.
      	(variable_size): Moved to rtl.h.
      	(vector_type_mode): Moved to stor-layout.h.
      	* cgraph.h: Corresponding changes.
      	* emit-rtl.h: Corresponding changes.
      	* expr.h: Corresponding changes.
      	* function.h: Corresponding changes.
      	* optabs.h: Corresponding changes.
      	* trans-mem.h: Corresponding changes.
      	Protect against multiple inclusion.
      	* tree-inline.h: Corresponding changes.
      	* tree-iterator.h: Corresponding changes.
      	* tree-dfa.h: Include expr.h.
      	* tree-ssanames.h: Include stringpool.h.
      	* attribs.h: New file.
      	* calls.h: New file.
      	* fold-const.h: New file.
      	* gcc-symtab.h: New file.
      	* print-rtl.h: New file.
      	* print-tree.h: New file.
      	* stmt.h: New file.
      	* stor-layout.h: New file.
      	* strinpool.h: New file.
      	* tree-nested.h: New file
      	* tree-object-size.h: New file.
      	* varasm.h: New file.
      	* Makefile.in (PLUGIN_HEADERS): Add stringpool.h.
      
      	* alias.c: Include varasm.h.
      	Include expr.h.
      	* asan.c: Include calls.h.
      	Include stor-layout.h.
      	Include varasm.h.
      	* attribs.c: Include stringpool.h.
      	Include attribs.h.
      	Include stor-layout.h.
      	* builtins.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include calls.h.
      	Include varasm.h.
      	Include tree-object-size.h.
      	* calls.c: Include stor-layout.h.
      	Include varasm.h.
      	Include stringpool.h.
      	Include attribs.h.
      	* cfgexpand.c: Include stringpool.h.
      	Include varasm.h.
      	Include stor-layout.h.
      	Include stmt.h.
      	Include print-tree.h.
      	* cgraph.c: Include varasm.h.
      	Include calls.h.
      	Include print-tree.h.
      	* cgraphclones.c: Include stringpool.h.
      	Include function.h.
      	Include emit-rtl.h.
      	Move inclusion of rtl.h earlier in the file.
      	* cgraphunit.c: Include varasm.h.
      	Include stor-layout.h.
      	Include stringpool.h.
      	* cilk-common.c: Include stringpool.h.
      	Include stor-layout.h.
      	* combine.c: Include stor-layout.h.
      	* config/aarch64/aarch64-builtins.c: Include stor-layout.h.
      	Include stringpool.h.
      	Include calls.h.
      	* config/aarch64/aarch64.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include calls.h.
      	Include varasm.h.
      	* config/alpha/alpha.c: Include stor-layout.h.
      	Include calls.h.
      	Include varasm.h.
      	* config/arc/arc.c: Include varasm.h.
      	Include stor-layout.h.
      	Include stringpool.h.
      	Include calls.h.
      	* config/arm/arm.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include calls.h.
      	Include varasm.h.
      	* config/avr/avr-c.c: Include stor-layout.h.
      	* config/avr/avr-log.c: Include print-tree.h.
      	* config/avr/avr.c: Include print-tree.h.
      	Include calls.h.
      	Include stor-layout.h.
      	Include stringpool.h.
      	* config/bfin/bfin.c: Include varasm.h.
      	Include calls.h.
      	* config/c6x/c6x.c: Include stor-layout.h.
      	Include varasm.h.
      	Include calls.h.
      	Include stringpool.h.
      	* config/cr16/cr16.c: Include stor-layout.h.
      	Include calls.h.
      	* config/cris/cris.c: Include varasm.h.
      	Include stor-layout.h.
      	Include calls.h.
      	Include stmt.h.
      	* config/darwin.c: Include stringpool.h.
      	Include varasm.h.
      	Include stor-layout.h.
      	* config/epiphany/epiphany.c: Include stor-layout.h.
      	Include varasm.h.
      	Include calls.h.
      	Include stringpool.h.
      	* config/fr30/fr30.c: Include stor-layout.h.
      	Include varasm.h.
      	* config/frv/frv.c: Include varasm.h.
      	Include stor-layout.h.
      	Include stringpool.h.
      	* config/h8300/h8300.c: Include stor-layout.h.
      	Include varasm.h.
      	Include calls.h.
      	Include stringpool.h.
      	* config/i386/i386.c: Include stringpool.h.
      	Include attribs.h.
      	Include calls.h.
      	Include stor-layout.h.
      	Include varasm.h.
      	* config/i386/winnt-cxx.c: Include stringpool.h.
      	Include attribs.h.
      	* config/i386/winnt.c: Include stringpool.h.
      	Include varasm.h.
      	* config/ia64/ia64-c.c: Include stringpool.h.
      	* config/ia64/ia64.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include calls.h.
      	Include varasm.h.
      	* config/iq2000/iq2000.c: Include stor-layout.h.
      	Include calls.h.
      	Include varasm.h.
      	* config/lm32/lm32.c: Include calls.h.
      	* config/m32c/m32c.c: Include stor-layout.h.
      	Include varasm.h.
      	Include calls.h.
      	* config/m32r/m32r.c: Include stor-layout.h.
      	Include varasm.h.
      	Include stringpool.h.
      	Include calls.h.
      	* config/m68k/m68k.c: Include calls.h.
      	Include stor-layout.h.
      	Include varasm.h.
      	* config/mcore/mcore.c: Include stor-layout.h.
      	Include varasm.h.
      	Include stringpool.h.
      	Include calls.h.
      	* config/mep/mep.c: Include varasm.h.
      	Include calls.h.
      	Include stringpool.h.
      	Include stor-layout.h.
      	* config/microblaze/microblaze.c: Include varasm.h.
      	Include stor-layout.h.
      	Include calls.h.
      	* config/mips/mips.c: Include varasm.h.
      	Include stringpool.h.
      	Include stor-layout.h.
      	Include calls.h.
      	* config/mmix/mmix.c: Include varasm.h.
      	Include stor-layout.h.
      	Include calls.h.
      	* config/mn10300/mn10300.c: Include stor-layout.h.
      	Include varasm.h.
      	Include calls.h.
      	* config/moxie/moxie.c: Include stor-layout.h.
      	Include varasm.h.
      	Include calls.h.
      	* config/msp430/msp430.c: Include stor-layout.h.
      	Include calls.h.
      	* config/nds32/nds32.c: Include stor-layout.h.
      	Include varasm.h.
      	Include calls.h.
      	* config/pa/pa.c: Include stor-layout.h.
      	Include stringpool.h.
      	Include varasm.h.
      	Include calls.h.
      	* config/pdp11/pdp11.c: Include stor-layout.h.
      	Include varasm.h.
      	Include calls.h.
      	* config/picochip/picochip.c: Include calls.h.
      	Include stor-layout.h.
      	Include stringpool.h.
      	Include varasm.h.
      	* config/rl78/rl78.c: Include varasm.h.
      	Include stor-layout.h.
      	Include calls.h.
      	* config/rs6000/rs6000-c.c: Include stor-layout.h.
      	Include stringpool.h.
      	* config/rs6000/rs6000.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include calls.h.
      	Include print-tree.h.
      	Include varasm.h.
      	* config/rx/rx.c: Include varasm.h.
      	Include stor-layout.h.
      	Include calls.h.
      	* config/s390/s390.c: Include print-tree.h.
      	Include stringpool.h.
      	Include stor-layout.h.
      	Include varasm.h.
      	Include calls.h.
      	* config/score/score.c: Include stringpool.h.
      	Include calls.h.
      	Include varasm.h.
      	Include stor-layout.h.
      	* config/sh/sh-c.c: Include stringpool.h.
      	Include attribs.h.h.
      	* config/sh/sh.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include calls.h.
      	Include varasm.h.
      	* config/sol2-c.c: Include stringpool.h.
      	Include attribs.h.
      	* config/sol2-cxx.c: Include stringpool.h.
      	* config/sol2.c: Include stringpool.h.
      	Include varasm.h.
      	* config/sparc/sparc.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include calls.h.
      	Include varasm.h.
      	* config/spu/spu-c.c: Include stringpool.h.
      	* config/spu/spu.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include calls.h.
      	Include varasm.h.
      	* config/stormy16/stormy16.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include varasm.h.
      	Include calls.h.
      	* config/tilegx/tilegx.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include varasm.h.
      	Include calls.h.
      	* config/tilepro/tilepro.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include varasm.h.
      	Include calls.h.
      	* config/v850/v850-c.c: Include stringpool.h.
      	Include attribs.h.
      	* config/v850/v850.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include varasm.h.
      	Include calls.h.
      	* config/vax/vax.c: Include calls.h.
      	Include varasm.h.
      	* config/vms/vms.c: Include stringpool.h.
      	* config/vxworks.c: Include stringpool.h.
      	* config/xtensa/xtensa.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include calls.h.
      	Include varasm.h.
      	* convert.c: Include stor-layout.h.
      	* coverage.c: Include stringpool.h.
      	Include stor-layout.h.
      	* dbxout.c: Include varasm.h.
      	Include stor-layout.h.
      	* dojump.c: Include stor-layout.h.
      	* dse.c: Include stor-layout.h.
      	* dwarf2asm.c: Include stringpool.h.
      	Include varasm.h.
      	* dwarf2cfi.c: Include stor-layout.h.
      	* dwarf2out.c: Include rtl.h.
      	Include stringpool.h.
      	Include stor-layout.h.
      	Include varasm.h.
      	Include function.h.
      	Include emit-rtl.h.
      	Move inclusion of rtl.h earlier in the file.
      	* emit-rtl.c: Include varasm.h.
      	* except.c: Include stringpool.h.
      	Include stor-layout.h.
      	* explow.c: Include stor-layout.h.
      	* expmed.c: Include stor-layout.h.
      	* expr.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include attribs.h.
      	Include varasm.h.
      	* final.c: Include varasm.h.
      	* fold-const.c: Include stor-layout.h.
      	Include calls.h.
      	Include tree-iterator.h.
      	* function.c: Include stor-layout.h.
      	Include varasm.h.
      	Include stringpool.h.
      	* genattrtab.c (write_header): Emit includes for varasm.h,
      	stor-layout.h and calls.h.
      	* genautomata.c (main): Likewise.
      	* genemit.c: Likewise.
      	* genopinit.c: Likewise.
      	* genoutput.c (output_prologue): Likewise.
      	* genpeep.c: Likewise.
      	* genpreds.c (write_insn_preds_c): Likewise.
      	* gengtype.c (open_base_files): Add stringpool.h.
      	* gimple-expr.c: Include stringpool.h.
      	Include stor-layout.h.
      	* gimple-fold.c: Include stringpool.h.
      	Include expr.h.
      	Include stmt.h.
      	Include stor-layout.h.
      	* gimple-low.c: Include tree-nested.h.
      	Include calls.h.
      	* gimple-pretty-print.c: Include stringpool.h.
      	* gimple-ssa-strength-reduction.c: Include stor-layout.h.
      	Include expr.h.
      	* gimple-walk.c: Include stmt.h.
      	* gimple.c: Include calls.h.
      	Include stmt.h.
      	Include stor-layout.h.
      	* gimplify.c: Include stringpool.h.
      	Include calls.h.
      	Include varasm.h.
      	Include stor-layout.h.
      	Include stmt.h.
      	Include print-tree.h.
      	Include expr.h.
      	* gimplify-me.c: Include stmt.h
      	Include stor-layout.h
      	* internal-fn.c: Include stor-layout.h.
      	* ipa-devirt.c: Include print-tree.h.
      	Include calls.h.
      	* ipa-inline-analysis.c: Include stor-layout.h.
      	Include stringpool.h.
      	Include print-tree.h.
      	* ipa-inline.c: Include trans-mem.h.
      	Include calls.h.
      	* ipa-prop.c: Include expr.h.
      	Include stor-layout.h.
      	Include print-tree.h.
      	* ipa-pure-const.c: Include print-tree.h.
      	Include calls.h.
      	* ipa-reference.c: Include calls.h.
      	* ipa-split.c: Include stringpool.h.
      	Include expr.h.
      	Include calls.h.
      	* ipa.c: Include calls.h.
      	Include stringpool.h.
      	* langhooks.c: Include stringpool.h.
      	Include attribs.h.
      	* lto-cgraph.c: Include stringpool.h.
      	* lto-streamer-in.c: Include stringpool.h.
      	* lto-streamer-out.c: Include stor-layout.h.
      	Include stringpool.h.
      	* omp-low.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include expr.h.
      	* optabs.c: Include stor-layout.h.
      	Include stringpool.h.
      	Include varasm.h.
      	* passes.c: Include varasm.h.
      	* predict.c: Include calls.h.
      	* print-rtl.c: Include print-tree.h.
      	* print-tree.c: Include varasm.h.
      	Include print-rtl.h.
      	Include stor-layout.h.
      	* realmpfr.c: Include stor-layout.h.
      	* reg-stack.c: Include varasm.h.
      	* sdbout.c: Include varasm.h.
      	Include stor-layout.h.
      	* simplify-rtx.c: Include varasm.h.
      	* stmt.c: Include varasm.h.
      	Include stor-layout.h.
      	* stor-layout.c: Include stor-layout.h.
      	Include stringpool.h.
      	Include varasm.h.
      	Include print-tree.h.
      	* symtab.c: Include rtl.h.
      	Include print-tree.h.
      	Include varasm.h.
      	Include function.h.
      	Include emit-rtl.h.
      	* targhooks.c: Include stor-layout.h.
      	Include varasm.h.
      	* toplev.c: Include varasm.h.
      	Include tree-inline.h.
      	* trans-mem.c: Include calls.h.
      	Include function.h.
      	Include rtl.h.
      	Include emit-rtl.h.
      	* tree-affine.c: Include expr.h.
      	* tree-browser.c: Include print-tree.h.
      	* tree-call-cdce.c: Include stor-layout.h.
      	* tree-cfg.c: Include trans-mem.h.
      	Include stor-layout.h.
      	Include print-tree.h.
      	* tree-complex.c: Include stor-layout.h.
      	* tree-data-ref.c: Include expr.h.
      	* tree-dfa.c: Include stor-layout.h.
      	* tree-eh.c: Include expr.h.
      	Include calls.h.
      	* tree-emutls.c: Include stor-layout.h.
      	Include varasm.h.
      	* tree-if-conv.c: Include stor-layout.h.
      	* tree-inline.c: Include stor-layout.h.
      	Include calls.h.
      	* tree-loop-distribution.c: Include stor-layout.h.
      	* tree-nested.c: Include stringpool.h.
      	Include stor-layout.h.
      	* tree-object-size.c: Include tree-object-size.h.
      	* tree-outof-ssa.c: Include stor-layout.h.
      	* tree-parloops.c: Include stor-layout.h.
      	Include tree-nested.h.
      	* tree-pretty-print.c: Include stor-layout.h.
      	Include expr.h.
      	* tree-profile.c: Include varasm.h.
      	Include tree-nested.h.
      	* tree-scalar-evolution.c: Include expr.h.
      	* tree-sra.c: Include stor-layout.h.
      	* tree-ssa-address.c: Include stor-layout.h.
      	* tree-ssa-ccp.c: Include stor-layout.h.
      	* tree-ssa-dce.c: Include calls.h.
      	* tree-ssa-dom.c: Include stor-layout.h.
      	* tree-ssa-forwprop.c: Include stor-layout.h.
      	* tree-ssa-ifcombine.c: Include stor-layout.h.
      	* tree-ssa-loop-ivopts.c: Include stor-layout.h.
      	* tree-ssa-loop-niter.c: Include calls.h.
      	Include expr.h.
      	* tree-ssa-loop-prefetch.c: Include stor-layout.h.
      	* tree-ssa-math-opts.c: Include stor-layout.h.
      	* tree-ssa-operands.c: Include stmt.h.
      	Include print-tree.h.
      	* tree-ssa-phiopt.c: Include stor-layout.h.
      	* tree-ssa-reassoc.c: Include stor-layout.h.
      	* tree-ssa-sccvn.c: Include stor-layout.h.
      	* tree-ssa-sink.c: Include stor-layout.h.
      	* tree-ssa-strlen.c: Include stor-layout.h.
      	* tree-ssa-structalias.c: Include stor-layout.h.
      	Include stmt.h.
      	* tree-ssa-tail-merge.c: Include stor-layout.h.
      	Include trans-mem.h.
      	* tree-ssa-uncprop.c: Include stor-layout.h.
      	* tree-ssa.c: Include stor-layout.h.
      	* tree-ssanames.c: Include stor-layout.h.
      	* tree-streamer-in.c: Include stringpool.h.
      	* tree-streamer-out.c: Include stor-layout.h.
      	* tree-switch-conversion.c: Include varasm.h.
      	Include stor-layout.h.
      	* tree-tailcall.c: Include stor-layout.h.
      	* tree-vect-data-refs.c: Include stor-layout.h.
      	* tree-vect-generic.c: Include stor-layout.h.
      	* tree-vect-loop.c: Include stor-layout.h.
      	* tree-vect-patterns.c: Include stor-layout.h.
      	* tree-vect-slp.c: Include stor-layout.h.
      	* tree-vect-stmts.c: Include stor-layout.h.
      	* tree-vectorizer.c: Include stor-layout.h.
      	* tree-vrp.c: Include stor-layout.h.
      	Include calls.h.
      	* tree.c: Include stor-layout.h.
      	Include calls.h.
      	Include attribs.h.
      	Include varasm.h.
      	* tsan.c: Include expr.h.
      	* ubsan.c: Include stor-layout.h.
      	Include stringpool.h.
      	* value-prof.c: Include tree-nested.h.
      	Include calls.h.
      	* var-tracking.c: Include varasm.h.
      	Include stor-layout.h.
      	* varasm.c: Include stor-layout.h.
      	Include stringpool.h.
      	Include gcc-symtab.h.
      	Include varasm.h.
      	* varpool.c: Include varasm.h.
      	* vmsdbgout.c: Include varasm.h.
      	* xcoffout.c: Include varasm.h.
      
      ada/ChangeLog
      
      	* gcc-interface/decl.c: Include stringpool.h
      	Include stor-layout.h
      	* gcc-interface/misc.c: Include stor-layout.h
      	Include print-tree.h
      	* gcc-interface/trans.c: Include stringpool.h
      	Include stor-layout.h
      	Include stmt.h
      	Include varasm.h
      	* gcc-interface/utils.c: Include stringpool.h
      	Include stor-layout.h
      	Include attribs.h
      	Include varasm.h
      	* gcc-interface/utils2.c: Include stringpool.h
      	Include stor-layout.h
      	Include attribs.h
      	Include varasm.h
      
      c-family/ChangeLog
      
      	* c-common.c: Include fold-const.h.
      	Include stor-layout.h.
      	Include calls.h.
      	Include stringpool.h.
      	Include attribs.h.
      	Include varasm.h.
      	Include trans-mem.h.
      	* c-cppbuiltin.c: Include stor-layout.h.
      	Include stringpool.h.
      	* c-format.c: Include stringpool.h.
      	* c-lex.c: Include stringpool.h.
      	Include stor-layout.h.
      	* c-pragma.c: Include stringpool.h.
      	Include attribs.h.
      	Include varasm.h.
      	Include gcc-symtab.h.
      	* c-pretty-print.c: Include stor-layout.h.
      	Include attribs.h.
      	* cilk.c: Include stringpool.h.
      	Include calls.h.
      
      c/ChangeLog
      
      	* c-decl.c: Include print-tree.h.
      	Include stor-layout.h.
      	Include varasm.h.
      	Include attribs.h.
      	Include stringpool.h.
      	* c-lang.c: Include fold-const.h.
      	* c-parser.c: Include stringpool.h.
      	Include attribs.h.
      	Include stor-layout.h.
      	Include varasm.h.
      	Include trans-mem.h.
      	* c-typeck.c: Include stor-layout.h.
      	Include trans-mem.h.
      	Include varasm.h.
      	Include stmt.h.
      
      cp/ChangeLog
      
      	* call.c: Include stor-layout.h.
      	Include trans-mem.h.
      	Include stringpool.h.
      	* class.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include attribs.h.
      	* cp-gimplify.c: Include stor-layout.h.
      	* cvt.c: Include stor-layout.h.
      	* decl.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include varasm.h.
      	Include attribs.h.
      	Include calls.h.
      	* decl2.c: Include stringpool.h.
      	Include varasm.h.
      	Include attribs.h.
      	Include stor-layout.h.
      	Include calls.h.
      	* error.c: Include stringpool.h.
      	* except.c: Include stringpool.h.
      	Include trans-mem.h.
      	Include attribs.h.
      	* init.c: Include stringpool.h.
      	Include varasm.h.
      	* lambda.c: Include stringpool.h.
      	* lex.c: Include stringpool.h.
      	* mangle.c: Include stor-layout.h.
      	Include stringpool.h.
      	* method.c: Include stringpool.h.
      	Include varasm.h.
      	* name-lookup.c: Include stringpool.h.
      	Include print-tree.h.
      	Include attribs.h.
      	* optimize.c: Include stringpool.h.
      	* parser.c: Include print-tree.h.
      	Include stringpool.h.
      	Include attribs.h.
      	Include trans-mem.h.
      	* pt.c: Include stringpool.h.
      	Include varasm.h.
      	Include attribs.h.
      	Include stor-layout.h.
      	* ptree.c: Include print-tree.h.
      	* repo.c: Include stringpool.h.
      	* rtti.c: Include stringpool.h.
      	Include stor-layout.h.
      	* semantics.c: Include stmt.h.
      	Include varasm.h.
      	Include stor-layout.h.
      	Include stringpool.h.
      	* tree.c: Include stor-layout.h.
      	Include print-tree.h.
      	Include tree-iterator.h.
      	* typeck.c: Include stor-layout.h.
      	Include varasm.h.
      	* typeck2.c: Include stor-layout.h.
      	Include varasm.h.
      	* vtable-class-hierarchy.c: Include stringpool.h.
      	Include stor-layout.h.
      
      fortran/ChangeLog
      
      	* decl.c: Include stringpool.h.
      	* iresolve.c: Include stringpool.h.
      	* match.c: Include stringpool.h.
      	* module.c: Include stringpool.h.
      	* target-memory.c: Include stor-layout.h.
      	* trans-common.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include varasm.h.
      	* trans-const.c: Include stor-layout.h.
      	* trans-decl.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include varasm.h.
      	Include attribs.h.
      	* trans-expr.c: Include stringpool.h.
      	* trans-intrinsic.c: Include stringpool.h.
      	Include tree-nested.h.
      	Include stor-layout.h.
      	* trans-io.c: Include stringpool.h.
      	Include stor-layout.h.
      	* trans-openmp.c: Include stringpool.h.
      	* trans-stmt.c: Include stringpool.h.
      	* trans-types.c: Include stor-layout.h.
      	Include stringpool.h.
      	* trans.c: Include stringpool.h.
      
      go/ChangeLog
      
      	* go-backend.c: Include stor-layout.h.
      	* go-gcc.cc: Include stringpool.h.
      	Include stor-layout.h.
      	Include varasm.h.
      	* go-lang.c: Include stor-layout.h.
      
      java/ChangeLog
      
      	* builtins.c: Include stor-layout.h.
      	Include stringpool.h.
      	* class.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include varasm.h.
      	* constants.c: Include stringpool.h.
      	Include stor-layout.h.
      	* decl.c: Include stor-layout.h.
      	Include stringpool.h.
      	Include varasm.h.
      	* except.c: Include stringpool.h.
      	Include stor-layout.h.
      	* expr.c: Include stringpool.h.
      	Include stor-layout.h.
      	* jcf-parse.c: Include stringpool.h.
      	* mangle.c: Include stringpool.h.
      	* resource.c: Include stringpool.h.
      	Include stor-layout.h.
      	* typeck.c: Include stor-layout.h.
      	Include stringpool.h.
      	* verify-glue.c: Include stringpool.h.
      
      lto/ChangeLog
      	* lto-lang.c: Include stringpool.h.
      	Include stor-layout.h.
      	* lto-partition.c: Include gcc-symtab.h.
      	* lto.c: Include stor-layout.h.
      
      objc/ChangeLog
      	* objc-act.c: Include stringpool.h.
      	Include stor-layout.h.
      	Include attribs.h.
      	* objc-encoding.c: Include stringpool.h.
      	Include stor-layout.h.
      	* objc-gnu-runtime-abi-01.c: Include stringpool.h.
      	* objc-next-runtime-abi-01.c:
      	Include stringpool.h.
      	* objc-next-runtime-abi-02.c: Include stringpool.h.
      	* objc-runtime-shared-support.c: Include stringpool.h.
      
      testsuite/ChangeLog
      
      	* gcc.dg/plugin/selfassign.c: Include stringpool.h.
      	* gcc.dg/plugin/start_unit_plugin.c: Likewise.
      
      From-SVN: r205023
      Diego Novillo committed
  12. 18 Nov, 2013 2 commits
    • decl.c, [...]: Replace tree_low_cst (..., 1) with tree_to_uhwi throughout. · ae7e9ddd
      gcc/ada/
      	* gcc-interface/decl.c, gcc-interface/utils.c, gcc-interface/utils2.c:
      	Replace tree_low_cst (..., 1) with tree_to_uhwi throughout.
      
      gcc/c-family/
      	* c-common.c, c-cppbuiltin.c: Replace tree_low_cst (..., 1) with
      	tree_to_uhwi throughout.
      
      gcc/c/
      	* c-decl.c, c-typeck.c: Replace tree_low_cst (..., 1) with
      	tree_to_uhwi throughout.
      
      gcc/cp/
      	* call.c, class.c, decl.c, error.c: Replace tree_low_cst (..., 1) with
      	tree_to_uhwi throughout.
      
      gcc/objc/
      	* objc-encoding.c: Replace tree_low_cst (..., 1) with tree_to_uhwi
      	throughout.
      
      gcc/
      	* alias.c, asan.c, builtins.c, cfgexpand.c, cgraph.c,
      	config/aarch64/aarch64.c, config/alpha/predicates.md,
      	config/arm/arm.c, config/darwin.c, config/epiphany/epiphany.c,
      	config/i386/i386.c, config/iq2000/iq2000.c, config/m32c/m32c-pragma.c,
      	config/mep/mep-pragma.c, config/mips/mips.c,
      	config/picochip/picochip.c, config/rs6000/rs6000.c, cppbuiltin.c,
      	dbxout.c, dwarf2out.c, emit-rtl.c, except.c, expr.c, fold-const.c,
      	function.c, gimple-fold.c, godump.c, ipa-cp.c, ipa-prop.c, omp-low.c,
      	predict.c, sdbout.c, stor-layout.c, trans-mem.c, tree-object-size.c,
      	tree-sra.c, tree-ssa-ccp.c, tree-ssa-forwprop.c,
      	tree-ssa-loop-ivcanon.c, tree-ssa-loop-ivopts.c, tree-ssa-loop-niter.c,
      	tree-ssa-loop-prefetch.c, tree-ssa-strlen.c, tree-stdarg.c,
      	tree-switch-conversion.c, tree-vect-generic.c, tree-vect-loop.c,
      	tree-vect-patterns.c, tree-vrp.c, tree.c, tsan.c, ubsan.c, varasm.c:
      	Replace tree_low_cst (..., 1) with tree_to_uhwi throughout.
      
      From-SVN: r204961
      Richard Sandiford committed
    • decl.c, [...]: Replace host_integerp (..., 1) with tree_fits_uhwi_p throughout. · cc269bb6
      gcc/ada/
      	* gcc-interface/decl.c, gcc-interface/misc.c, gcc-interface/utils.c:
      	Replace host_integerp (..., 1) with tree_fits_uhwi_p throughout.
      
      gcc/c-family/
      	* c-ada-spec.c, c-common.c, c-pretty-print.c: Replace
      	host_integerp (..., 1) with tree_fits_uhwi_p throughout.
      
      gcc/cp/
      	* decl.c: Replace host_integerp (..., 1) with tree_fits_uhwi_p
      	throughout.
      
      gcc/
      	* builtins.c, config/alpha/alpha.c, config/iq2000/iq2000.c,
      	config/mips/mips.c, dbxout.c, dwarf2out.c, expr.c, fold-const.c,
      	gimple-fold.c, godump.c, omp-low.c, predict.c, sdbout.c, stor-layout.c,
      	tree-dfa.c, tree-sra.c, tree-ssa-forwprop.c, tree-ssa-loop-prefetch.c,
      	tree-ssa-phiopt.c, tree-ssa-sccvn.c, tree-ssa-strlen.c,
      	tree-ssa-structalias.c, tree-vect-data-refs.c, tree-vect-patterns.c,
      	tree.c, varasm.c, alias.c, cfgexpand.c, config/aarch64/aarch64.c,
      	config/arm/arm.c, config/epiphany/epiphany.c, config/i386/i386.c,
      	config/m32c/m32c-pragma.c, config/mep/mep-pragma.c,
      	config/rs6000/rs6000.c, config/sparc/sparc.c, emit-rtl.c, function.c,
      	gimplify.c, ipa-prop.c, stmt.c, trans-mem.c, tree-cfg.c,
      	tree-object-size.c, tree-ssa-ccp.c, tree-ssa-loop-ivcanon.c,
      	tree-stdarg.c, tree-switch-conversion.c, tree-vect-generic.c,
      	tree-vrp.c, tsan.c, ubsan.c: Replace host_integerp (..., 1) with
      	tree_fits_uhwi_p throughout.
      
      From-SVN: r204956
      Richard Sandiford committed
  13. 13 Nov, 2013 1 commit
    • gimple-walk.h: New File. · 5be5c238
      	* gimple-walk.h: New File.  Relocate prototypes from gimple.h.
      	(struct walk_stmt_info):  Relocate here from gimple.h.
      	* gimple-iterator.h: New File.  Relocate prototypes from gimple.h.
      	(struct gimple_stmt_iterator_d): Relocate here from gimple.h.
      	(gsi_start_1, gsi_none, gsi_start_bb, gsi_last_1, gsi_last_bb,
      	gsi_end_p, gsi_one_before_end_p, gsi_next, gsi_prev, gsi_stmt,
      	gsi_after_labels, gsi_next_nondebug, gsi_prev_nondebug,
      	gsi_start_nondebug_bb, gsi_start_nondebug_after_labels_bb,
      	gsi_last_nondebug_bb, gsi_bb, gsi_seq): Relocate here from gimple.h.
      	* gimple.h (struct gimple_stmt_iterator_d): Move to gimple-iterator.h.
      	(gsi_start_1, gsi_none, gsi_start_bb, gsi_last_1, gsi_last_bb,
      	gsi_end_p, gsi_one_before_end_p, gsi_next, gsi_prev, gsi_stmt,
      	gsi_after_labels, gsi_next_nondebug, gsi_prev_nondebug,
      	gsi_start_nondebug_bb, gsi_start_nondebug_after_labels_bb,
      	gsi_last_nondebug_bb, gsi_bb, gsi_seq): Move to gimple-iterator.h.
      	(struct walk_stmt_info): Move to gimple-walk.h.
      	(gimple_seq_set_location): Move to gimple.c
      	* gimple-walk.c: New File.
      	(walk_gimple_seq_mod, walk_gimple_seq, walk_gimple_asm, walk_gimple_op,
      	walk_gimple_stmt, get_base_loadstore, walk_stmt_load_store_addr_ops,
      	walk_stmt_load_store_ops): Relocate here from gimple.c.
      	* gimple-iterator.c: Include gimple-iterator.h.
      	* gimple.c (walk_gimple_seq_mod, walk_gimple_seq, walk_gimple_asm,
      	walk_gimple_op, walk_gimple_stmt, get_base_loadstore,
      	walk_stmt_load_store_addr_ops, walk_stmt_load_store_ops): Move to
      	gimple-walk.c.
      	(gimple_seq_set_location): Relocate from gimple.h.
      	* tree-phinodes.h (set_phi_nodes): Move to tree-phinodes.c.
      	* tree-phinodes.c (set_phi_nodes): Relocate from tree-phinodes.h.
      	* gengtype.c (open_base_files): Add gimple-iterator.h to include list.
      	* Makefile.in (OBJS): Add gimple-walk.o
      
      	* asan.c: Update Include list as required for gimple-iterator.h and
      	gimple-walk.h.
      	* cfgexpand.c: Likewise.
      	* cfgloop.c: Likewise.
      	* cfgloopmanip.c: Likewise.
      	* cgraph.c: Likewise.
      	* cgraphbuild.c: Likewise.
      	* cgraphunit.c: Likewise.
      	* gimple-fold.c: Likewise.
      	* gimple-low.c: Likewise.
      	* gimple-pretty-print.c: Likewise.
      	* gimple-ssa-isolate-paths.c: Likewise.
      	* gimple-ssa-strength-reduction.c: Likewise.
      	* gimple-streamer-in.c: Likewise.
      	* gimple-streamer-out.c: Likewise.
      	* gimplify.c: Likewise.
      	* graphite-blocking.c: Likewise.
      	* graphite-clast-to-gimple.c: Likewise.
      	* graphite-dependences.c: Likewise.
      	* graphite-interchange.c: Likewise.
      	* graphite-optimize-isl.c: Likewise.
      	* graphite-poly.c: Likewise.
      	* graphite-scop-detection.c: Likewise.
      	* graphite-sese-to-poly.c: Likewise.
      	* graphite.c: Likewise.
      	* ipa-inline-analysis.c: Likewise.
      	* ipa-profile.c: Likewise.
      	* ipa-prop.c: Likewise.
      	* ipa-pure-const.c: Likewise.
      	* ipa-split.c: Likewise.
      	* lto-streamer-in.c: Likewise.
      	* lto-streamer-out.c: Likewise.
      	* omp-low.c: Likewise.
      	* predict.c: Likewise.
      	* profile.c: Likewise.
      	* sese.c: Likewise.
      	* tracer.c: Likewise.
      	* trans-mem.c: Likewise.
      	* tree-call-cdce.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-complex.c: Likewise.
      	* tree-data-ref.c: Likewise.
      	* tree-dfa.c: Likewise.
      	* tree-eh.c: Likewise.
      	* tree-emutls.c: Likewise.
      	* tree-if-conv.c: Likewise.
      	* tree-inline.c: Likewise.
      	* tree-into-ssa.c: Likewise.
      	* tree-loop-distribution.c: Likewise.
      	* tree-nested.c: Likewise.
      	* tree-nrv.c: Likewise.
      	* tree-object-size.c: Likewise.
      	* tree-outof-ssa.c: Likewise.
      	* tree-parloops.c: Likewise.
      	* tree-predcom.c: Likewise.
      	* tree-profile.c: Likewise.
      	* tree-scalar-evolution.c: Likewise.
      	* tree-sra.c: Likewise.
      	* tree-ssa-ccp.c: Likewise.
      	* tree-ssa-coalesce.c: Likewise.
      	* tree-ssa-copy.c: Likewise.
      	* tree-ssa-copyrename.c: Likewise.
      	* tree-ssa-dce.c: Likewise.
      	* tree-ssa-dom.c: Likewise.
      	* tree-ssa-dse.c: Likewise.
      	* tree-ssa-forwprop.c: Likewise.
      	* tree-ssa-ifcombine.c: Likewise.
      	* tree-ssa-live.c: Likewise.
      	* tree-ssa-loop-ch.c: Likewise.
      	* tree-ssa-loop-im.c: Likewise.
      	* tree-ssa-loop-ivcanon.c: Likewise.
      	* tree-ssa-loop-ivopts.c: Likewise.
      	* tree-ssa-loop-manip.c: Likewise.
      	* tree-ssa-loop-niter.c: Likewise.
      	* tree-ssa-loop-prefetch.c: Likewise.
      	* tree-ssa-loop.c: Likewise.
      	* tree-ssa-math-opts.c: Likewise.
      	* tree-ssa-phiopt.c: Likewise.
      	* tree-ssa-phiprop.c: Likewise.
      	* tree-ssa-pre.c: Likewise.
      	* tree-ssa-propagate.c: Likewise.
      	* tree-ssa-reassoc.c: Likewise.
      	* tree-ssa-sink.c: Likewise.
      	* tree-ssa-strlen.c: Likewise.
      	* tree-ssa-structalias.c: Likewise.
      	* tree-ssa-tail-merge.c: Likewise.
      	* tree-ssa-ter.c: Likewise.
      	* tree-ssa-threadedge.c: Likewise.
      	* tree-ssa-threadupdate.c: Likewise.
      	* tree-ssa-uncprop.c: Likewise.
      	* tree-ssa-uninit.c: Likewise.
      	* tree-ssa.c: Likewise.
      	* tree-stdarg.c: Likewise.
      	* tree-switch-conversion.c: Likewise.
      	* tree-tailcall.c: Likewise.
      	* tree-vect-data-refs.c: Likewise.
      	* tree-vect-generic.c: Likewise.
      	* tree-vect-loop-manip.c: Likewise.
      	* tree-vect-loop.c: Likewise.
      	* tree-vect-patterns.c: Likewise.
      	* tree-vect-slp.c: Likewise.
      	* tree-vect-stmts.c: Likewise.
      	* tree-vectorizer.c: Likewise.
      	* tree-vrp.c: Likewise.
      	* tree.c: Likewise.
      	* tsan.c: Likewise.
      	* value-prof.c: Likewise.
      	* vtable-verify.c: Likewise.
      
      	* config/aarch64/aarch64-builtins.c: Include gimple-iterator.h.
      	* config/rs6000/rs6000.c: Include gimple-iterator.h and gimple-walk.h.
      	* testsuite/g++.dg/plugin/selfassign.c: Include gimple-iterator.h.
      	* testsuite/gcc.dg/plugin/selfassign.c: Likewise.
      
      From-SVN: r204763
      Andrew Macleod committed
  14. 08 Nov, 2013 1 commit
    • Re-factor tree.h - Part 1. · 862d0b35
      This is the first patch in a series of patches to cleanup tree.h to
      reduce the exposure it has all over the compiler.
      
      In this patch, I'm moving functions that are used once into the files
      that use them, and make them private to that file. These functions
      were declared extern in tree.h and called from exactly one place.
      
      The patch does not move EVERY function. This usually happens
      when the function uses private state from its original file, and
      moving that private state would mean moving other functions that made
      no sense to move.
      
      Additionally, the patch removes functions that were never used.
      
      In subsequent patches, I will be moving out of tree.h extern definitions
      that should be grouped in other files (e.g., all functions defined in
      some FOO.c will be moved to the corresponding FOO.h). This will allow
      me to remove the inclusion of tree.h from some files.
      
          * attribs.c (lookup_scoped_attribute_spec): Make static.
          (get_attribute_namespace): Likewise.
          * builtins.c (more_const_call_expr_args_p): Move from
          tree.h.
          (validate_arglist): Move earlier in the file. Make static.
          (expand_stack_restore): Move from stmt.c
          (expand_stack_save): Move from stmt.c
          (rewrite_call_expr_array): Move earlier in the file.
          (rewrite_call_expr_valist): Likewise.
          * cfgexpand.c: Include hard-reg-set.h before tree.h
          Include recog.h.
          Include output.h.
          (expand_asm_loc): Move from stmt.c.
          (n_occurrences): Move from stmt.c.
          (check_operand_nalternatives): Move from stmt.c.
          (tree_conflicts_with_clobbers_p): Move from stmt.c.
          (expand_asm_operands): Move from stmt.c
          (expand_asm_stmt): Move from stmt.c
          (expand_computed_goto): Move from stmt.c
          (expand_goto): Move from stmt.c
          (expand_null_return_1): Move from stmt.c
          (expand_null_return): Move from stmt.c
          (expand_value_return): Move from stmt.c
          (expand_return): Move from stmt.c
          (expand_main_function): Move from function.c
          (stack_protect_prologue): Move from function.c
          * cgraphclones.c (build_function_type_skip_args): Move from tree.c.
          (build_function_decl_skip_args): Move from tree.c.
          * explow.c (tree_expr_size): Move from tree.c.
          * expr.c (addr_expr_of_non_mem_decl_p): Remove.
          (fields_length): Move from tree.c.
          * fold-const.c (size_low_cst): Move from tree.c.
          (tree_expr_nonzero_warnv_p): Make static. Move earlier in the file.
          (tree_expr_nonzero_p): Make static. Move earlier in the file.
          (fold_build3_initializer_loc): Remove.
          (tree_invalid_nonnegative_warnv_p): Make static.
          * function.c (expand_main_function): Move to cfgexpand.c.
          (stack_protect_prologue): Move to cfgexpand.c.
          (set_insn_locations): Move earlier in the file.
          * gimple-fold.c: Include langhooks.h.
          (truth_type_for): Move from tree.c.
          * print-tree.c (print_vec_tree): Remove.
          * stmt.c (expand_computed_goto): Move to cfgexpand.c.
          (expand_goto): Move to cfgexpand.c.
          (n_occurrences): Move to cfgexpand.c.
          (expand_asm_loc): Move to cfgexpand.c
          (tree_conflicts_with_clobbers_p): Move to cfgexpand.c.
          (expand_asm_operands): Move to cfgexpand.c.
          (expand_asm_stmt): Move to cfgexpand.c.
          (check_operand_nalternatives): Move to cfgexpand.c
          (expand_null_return): Move to cfgexpand.c.
          (expand_value_return): Move to cfgexpand.c.
          (expand_null_return_1): Move to cfgexpand.c.
          (expand_return): Move to cfgexpand.c.
          (expand_stack_save): Move to builtins.c.
          (expand_stack_restore): Move to builtins.c
          * symtab.c: Include output.h.
          (decl_assembler_name_hash): Move from tree.c.
          (decl_assembler_name_equal): Move from tree.c.
          * trans-mem.c (is_tm_safe_or_pure): Move from tree.h.
          * tree-eh.c (in_array_bounds_p): Move from tree.c.
          (range_in_array_bounds_p): Move from tree.c.
          * tree-object-size.c (fini_object_sizes): Make static.
          * tree-ssa-dom.c (iterative_hash_exprs_commutative): Move from tree.h.
          * tree-vrp.c (ssa_name_nonnegative_p): Remove.
          * tree.c (decl_assembler_name_equal): Move to symtab.c.
          (tree_expr_size): Move to explow.c.
          (decl_assembler_name_hash): Move to symtab.c.
          (real_twop): Remove.
          (tree_expr_size): Move to explow.c.
          (stabilize_reference_1): Move earlier in the file. Make static.
          (omp_remove_redundant_declare_simd_attrs): Remove.
          (simple_cst_list_equal): Move earlier in the file. Make static.
          (size_low_cst): Move to fold-const.c.
          (build_type_no_quals): Remove.
          (build_function_type_skip_args): Move to cgraphclones.c.
          (build_function_decl_skip_args): Move to cgraphclones.c.
          (in_array_bounds_p): Move to tree-eh.c.
          (range_in_array_bounds_p): Move to tree-eh.c.
          (truth_type_for): Move to gimple-fold.c.
          (list_equal_p): remove.
          * tree.h (decl_assembler_name_equal): Remove.
          (decl_assembler_name_hash): Remove.
          (truth_type_for): Remove.
          (build_type_no_quals): Remove.
          (build_function_decl_skip_args): Remove.
          (in_array_bounds_p): Remove.
          (range_in_array_bounds_p): Remove.
          (size_low_cst): Remove.
          (omp_remove_redundant_declare_simd_attrs): Remove.
          (tree_expr_size): Remove.
          (fields_length): Remove.
          (stabilize_reference_1): Remove.
          (expand_goto): Remove.
          (expand_stack_save): Remove.
          (expand_stack_restore): Remove.
          (expand_return): Remove.
          (fold_build3_initializer_loc): Remove.
          (tree_expr_nonzero_p): Remove.
          (tree_invalid_nonnegative_warnv_p): Remove.
          (tree_expr_nonzero_warnv_p): Remove.
          (fold_builtin_snprintf_chk): Remove.
          (validate_arglist): Remove.
          (iterative_hash_exprs_commutative): Move to tree-ssa-dom.c.
          (simple_cst_list_equal): Remove.
          (real_twop): Remove.
          (expand_main_function): Remove.
          (stack_protect_prologue): Remove.
          (print_vec_tree): Remove.
          (lookup_scoped_attribute_spec): Remove.
          (get_attribute_namespace): Remove.
          (expand_computed_goto): Remove.
          (expand_asm_stmt): Remove.
          (list_equal_p): Remove.
          (ssa_name_nonnegative_p): Remove.
          (fini_object_sizes): Remove.
          (addr_expr_of_non_mem_decl_p): Remove.
          (is_tm_safe_or_pure): Move to trans-mem.c.
          (more_const_call_expr_args_p): Remove.
          (save_vtable_map_decl): Remove.
      
      From-SVN: r204606
      Diego Novillo committed
  15. 07 Nov, 2013 1 commit
    • tree-vrp.c (find_assert_locations): Pre-seed live bitmaps for loop latches from… · d23c0a32
      tree-vrp.c (find_assert_locations): Pre-seed live bitmaps for loop latches from header PHI arguments from the latch...
      
      	* tree-vrp.c (find_assert_locations): Pre-seed live bitmaps for loop
      	latches from header PHI arguments from the latch edge.
      
              * gcc.dg/unroll_1.c: Add -fno-tree-vrp to dg-options.
              * gcc.dg/unroll_2.c: Likewise.
              * gcc.dg/unroll_3.c: Likewise.
              * gcc.dg/unroll_4.c: Likewise.
      	* gcc.dg/vrp90.c: New test.
      
      From-SVN: r204515
      Jakub Jelinek committed
  16. 06 Nov, 2013 1 commit
    • tree.c (drop_tree_overflow): New function. · 3f5c390d
      2013-11-06  Richard Biener  <rguenther@suse.de>
      
      	* tree.c (drop_tree_overflow): New function.
      	* tree.h (drop_tree_overflow): Declare.
      	* gimplify.c (gimplify_expr): Drop TREE_OVERFLOW.
      	* tree-vrp.c (range_int_cst_singleton_p): Use
      	is_overflow_infinity instead of testing TREE_OVERFLOW.
      	(extract_range_from_assert): Likewise.
      	(zero_nonzero_bits_from_vr): Likewise.
      	(extract_range_basic): Likewise.
      	(register_new_assert_for): Use drop_tree_overflow.
      	(vrp_visit_phi_node): Likewise.
      
      From-SVN: r204454
      Richard Biener committed
  17. 05 Nov, 2013 1 commit
    • Makefile.in (OBJS): Add gimple-ssa-isolate-paths.o · 8fdc414d
      	* Makefile.in (OBJS): Add gimple-ssa-isolate-paths.o
      	* common.opt (-fisolate-erroneous-paths): Add option and
      	documentation.
      	* gimple-ssa-isolate-paths.c: New file.
      	* gimple.c (check_loadstore): New function.
      	(infer_nonnull_range): Moved into gimple.c from tree-vrp.c
      	Verify OP is in the argument list and the argument corresponding
      	to OP is a pointer type.  Use operand_equal_p rather than
      	pointer equality when testing if OP is on the nonnull list.
      	Use check_loadstore rather than count_ptr_derefs.  Handle
      	GIMPLE_RETURN statements.
      	* tree-vrp.c (infer_nonnull_range): Remove.
      	* gimple.h (infer_nonnull_range): Declare.
      	* opts.c (default_options_table): Add
      	* OPT_fisolate_erroneous_paths.
      	* passes.def: Add pass_isolate_erroneous_paths.
      	* timevar.def (TV_ISOLATE_ERRONEOUS_PATHS): New timevar.
      	* tree-pass.h (make_pass_isolate_erroneous_paths): Declare.
      	* tree-ssa.c (struct count_ptr_d): Remove.
      	(count_ptr_derefs, count_uses_and_derefs): Remove.
      	* tree-ssa.h (count_uses_and_derefs): Remove.
      
      	* gcc.dg/pr38984.c: Add -fno-isolate-erroneous-paths.
      	* gcc.dg/tree-ssa/isolate-1.c: New test.
      	* gcc.dg/tree-ssa/isolate-2.c: New test.
      	* gcc.dg/tree-ssa/isolate-3.c: New test.
      	* gcc.dg/tree-ssa/isolate-4.c: New test.
      
      From-SVN: r204414
      Jeff Law committed
  18. 04 Nov, 2013 1 commit
  19. 31 Oct, 2013 2 commits
  20. 23 Oct, 2013 2 commits
    • tree-ssa-loop.h: Remove include files. · e28030cf
      
      	* tree-ssa-loop.h: Remove include files.
      	* gengtype.c (open_base_files): Adjust include list for gtype-desc.c.
      	* cfgloopmanip.c: Move required includes from tree-ssa-loop.h.
      	* graphite-clast-to-gimple.c: Likewise.
      	* graphite-scop-detection.c: Likewise.
      	* graphite-sese-to-poly.c: Likewise.
      	* ipa-inline-analysis.c: Likewise.
      	* ipa-pure-const.c: Likewise.
      	* loop-init.c: Likewise.
      	* passes.c: Likewise.
      	* predict.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-chrec.c: Likewise.
      	* tree-data-ref.c: Likewise.
      	* tree-loop-distribution.c: Likewise.
      	* tree-parloops.c: Likewise.
      	* tree-predcom.c: Likewise.
      	* tree-scalar-evolution.c: Likewise.
      	* tree-ssa-address.c: Likewise.
      	* tree-ssa.c: Likewise.
      	* tree-ssa-dce.c: Likewise.
      	* tree-ssa-loop.c: Likewise.
      	* tree-ssa-loop-im.c: Likewise.
      	* tree-ssa-loop-ivcanon.c: Likewise.
      	* tree-ssa-loop-ivopts.c: Likewise.
      	* tree-ssa-loop-manip.c: Likewise.
      	* tree-ssa-loop-niter.c: Likewise.
      	* tree-ssa-loop-prefetch.c: Likewise.
      	* tree-ssa-loop-unswitch.c: Likewise.
      	* tree-ssa-reassoc.c: Likewise.
      	* tree-vect-data-refs.c: Likewise.
      	* tree-vect-loop.c: Likewise.
      	* tree-vect-loop-manip.c: Likewise.
      	* tree-vectorizer.c: Likewise.
      	* tree-vect-stmts.c: Likewise.
      	* tree-vrp.c: Likewise.
      
      From-SVN: r203987
      Andrew MacLeod committed
    • tree-ssa.h: Remove all #include's · 442b4905
      	* tree-ssa.h: Remove all #include's
      	* gengtype.c (open_base_files): Adjust include list for gtype-desc.c.
      	* alias.c: Move required includes from tree-ssa.h.
      	* asan.c: Likewise.
      	* builtins.c: Likewise.
      	* calls.c: Likewise.
      	* cfgexpand.c: Likewise.
      	* cfghooks.c: Likewise.
      	* cfgloop.c: Likewise.
      	* cfgloopmanip.c: Likewise.
      	* cgraph.c: Likewise.
      	* cgraphbuild.c: Likewise.
      	* cgraphclones.c: Likewise.
      	* cgraphunit.c: Likewise.
      	* dse.c: Likewise.
      	* except.c: Likewise.
      	* expr.c: Likewise.
      	* final.c: Likewise.
      	* fold-const.c: Likewise.
      	* ggc-page.c: Likewise.
      	* gimple-builder.c: Likewise.
      	* gimple-fold.c: Likewise.
      	* gimple-iterator.c: Likewise.
      	* gimple-low.c: Likewise.
      	* gimple-pretty-print.c: Likewise.
      	* gimple-ssa-strength-reduction.c: Likewise.
      	* gimple-streamer-in.c: Likewise.
      	* gimple-streamer-out.c: Likewise.
      	* gimplify.c: Likewise.
      	* graphite-blocking.c: Likewise.
      	* graphite-clast-to-gimple.c: Likewise.
      	* graphite-dependences.c: Likewise.
      	* graphite-interchange.c: Likewise.
      	* graphite-optimize-isl.c: Likewise.
      	* graphite-poly.c: Likewise.
      	* graphite-scop-detection.c: Likewise.
      	* graphite-sese-to-poly.c: Likewise.
      	* graphite.c: Likewise.
      	* ipa-cp.c: Likewise.
      	* ipa-inline-analysis.c: Likewise.
      	* ipa-inline-transform.c: Likewise.
      	* ipa-inline.c: Likewise.
      	* ipa-prop.c: Likewise.
      	* ipa-pure-const.c: Likewise.
      	* ipa-reference.c: Likewise.
      	* ipa-split.c: Likewise.
      	* ipa-utils.c: Likewise.
      	* loop-init.c: Likewise.
      	* lto-cgraph.c: Likewise.
      	* lto-section-in.c: Likewise.
      	* lto-section-out.c: Likewise.
      	* lto-streamer-in.c: Likewise.
      	* lto-streamer-out.c: Likewise.
      	* lto-streamer.c: Likewise.
      	* omp-low.c: Likewise.
      	* passes.c: Likewise.
      	* predict.c: Likewise.
      	* print-tree.c: Likewise.
      	* profile.c: Likewise.
      	* sese.c: Likewise.
      	* targhooks.c: Likewise.
      	* tracer.c: Likewise.
      	* trans-mem.c: Likewise.
      	* tree-call-cdce.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-chrec.c: Likewise.
      	* tree-complex.c: Likewise.
      	* tree-data-ref.c: Likewise.
      	* tree-dfa.c: Likewise.
      	* tree-eh.c: Likewise.
      	* tree-emutls.c: Likewise.
      	* tree-if-conv.c: Likewise.
      	* tree-inline.c: Likewise.
      	* tree-into-ssa.c: Likewise.
      	* tree-loop-distribution.c: Likewise.
      	* tree-mudflap.c: Likewise.
      	* tree-nested.c: Likewise.
      	* tree-nrv.c: Likewise.
      	* tree-object-size.c: Likewise.
      	* tree-outof-ssa.c: Likewise.
      	* tree-parloops.c: Likewise.
      	* tree-phinodes.c: Likewise.
      	* tree-predcom.c: Likewise.
      	* tree-pretty-print.c: Likewise.
      	* tree-profile.c: Likewise.
      	* tree-scalar-evolution.c: Likewise.
      	* tree-sra.c: Likewise.
      	* tree-ssa-address.c: Likewise.
      	* tree-ssa-alias.c: Likewise.
      	* tree-ssa-ccp.c: Likewise.
      	* tree-ssa-coalesce.c: Likewise.
      	* tree-ssa-copy.c: Likewise.
      	* tree-ssa-copyrename.c: Likewise.
      	* tree-ssa-dce.c: Likewise.
      	* tree-ssa-dom.c: Likewise.
      	* tree-ssa-dse.c: Likewise.
      	* tree-ssa-forwprop.c: Likewise.
      	* tree-ssa-ifcombine.c: Likewise.
      	* tree-ssa-live.c: Likewise.
      	* tree-ssa-loop-ch.c: Likewise.
      	* tree-ssa-loop-im.c: Likewise.
      	* tree-ssa-loop-ivcanon.c: Likewise.
      	* tree-ssa-loop-ivopts.c: Likewise.
      	* tree-ssa-loop-manip.c: Likewise.
      	* tree-ssa-loop-niter.c: Likewise.
      	* tree-ssa-loop-prefetch.c: Likewise.
      	* tree-ssa-loop-unswitch.c: Likewise.
      	* tree-ssa-loop.c: Likewise.
      	* tree-ssa-math-opts.c: Likewise.
      	* tree-ssa-operands.c: Likewise.
      	* tree-ssa-phiopt.c: Likewise.
      	* tree-ssa-phiprop.c: Likewise.
      	* tree-ssa-pre.c: Likewise.
      	* tree-ssa-propagate.c: Likewise.
      	* tree-ssa-reassoc.c: Likewise.
      	* tree-ssa-sccvn.c: Likewise.
      	* tree-ssa-sink.c: Likewise.
      	* tree-ssa-strlen.c: Likewise.
      	* tree-ssa-structalias.c: Likewise.
      	* tree-ssa-tail-merge.c: Likewise.
      	* tree-ssa-ter.c: Likewise.
      	* tree-ssa-threadedge.c: Likewise.
      	* tree-ssa-threadupdate.c: Likewise.
      	* tree-ssa-uncprop.c: Likewise.
      	* tree-ssa-uninit.c: Likewise.
      	* tree-ssa.c: Likewise.
      	* tree-ssanames.c: Likewise.
      	* tree-stdarg.c: Likewise.
      	* tree-streamer-in.c: Likewise.
      	* tree-switch-conversion.c: Likewise.
      	* tree-tailcall.c: Likewise.
      	* tree-vect-data-refs.c: Likewise.
      	* tree-vect-generic.c: Likewise.
      	* tree-vect-loop-manip.c: Likewise.
      	* tree-vect-loop.c: Likewise.
      	* tree-vect-patterns.c: Likewise.
      	* tree-vect-slp.c: Likewise.
      	* tree-vect-stmts.c: Likewise.
      	* tree-vectorizer.c: Likewise.
      	* tree-vrp.c: Likewise.
      	* tree.c: Likewise.
      	* tsan.c: Likewise.
      	* value-prof.c: Likewise.
      	* var-tracking.c: Likewise.
      	* varpool.c: Likewise.
      	* vtable-verify.c: Likewise.
      
      From-SVN: r203967
      Andrew MacLeod committed
  21. 18 Oct, 2013 1 commit
    • tree-ssa.h: Don't include gimple-low.h... · 4484a35a
      	* tree-ssa.h: Don't include gimple-low.h, tree-ssa-address.h, sbitmap.h,
      	tree-ssa-threadedge.h, tree-ssa-dom.h, and tree-cfgcleanup.h.
      	* gimple-low.c (gimple_check_call_arg,
      	gimple_check_call_matching_types): Move to cgraph.c.
      	* gimple-low.h: Remove prototype.
      	* cgraph.c: (gimple_check_call_arg, gimple_check_call_matching_types):
      	Relocate from gimple-low.c.
      	* cgraph.h: Add prototype.  Don't include basic-block.h.
      	* gimplify.c: Add gimple-low to include list.
      	* omp-low.c: Add gimple-low and tree-cfgcleanup.h to include list.
      	* tree-eh.c: Add gimple-low to include list.
      	* tree-nested.c: Likewise.
      	* cfgexpand.c: Add tree-ssa-address.h to include list.
      	* expr.c: Likewise.
      	* gimple-fold.c: Likewise.
      	* gimple-ssa-strength-reduction.c: Likewise.
      	* trans-mem.c: Likewise.
      	* tree-mudflap.c: Likewise.
      	* tree-ssa-loop-ivopts.c: Likewise.
      	* tree-ssa-dom.c: Include tree-ssa-threadedge.h and tree-ssa-dom.h.
      	(degenerate_phi_result): Move to tree-phinodes.c.
      	* tree-ssa-loop-ch.c: Include tree-ssa-threadedge.h.
      	* tree-ssa-threadedge.c: Likewise.
      	* tree-vrp.c: Likewise.
      	* tree-phinodes.c (degenerate_phi_result): Relocate here.
      	* tree-ssa-dom.h (degenerate_phi_result): Remove Prototype.
      	* tree-phinodes.h (degenerate_phi_result): Add prototype.
      	* tree-ssa-copy.c: Include tree-ssa-dom.h.
      	* tree-ssa-forwprop.c: Likewise.
      	* tree-cfgcleanup.c (execute_cleanup_cfg_post_optimizing,
      	pass_data_cleanup_cfg_post_optimizing,
      	make_pass_cleanup_cfg_post_optimizing): Relocate from tree-optimize.c.
      	* tree-optimize.c: Delete File.
      	* graphite.c: Include tree-cfgcleanup.h.
      	* passes.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-profile.c: Likewise.
      	* tree-ssa-dse.c: Likewise.
      	* tree-ssa-loop-ivcanon.c: Likewise.
      	* tree-switch-conversion.c: Don't include tree-ssa-operands.h.
      	* tree-outof-ssa.c: Include sbitmap.h.
      	* tree-ssa-live.c: Likewise.
      	* tree-ssa-propagate.c: Likewise.
      	* tree-ssa-structalias.c: Likewise.
      	* tree-stdarg.c: Likewise.
      	* Makefile.in (OBJS): Delete tree-optimize.o.
      	* basic-block.h (gcov_type, gcov_type_unsigned): Move to coretypes.h.
      	* coretypes.h (gcov_type, gcov_type_unsigned): Relocate here.
      	* varasm.c: Include basic-block.h.
      	* cfgloop.h: Include function.h instead of basic-block.h
      	(bb_loop_depth): Move to cfgloop.c.
      	* cfgloop.c (bb_loop_depth): Relocate from cfgloop.h.
      
      From-SVN: r203833
      Andrew MacLeod committed
  22. 16 Oct, 2013 1 commit
    • tree-core.h (tree_code_name): Remove. · 5806f481
      gcc/
      	* tree-core.h (tree_code_name): Remove.
      	* tree.h (get_tree_code_name): New prototype.
      	* tree.c (tree_code_name): Make static.
      	(get_tree_code_name): New function.
      	(dump_tree_statistics, tree_check_failed, tree_not_check_failed, 
      	tree_class_check_failed, tree_range_check_failed,
      	tree_not_class_check_failed, omp_clause_check_failed,
      	tree_contains_struct_check_failed, tree_operand_check_failed): Use new
      	wrapper get_tree_code_name instead of calling tree_code_name directly.
      	* tree-vrp.c (dump_asserts_for): Likewise.
      	* tree-dump.c (dequeue_and_dump): Likewise.
      	* tree-pretty-print.c (do_niy, dump_generic_node): Likewise.
      	* tree-pretty-print.h (pp_unsupported_tree): Likewise.
      	* lto-streamer-out.c (lto_write_tree, DFS_write_tree): Likewise.
      	* tree-ssa-dom.c (print_expr_hash_elt): Likewise.
      	* gimple-pretty-print.c (dump_unary_rhs, dump_binary_rhs,
      	dump_ternary_rhs, dump_gimple_assign, dump_gimple_cond,
      	dump_gimple_omp_for): Likewise.
      	* tree-vect-data-refs.c (vect_create_data_ref_ptr): Likewise.
      	* tree-ssa-pre.c (print_pre_expr): Likewise.
      	* ipa-prop.c (ipa_print_node_jump_functions_for_edge): Likewise.
      	* print-tree.c (print_node_brief, print_node): Likewise.
      	* gimple.c (gimple_check_failed): Likewise.
      	* lto-streamer.c (lto_tag_name, print_lto_report): Likewise.
      	* config/frv/frv.c (frv_init_cumulative_args): Likewise.
      	* config/mep/mep.c (mep_validate_vliw): Likewise.
      	* config/iq2000/iq2000.c (init_cumulative_args): Likewise.
      	* config/rs6000/rs6000.c (init_cumulative_args): Likewise.
      
      gcc/cp/
      	* error.c (code_to_string): Use new wrapper get_tree_code_name.
      	* cxx-pretty-print.c (pp_cxx_assignment_operator): Likewise.
      	* pt.c (tsubst): Likewise.
      	* semantics.c (cxx_eval_constant_expression,
      	potential_constant_expression_1): Likewise.
      	* mangle.c (MANGLE_TRACE_TREE, dump_substitution_candidates,
      	add_substitution, find_substitution): Likewise.
      
      From-SVN: r203695
      Paulo Matos committed
  23. 11 Oct, 2013 1 commit
  24. 09 Oct, 2013 1 commit
    • re PR c/20318 (RFE: add attribute to specify that a function never returns NULL) · 826cacfe
      2013-10-09  Marc Glisse  <marc.glisse@inria.fr>
      
      	PR tree-optimization/20318
      gcc/c-family/
      	* c-common.c (handle_returns_nonnull_attribute): New function.
      	(c_common_attribute_table): Add returns_nonnull.
      
      gcc/
      	* doc/extend.texi (returns_nonnull): New function attribute.
      	* fold-const.c (tree_expr_nonzero_warnv_p): Look for returns_nonnull
      	attribute.
      	* tree-vrp.c (gimple_stmt_nonzero_warnv_p): Likewise.
      	(stmt_interesting_for_vrp): Accept all GIMPLE_CALL.
      
      gcc/testsuite/
      	* c-c++-common/pr20318.c: New file.
      	* gcc.dg/tree-ssa/pr20318.c: New file.
      
      From-SVN: r203316
      Marc Glisse committed
  25. 08 Oct, 2013 1 commit
  26. 03 Oct, 2013 1 commit
    • re PR c++/19476 (Missed null checking elimination with new) · 2284b034
      2013-10-03  Marc Glisse  <marc.glisse@inria.fr>
      
      	PR c++/19476
      gcc/c-family/
      	* c.opt (fcheck-new): Move to common.opt.
      
      gcc/
      	* common.opt (fcheck-new): Moved from c.opt. Make it 'Common'.
      	* calls.c (alloca_call_p): Use get_callee_fndecl.
      	* fold-const.c (tree_expr_nonzero_warnv_p): Handle operator new.
      	* tree-vrp.c (gimple_stmt_nonzero_warnv_p, stmt_interesting_for_vrp):
      	Likewise.
      	(vrp_visit_stmt): Remove duplicated code.
      
      gcc/testsuite/
      	* g++.dg/tree-ssa/pr19476-1.C: New file.
      	* g++.dg/tree-ssa/pr19476-2.C: Likewise.
      	* g++.dg/tree-ssa/pr19476-3.C: Likewise.
      	* g++.dg/tree-ssa/pr19476-4.C: Likewise.
      
      From-SVN: r203163
      Marc Glisse committed
  27. 02 Oct, 2013 1 commit
    • tree-flow.h: Remove some prototypes. · 744730a4
      2013-10-02  Andrew MacLeod  <amacleod@redhat.com>
      
      	* tree-flow.h: Remove some prototypes.
      	* gimple-fold.h: Add prototypes from gimple.h and tree-flow.h.
      	* tree-ssa-propagate.h: Relocate prototypes from tree-flow.h.
      	* tree-ssa-copy.c (may_propagate*, propagate_value, replace_exp,
      	propagate_tree_value*): Move from here to...
      	* tree-ssa-propagate.c (may_propagate*, propagate_value, replace_exp,
      	propagate_tree_value*): Relocate here.
      	* tree-ssa-propagate.h: Relocate prototypes from tree-flow.h.
      	* gimple.h: Include gimple-fold.h, move prototypes into gimple-fold.h.
      	* gimple-fold.c: Remove gimple-fold.h from include list.
      	* tree-vrp.c: Remove gimple-fold.h from include list.
      	* tree-ssa-sccvn.c: Remove gimple-fold.h from include list.
      	* tree-ssa-ccp.c: Remove gimple-fold.h from include list.
      	* tree-scalar-evolution.c: Add tree-ssa-propagate.h to include list.
      	* tree-ssa-pre.c: Add tree-ssa-propagate.h to include list.
      	* sese.c: Add tree-ssa-propagate.h to include list.
      
      From-SVN: r203118
      Andrew MacLeod committed
  28. 30 Sep, 2013 1 commit
    • basic-block.h (edge_list): Prefix member names with "m_". · 65d3284b
      gcc/
      	* basic-block.h (edge_list): Prefix member names with "m_".
      	* context.h (context): Likewise.
      	* domwalk.h (dom_walker): Likewise.
      	* gengtype-state.c (s_expr_writer, state_writer): Likewise.
      	* graphite-sese-to-poly.c (sese_dom_walker): Likewise.
      	* hash-table.h (hash_table): Likewise.
      	* machmode.h (bit_field_mode_iterator): Likewise.
      	* pass_manager.h (pass_list): Likewise.
      	* tree-into-ssa.c (mark_def_dom_walker): Likewise.
      	* tree-pass.h (pass_data): Likewise.
      	* tree-ssa-dom.c (dom_opt_dom_walker): Likewise.
      	* tree-ssa-phiopt.c (nontrapping_dom_walker): Likewise,
      	* tree-ssa-uncprop.c (uncprop_dom_walker): Likewise.
      	* asan.c (pass_data_asan): Update accordingly.
      	* cfganal.c (control_dependences::find_control_dependence): Likewise.
      	(control_dependences::control_dependences): Likewise.
      	(control_dependences::~control_dependences): Likewise.
      	(control_dependences::~control_dependences): Likewise.
      	(control_dependences::get_edges_dependent_on): Likewise.
      	* cgraphbuild.c (pass_data_rebuild_cgraph_edges::clone): Likewise.
      	(pass_data_remove_cgraph_callee_edges::clone): Likewise.
      	* context.c (gcc::context::context): Likewise.
      	* cprop.c (pass_rtl_cprop::clone): Likewise.
      	* domwalk.c (dom_walker::walk): Likewise.
      	* ipa-inline-analysis.c (pass_inline_parameters::clone): Likewise.
      	* ipa-pure-const.c (pass_local_pure_const::clone): Likewise.
      	* mode-switching.c (pass_mode_switching::clone): Likewise.
      	* passes.c (opt_pass::opt_pass): Likewise.
      	(pass_manager::pass_manager): Likewise.
      	* predict.c (pass_strip_predict_hints::clone): Likewise.
      	* recog.c (pass_data pass_data_peephole2::clone): Likewise.
      	(pass_split_all_insns::clone): Likewise.
      	* stor-layout.c (bit_field_mode_iterator::bit_field_mode_iterator):
      	Likewise.
      	(bit_field_mode_iterator::next_mode): Likewise.
      	(bit_field_mode_iterator::prefer_smaller_modes): Likewise.
      	* tree-cfg.c (pass_split_crit_edges::clone): Likewise.
      	* tree-cfgcleanup.c (pass_merge_phi::clone): Likewise.
      	* tree-complex.c (pass_lower_complex::clone): Likewise.
      	* tree-eh.c (pass_cleanup_eh::clone): Likewise.
      	* tree-object-size.c (pass_object_sizes::clone): Likewise.
      	* tree-optimize.c (pass_fixup_cfg::clone): Likewise.
      	* tree-ssa-ccp.c (pass_data_ccp::clone): Likewise.
      	(pass_fold_builtins::clone): Likewise.
      	* tree-ssa-copy.c (pass_data_copy_prop::clone): Likewise.
      	* tree-ssa-copyrename.c (pass_rename_ssa_copies::clone): Likewise.
      	* tree-ssa-dce.c (pass_dce::clone, pass_dce_loop::clone): Likewise.
      	(pass_cd_dce::clone): Likewise.
      	* tree-ssa-dom.c (pass_dominator::clone): Likewise.
      	(pass_phi_only_cprop::clone): Likewise.
      	* tree-ssa-dse.c (pass_dse::clone): Likewise.
      	* tree-ssa-forwprop.c (pass_forwprop::clone): Likewise.
      	* tree-ssa-loop.c (pass_lim::clone): Likewise.
      	* tree-ssa-phiopt.c (pass_phiopt::clone): Likewise.
      	* tree-ssa-pre.c (pass_fre::clone): Likewise.
      	* tree-ssa-reassoc.c (pass_reassoc::clone): Likewise.
      	* tree-ssa-uninit.c (pass_late_warn_uninitialized::clone): Likewise.
      	* tree-tailcall.c (pass_tail_recursion::clone): Likewise.
      	* tree-vect-generic.c (pass_lower_vector_ssa::clone): Likewise.
      	* tree-vrp.c (pass_vrp::clone): Likewise.
      	* tsan.c (pass_tsan::clone): Likewise.
      
      From-SVN: r203046
      Richard Sandiford committed
  29. 28 Sep, 2013 1 commit
    • alloc-pool.c, [...]: Add missing whitespace before "(". · c3284718
      gcc/
      	* alloc-pool.c, asan.c, auto-inc-dec.c, basic-block.h, bb-reorder.c,
      	bitmap.c, bitmap.h, bt-load.c, builtins.c, calls.c, cfgcleanup.c,
      	cfgexpand.c, cfghooks.c, cfgloop.c, cfgloopmanip.c, cfgrtl.c, cgraph.c,
      	cgraph.h, cgraphbuild.c, cgraphclones.c, cgraphunit.c, collect2.c,
      	combine-stack-adj.c, combine.c, compare-elim.c, context.c, context.h,
      	cprop.c, cse.c, cselib.c, dbxout.c, dce.c, defaults.h, df-core.c,
      	df-problems.c, df-scan.c, df.h, diagnostic.c, double-int.c, dse.c,
      	dumpfile.c, dwarf2asm.c, dwarf2cfi.c, dwarf2out.c, emit-rtl.c,
      	errors.c, except.c, expmed.c, expr.c, file-find.c, final.c,
      	fixed-value.c, fold-const.c, function.c, fwprop.c, gcc-ar.c, gcc.c,
      	gcov-io.c, gcov-io.h, gcov.c, gcse.c, genattr-common.c, genattr.c,
      	genattrtab.c, genautomata.c, genconfig.c, genemit.c, genextract.c,
      	genflags.c, gengenrtl.c, gengtype-state.c, gengtype.c, genmodes.c,
      	genopinit.c, genoutput.c, genpeep.c, genpreds.c, genrecog.c,
      	gensupport.c, ggc-common.c, ggc-page.c, gimple-fold.c, gimple-low.c,
      	gimple-pretty-print.c, gimple-ssa-strength-reduction.c, gimple.c,
      	gimple.h, godump.c, graphite-clast-to-gimple.c,
      	graphite-optimize-isl.c, graphite-poly.h, graphite-sese-to-poly.c,
      	graphite.c, haifa-sched.c, hash-table.c, hash-table.h, hwint.c,
      	hwint.h, ifcvt.c, incpath.c, init-regs.c, input.h, intl.c, intl.h,
      	ipa-cp.c, ipa-devirt.c, ipa-inline-analysis.c, ipa-inline.c,
      	ipa-profile.c, ipa-pure-const.c, ipa-reference.c, ipa-split.c,
      	ipa-utils.c, ipa.c, ira-build.c, ira.c, jump.c, loop-doloop.c,
      	loop-init.c, loop-invariant.c, loop-iv.c, lower-subreg.c, lto-cgraph.c,
      	lto-streamer-in.c, lto-streamer-out.c, lto-wrapper.c, mcf.c,
      	mode-switching.c, modulo-sched.c, omp-low.c, optabs.c, opts.c,
      	pass_manager.h, passes.c, plugin.c, postreload-gcse.c, postreload.c,
      	predict.c, prefix.c, pretty-print.c, print-rtl.c, print-tree.c,
      	profile.c, read-md.c, real.c, real.h, recog.c, ree.c, reg-stack.c,
      	regcprop.c, reginfo.c, regmove.c, regrename.c, regs.h, regstat.c,
      	reload1.c, reorg.c, rtl.c, rtl.h, rtlanal.c, sbitmap.c, sched-rgn.c,
      	sdbout.c, sel-sched-ir.c, sel-sched.c, sparseset.c, stack-ptr-mod.c,
      	statistics.c, stmt.c, stor-layout.c, store-motion.c, streamer-hooks.h,
      	system.h, target-hooks-macros.h, targhooks.c, targhooks.h, toplev.c,
      	tracer.c, trans-mem.c, tree-browser.c, tree-call-cdce.c, tree-cfg.c,
      	tree-cfgcleanup.c, tree-complex.c, tree-data-ref.c, tree-data-ref.h,
      	tree-eh.c, tree-emutls.c, tree-flow.h, tree-if-conv.c, tree-into-ssa.c,
      	tree-iterator.c, tree-loop-distribution.c, tree-mudflap.c,
      	tree-nested.c, tree-nomudflap.c, tree-nrv.c, tree-object-size.c,
      	tree-optimize.c, tree-pass.h, tree-pretty-print.c, tree-profile.c,
      	tree-scalar-evolution.c, tree-sra.c, tree-ssa-ccp.c,
      	tree-ssa-coalesce.c, tree-ssa-copy.c, tree-ssa-copyrename.c,
      	tree-ssa-dce.c, tree-ssa-dom.c, tree-ssa-dse.c, tree-ssa-forwprop.c,
      	tree-ssa-ifcombine.c, tree-ssa-live.c, tree-ssa-loop-ch.c,
      	tree-ssa-loop-im.c, tree-ssa-loop-ivopts.c, tree-ssa-loop-prefetch.c,
      	tree-ssa-loop.c, tree-ssa-math-opts.c, tree-ssa-operands.c,
      	tree-ssa-phiopt.c, tree-ssa-phiprop.c, tree-ssa-pre.c,
      	tree-ssa-reassoc.c, tree-ssa-sink.c, tree-ssa-strlen.c,
      	tree-ssa-structalias.c, tree-ssa-threadedge.c, tree-ssa-threadupdate.c,
      	tree-ssa-uncprop.c, tree-ssa-uninit.c, tree-ssa.c, tree-ssanames.c,
      	tree-stdarg.c, tree-switch-conversion.c, tree-tailcall.c,
      	tree-vect-data-refs.c, tree-vect-generic.c, tree-vect-loop-manip.c,
      	tree-vect-stmts.c, tree-vectorizer.c, tree-vectorizer.h, tree-vrp.c,
      	tree.c, tree.h, tsan.c, tsystem.h, value-prof.c, var-tracking.c,
      	varasm.c, vec.h, vmsdbgout.c, vtable-verify.c, web.c: Add missing
      	whitespace before "(".
      
      From-SVN: r203004
      Richard Sandiford committed
  30. 26 Sep, 2013 1 commit
    • tree-flow.h (thread_through_all_blocks): Prototype moved into tree-ssa-threadupdate.h. · 5254eac4
      	* tree-flow.h (thread_through_all_blocks): Prototype moved into
      	tree-ssa-threadupdate.h.
      	(register_jump_thread): Similarly.
      	* tree-ssa-threadupdate.h: New header file.
      	* tree-ssa-dom.c: Include tree-ssa-threadupdate.h.
      	* tree-vrp.c: Likewise.
      	* tree-ssa-threadedge.c: Include tree-ssa-threadupdate.h.
      	(thread_around_empty_blocks): Change type of path vector argument to
      	an edge,type pair from just an edge.  Initialize both elements when
      	appending to a jump threading path.  Tweak references to elements
      	appropriately.
      	(thread_across_edge): Similarly.  Release memory for the elements
      	as needed.
      	* tree-ssa-threadupdate.c: Include tree-ssa-threadupdate.h.
      	(dump_jump_thread_path): New function broken out from
      	register_jump_thread.
      	(register_jump_thread): Use dump_jump_thread_path.  Change type of
      	path vector entries.  Search the path for NULL edges and dump
      	the path if one is found.  Tweak the conversion of path to 3-edge
      	form to use the block copy type information embedded in the path.
      
      	* gcc.dg/tree-ssa/ssa-dom-thread-3.c: Update expected output.
      
      From-SVN: r202933
      Jeff Law committed
  31. 24 Sep, 2013 2 commits
  32. 23 Sep, 2013 1 commit
    • gimple-pretty-print.c (dump_ssaname_info): New function. · a895a2b8
      2013-09-23  Kugan Vivekanandarajah  <kuganv@linaro.org>
      
      	gcc/
      	* gimple-pretty-print.c (dump_ssaname_info): New function.
      	(dump_gimple_phi): Call it.
      	(pp_gimple_stmt_1): Likewise.
      	* tree-core.h (tree_ssa_name): New union ssa_name_info_type field.
      	(range_info_def): Declare.
      	* tree-pretty-print.c (pp_double_int): New function.
      	(dump_generic_node): Call it.
      	* tree-pretty-print.h (pp_double_int): Declare.
      	* tree-ssa-alias.c (dump_alias_info): Check pointer type.
      	* tree-ssanames.h (range_info_def): New structure.
      	(value_range_type): Move definition here.
      	(set_range_info, value_range_type, duplicate_ssa_name_range_info):
      	Declare.
      	* tree-ssanames.c (make_ssa_name_fn): Check pointer type at
      	initialization.
      	(set_range_info): New function.
      	(get_range_info): Likewise.
      	(duplicate_ssa_name_range_info): Likewise.
      	(duplicate_ssa_name_fn): Check pointer type and call
      	duplicate_ssa_name_range_info.
      	* tree-ssa-copy.c (fini_copy_prop): Likewise.
      	* tree-vrp.c (value_range_type): Remove definition, now in
      	tree-ssanames.h.
      	(vrp_finalize): Call set_range_info to update value range of
      	SSA_NAMEs.
      	* tree.h (SSA_NAME_PTR_INFO): Macro changed to access via union.
      	(SSA_NAME_RANGE_INFO): New macro.
      
      From-SVN: r202831
      Kugan Vivekanandarajah committed