1. 09 Jul, 2014 1 commit
  2. 24 Jun, 2014 1 commit
    • Remove a layer of indirection from hash_table · c203e8a7
      gcc/
      
      	* hash-table.h: Remove a layer of indirection from hash_table so that
      	it contains the hash table's data instead of a pointer to the data.
      	* alloc-pool.c, asan.c, attribs.c, bitmap.c, cfg.c,
      	config/arm/arm.c, config/i386/winnt.c, config/ia64/ia64.c,
      	config/mips/mips.c, config/sol2.c, coverage.c, cselib.c,
      	data-streamer-out.c, dse.c, dwarf2cfi.c, dwarf2out.c, except.c,
      	fold-const.c, gcse.c, ggc-common.c,
      	gimple-ssa-strength-reduction.c, gimplify.c,
      	graphite-clast-to-gimple.c, graphite-dependences.c,
      	graphite-htab.h, graphite.c, haifa-sched.c, ipa-devirt.c,
      	ipa-profile.c, ira-color.c, ira-costs.c, loop-invariant.c,
      	loop-iv.c, loop-unroll.c, lto-streamer-in.c, lto-streamer-out.c,
      	lto-streamer.c, lto-streamer.h, passes.c, plugin.c,
      	postreload-gcse.c, sese.c, statistics.c, store-motion.c,
      	trans-mem.c, tree-browser.c, tree-cfg.c, tree-complex.c,
      	tree-eh.c, tree-into-ssa.c, tree-parloops.c, tree-sra.c,
      	tree-ssa-ccp.c, tree-ssa-coalesce.c, tree-ssa-dom.c,
      	tree-ssa-live.c, tree-ssa-loop-im.c,
      	tree-ssa-loop-ivopts.c, tree-ssa-phiopt.c, tree-ssa-pre.c,
      	tree-ssa-reassoc.c, tree-ssa-sccvn.c, tree-ssa-strlen.c,
      	tree-ssa-structalias.c, tree-ssa-tail-merge.c,
      	tree-ssa-threadupdate.c, tree-ssa-uncprop.c,
      tree-vect-data-refs.c, tree-vect-loop.c, tree-vectorizer.c,
      tree-vectorizer.h, valtrack.c, valtrack.h, var-tracking.c,
      vtable-verify.c, vtable-verify.h: Adjust.
      
      gcc/c/
      
      	* c-decl.c: Adjust.
      
      gcc/cp/
      
      	* class.c, semantics.c, tree.c, vtable-class-hierarchy.c:
      	Adjust.
      
      gcc/java/
      
      	* jcf-io.c: Adjust.
      
      gcc/lto/
      
      	* lto.c: Adjust.
      
      gcc/objc/
      
      	* objc-act.c: Adjust.
      
      From-SVN: r211936
      Trevor Saunders committed
  3. 17 May, 2014 1 commit
    • use templates instead of gengtype for typed allocation functions · 766090c2
      gcc/ChangeLog:
      
      	* alias.c (record_alias_subset): Adjust.
      	* bitmap.c (bitmap_element_allocate): Likewise.
      	(bitmap_gc_alloc_stat): Likewise.
      	* cfg.c (init_flow): Likewise.
      	(alloc_block): Likewise.
      	(unchecked_make_edge): Likewise.
      	* cfgloop.c (alloc_loop): Likewise.
      	(flow_loops_find): Likewise.
      	(rescan_loop_exit): Likewise.
      	* cfgrtl.c (init_rtl_bb_info): Likewise.
      	* cgraph.c (insert_new_cgraph_node_version): Likewise.
      	(cgraph_allocate_node): Likewise.
      	(cgraph_create_edge_1): Likewise.
      	(cgraph_allocate_init_indirect_info): Likewise.
      	* cgraphclones.c (cgraph_clone_edge): Likewise.
      	* cgraphunit.c (add_asm_node): Likewise.
      	(init_lowered_empty_function): Likewise.
      	* config/aarch64/aarch64.c (aarch64_init_machine_status):
      	Likewise.
      	* config/alpha/alpha.c (alpha_init_machine_status): Likewise.
      	(alpha_use_linkage): Likewise.
      	* config/arc/arc.c (arc_init_machine_status): Likewise.
      	* config/arm/arm.c (arm_init_machine_status): Likewise.
      	* config/avr/avr.c (avr_init_machine_status): Likewise.
      	* config/bfin/bfin.c (bfin_init_machine_status): Likewise.
      	* config/c6x/c6x.c (c6x_init_machine_status): Likewise.
      	* config/cris/cris.c (cris_init_machine_status): Likewise.
      	* config/darwin.c (machopic_indirection_name): Likewise.
      	(darwin_build_constant_cfstring): Likewise.
      	(darwin_enter_string_into_cfstring_table): Likewise.
      	* config/epiphany/epiphany.c (epiphany_init_machine_status):
      	* Likewise.
      	* config/frv/frv.c (frv_init_machine_status): Likewise.
      	* config/i386/i386.c (get_dllimport_decl): Likewise.
      	(ix86_init_machine_status): Likewise.
      	(assign_386_stack_local): Likewise.
      	* config/i386/winnt.c (i386_pe_record_external_function):
      	Likewise.
      	(i386_pe_maybe_record_exported_symbol): Likewise.
      	(i386_pe_record_stub): Likewise.
      	* config/ia64/ia64.c (ia64_init_machine_status): Likewise.
      	* config/iq2000/iq2000.c (iq2000_init_machine_status): Likewise.
      	* config/m32c/m32c.c (m32c_init_machine_status): Likewise.
      	(m32c_note_pragma_address): Likewise.
      	* config/mep/mep.c (mep_init_machine_status): Likewise.
      	(mep_note_pragma_flag): Likewise.
      	* config/mips/mips.c (mflip_mips16_use_mips16_p): Likewise.
      	(mips16_local_alias): Likewise.
      	(mips_init_machine_status): Likewise.
      	* config/mmix/mmix.c (mmix_init_machine_status): Likewise.
      	* config/moxie/moxie.c (moxie_init_machine_status): Likewise.
      	* config/msp430/msp430.c (msp430_init_machine_status): Likewise.
      	* config/nds32/nds32.c (nds32_init_machine_status): Likewise.
      	* config/nios2/nios2.c (nios2_init_machine_status): Likewise.
      	* config/pa/pa.c (pa_init_machine_status): Likewise.
      	(pa_get_deferred_plabel): Likewise.
      	* config/rl78/rl78.c (rl78_init_machine_status): Likewise.
      	* config/rs6000/rs6000.c (builtin_function_type): Likewise.
      	(rs6000_init_machine_status): Likewise.
      	(output_toc): Likewise.
      	* config/s390/s390.c (s390_init_machine_status): Likewise.
      	* config/score/score.c (score_output_external): Likewise.
      	* config/sparc/sparc.c (sparc_init_machine_status): Likewise.
      	* config/spu/spu.c (spu_init_machine_status): Likewise.
      	* config/tilegx/tilegx.c (tilegx_init_machine_status): Likewise.
      	* config/tilepro/tilepro.c (tilepro_init_machine_status):
      	* Likewise.
      	* config/xtensa/xtensa.c (xtensa_init_machine_status): Likewise.
      	* coverage.c (coverage_end_function): Likewise.
      	* dbxout.c (dbxout_init): Likewise.
      	* doc/gty.texi: Don't mention variable_size attribute.
      	* dwarf2cfi.c (new_cfi): Adjust.
      	(new_cfi_row): Likewise.
      	(copy_cfi_row): Likewise.
      	(create_cie_data): Likewise.
      	* dwarf2out.c (dwarf2out_alloc_current_fde): Likewise.
      	(new_loc_descr): Likewise.
      	(find_AT_string_in_table): Likewise.
      	(add_addr_table_entry): Likewise.
      	(new_die): Likewise.
      	(add_var_loc_to_decl): Likewise.
      	(clone_die): Likewise.
      	(clone_as_declaration): Likewise.
      	(break_out_comdat_types): Likewise.
      	(new_loc_list): Likewise.
      	(add_loc_descr_to_each): Likewise.
      	(add_location_or_const_value_attribute): Likewise.
      	(add_linkage_name): Likewise.
      	(lookup_filename): Likewise.
      	(dwarf2out_var_location): Likewise.
      	(new_line_info_table): Likewise.
      	(dwarf2out_init): Likewise.
      	(mem_loc_descriptor): Likewise.
      	(loc_descriptor): Likewise.
      	(add_const_value_attribute): Likewise.
      	(tree_add_const_value_attribute): Likewise.
      	(comp_dir_string): Likewise.
      	(dwarf2out_vms_debug_main_pointer): Likewise.
      	(string_cst_pool_decl): Likewise.
      	* emit-rtl.c (set_mem_attrs): Likewise.
      	(get_reg_attrs): Likewise.
      	(start_sequence): Likewise.
      	(init_emit): Likewise.
      	(init_emit_regs): Likewise.
      	* except.c (init_eh_for_function): Likewise.
      	(gen_eh_region): Likewise.
      	(gen_eh_region_catch): Likewise.
      	(gen_eh_landing_pad): Likewise.
      	(add_call_site): Likewise.
      	* function.c (add_frame_space): Likewise.
      	(insert_temp_slot_address): Likewise.
      	(assign_stack_temp_for_type): Likewise.
      	(get_hard_reg_initial_val): Likewise.
      	(allocate_struct_function): Likewise.
      	(prepare_function_start): Likewise.
      	(types_used_by_var_decl_insert): Likewise.
      	* gengtype.c (variable_size_p): Remove function.
      	(enum alloc_quantity): Remove enum.
      	(write_typed_alloc_def): Remove function.
      	(write_typed_struct_alloc_def): Likewise.
      	(write_typed_typedef_alloc_def): Likewise.
      	(write_typed_alloc_defns): Likewise.
      	(main): Adjust.
      	* ggc-common.c (ggc_cleared_alloc_htab_ignore_args): Adjust.
      	(ggc_cleared_alloc_ptr_array_two_args): Likewise.
      	* ggc.h (ggc_alloc): new function.
      	(ggc_cleared_alloc): Likewise.
      	(ggc_vec_alloc): Template on type of vector element, and remove
      	element size argument.
      	(ggc_cleared_vec_alloc): Likewise.
      	* gimple.c (gimple_build_omp_for): Adjust.
      	(gimple_copy): Likewise.
      	* ipa-cp.c (get_replacement_map): Likewise.
      	(find_aggregate_values_for_callers_subset): Likewise.
      	(known_aggs_to_agg_replacement_list): Likewise.
      	* ipa-devirt.c (get_odr_type): Likewise.
      	* ipa-prop.c (ipa_node_duplication_hook): Likewise.
      	(read_agg_replacement_chain): Likewise.
      	* loop-iv.c (get_simple_loop_desc): Likewise.
      	* lto-cgraph.c (input_node_opt_summary): Likewise.
      	* lto-section-in.c (lto_new_in_decl_state): Likewise.
      	* lto-streamer-in.c (lto_input_eh_catch_list): Likewise.
      	(input_eh_region): Likewise.
      	(input_eh_lp): Likewise.
      	(input_cfg): Likewise.
      	* optabs.c (set_optab_libfunc): Likewise.
      	(init_tree_optimization_optabs): Likewise.
      	(set_conv_libfunc): Likewise.
      	* passes.c (do_per_function_toporder): Likewise.
      	* rtl.h: Don't use variable_size gty attribute.
      	* sese.c (if_region_set_false_region): Adjust.
      	* stringpool.c (gt_pch_save_stringpool): Likewise.
      	* target-globals.c (save_target_globals): Likewise.
      	* toplev.c (general_init): Likewise.
      	* trans-mem.c (record_tm_replacement): Likewise.
      	(split_bb_make_tm_edge): Likewise.
      	* tree-cfg.c (move_sese_region_to_fn): Likewise.
      	* tree-data-ref.h (lambda_vector_new): Likewise.
      	* tree-eh.c (add_stmt_to_eh_lp_fn): Likewise.
      	* tree-iterator.c (tsi_link_before): Likewise.
      	(tsi_link_after): Likewise.
      	* tree-scalar-evolution.c (new_scev_info_str): Likewise.
      	* tree-ssa-loop-niter.c (record_estimate): Likewise.
      	* tree-ssa-operands.c (ssa_operand_alloc): Likewise.
      	* tree-ssa-operands.h: Don't use variable_size gty attribute.
      	* tree-ssa.c (init_tree_ssa): Adjust.
      	* tree-ssanames.c (set_range_info): Likewise.
      	(get_ptr_info): Likewise.
      	(duplicate_ssa_name_ptr_info): Likewise.
      	(duplicate_ssa_name_range_info): Likewise.
      	* tree-streamer-in.c (unpack_ts_real_cst_value_fields): Likewise.
      	(unpack_ts_fixed_cst_value_fields): Likewise.
      	* tree.c (build_fixed): Likewise.
      	(build_real): Likewise.
      	(build_string): Likewise.
      	(decl_priority_info): Likewise.
      	(decl_debug_expr_insert): Likewise.
      	(decl_value_expr_insert): Likewise.
      	(decl_debug_args_insert): Likewise.
      	(type_hash_add): Likewise.
      	(build_omp_clause): Likewise.
      	* ubsan.c (decl_for_type_insert): Likewise.
      	* varasm.c (get_unnamed_section): Likewise.
      	(get_noswitch_section): Likewise.
      	(get_section): Likewise.
      	(get_block_for_section): Likewise.
      	(create_block_symbol): Likewise.
      	(build_constant_desc): Likewise.
      	(create_constant_pool): Likewise.
      	(force_const_mem): Likewise.
      	(record_tm_clone_pair): Likewise.
      	* varpool.c (varpool_create_empty_node): Likewise.
      
      gcc/c/ChangeLog:
      
      	* c-decl.c (finish_struct): Adjust.
      	(finish_enum): Likewise.
      	(bind): Adjust.
      	(record_inline_static): Likewise.
      	(push_scope): Likewise.
      	(make_label): Likewise.
      	(lookup_label_for_goto): Likewise.
      	(finish_struct): Likewise.
      	(finish_enum): Likewise.
      	(store_parm_decls): Likewise.
      	(c_push_function_context): Likewise.
      	* c-lang.h: Remove usage of variable_size gty attribute.
      	* c-parser.c (c_parse_init): Adjust.
      	(c_parse_file): Likewise.
      
      gcc/java/ChangeLog:
      
      	* class.c (add_method_1): Adjust.
      	(java_treetreehash_new): Likewise.
      	* constants.c (set_constant_entry): Likewise.
      	(cpool_for_class): Likewise.
      	* decl.c (make_binding_level): Likewise.
      	(java_dup_lang_specific_decl): Likewise.
      	* expr.c (add_type_assertion): Likewise.
      	* java-tree.h (MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC): Likewise.
      	(lang_decl): don't use variable_size gty attribute.
      	(MAYBE_CREATE_TYPE_TYPE_LANG_SPECIFIC): Adjust.
      	(lang_type): Don't use variable_size gty attribute.
      	* jcf-parse.c (java_parse_file): Adjust.
      	(process_zip_dir): Likewise.
      	* jcf.h: Remove usage of variable_size gty attribute.
      	* jcf-reader.c (jcf_parse_constant_pool): Adjust.
      	(jcf_parse_bootstrap_methods): Likewise.
      
      gcc/objc/ChangeLog:
      
      	* objc-act.c (objc_build_string_object): Adjust.
      	(continue_class): Likewise.
      	* objc-act.h (ALLOC_OBJC_TYPE_LANG_SPECIFIC): Likewise.
      	* objc-map.c (objc_map_alloc_ggc): Likewise.
      	(objc_map_private_resize): Likewise.
      	* objc-next-runtime-abi-02.c (objc_next_runtime_abi_02_init):
      	Likewise.
      	(hash_name_enter): Likewise.
      
      gcc/cp/ChangeLog:
      
      	* class.c (sorted_fields_type_new): Adjust.
      	* cp-cilkplus.c (cilk_install_body_with_frame_cleanup): Likewise.
      	* cp-objcp-common.c (decl_shadowed_for_var_insert): Likewise.
      	* cp-tree.h: Remove usage of variable_size gty attribute.
      	* decl.c (make_label_decl): Adjust.
      	(check_goto): Likewise.
      	(start_preparsed_function): Likewise.
      	(save_function_data): Likewise.
      	* lex.c (init_reswords): Likewise.
      	(retrofit_lang_decl): Likewise.
      	(cxx_dup_lang_specific_decl): Likewise.
      	(copy_lang_type): Likewise.
      	(cxx_make_type): Likewise.
      	* name-lookup.c (binding_entry_make): Likewise.
      	(binding_table_construct): Likewise.
      	(binding_table_new): Likewise.
      	(cxx_binding_make): Likewise.
      	(pushdecl_maybe_friend_1): Likewise.
      	(begin_scope): Likewise.
      	(push_to_top_level): Likewise.
      	* parser.c (cp_lexer_alloc): Likewise.
      	(cp_lexer_new_from_tokens): Likewise.
      	(cp_token_cache_new): Likewise.
      	(cp_parser_context_new): Likewise.
      	(cp_parser_new): Likewise.
      	(cp_parser_nested_name_specifier_opt): Likewise.
      	(cp_parser_template_id): Likewise.
      	* pt.c (maybe_process_partial_specialization): Likewise.
      	(register_specialization): Likewise.
      	(add_pending_template): Likewise.
      	(lookup_template_class_1): Likewise.
      	(push_tinst_level): Likewise.
      	* semantics.c (register_constexpr_fundef): Likewise.
      	(cxx_eval_call_expression): Likewise.
      	* typeck2.c (abstract_virtuals_error_sfinae): Likewise.
      
      gcc/fortran/ChangeLog:
      
      	* f95-lang.c (pushlevel): Adjust.
      	* trans-decl.c (gfc_allocate_lang_decl): Adjust.
      	(gfc_find_module): Likewise.
      	* trans-types.c (gfc_get_nodesc_array_type): Likewise.
      	(gfc_get_array_type_bounds): Likewise.
      	(gfc_nonrestricted_type): Likewise.
      	* trans.h: Don't use variable_size gty attribute.
      
      gcc/ada/ChangeLog:
      
      	* gcc-interface/ada-tree.h: Remove usage of variable_size gty
      	annotation.
      	* gcc-interface/decl.c (annotate_value): Adjust.
      	* gcc-interface/trans.c (Attribute_to_gnu): Likewise.
      	(push_range_check_info): Likewise.
      	(Loop_Statement_to_gnu): Likewise.
      	(Subprogram_Body_to_gnu): Likewise.
      	(Compilation_Unit_to_gnu): Likewise.
      	(start_stmt_group): Likewise.
      	* gcc-interface/utils.c (init_gnat_utils): Likewise.
      	(gnat_pushlevel): Likewise.
      	(maybe_pad_type): Likewise.
      
      gcc/go/ChangeLog:
      
      	* go-lang.c (struct GTY): Don't use variable_size gty attribute.
      
      gcc/c-family/ChangeLog:
      
      	* c-common.h (sorted_fields_type): Remove variable_size GTY attribute.
      	* c-pragma.c (push_alignment): Adjust.
      	(handle_pragma_push_options): Likewise.
      
      gcc/lto/ChangeLog:
      
      	* lto-tree.h: Don't use variable_size gty attribute.
      	* lto.c (lto_read_in_decl_state): Adjust.
      	(create_subid_section_table): Likewise.
      	(lto_flatten_files): Likewise.
      	(read_cgraph_and_symbols): Likewise.
      
      gcc/objcp/ChangeLog:
      
      	* objcp-decl.h: Adjust.
      
      From-SVN: r210566
      Trevor Saunders committed
  4. 02 Jan, 2014 1 commit
  5. 09 Dec, 2013 1 commit
    • 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
  6. 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
  7. 19 Nov, 2013 1 commit
    • 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
  8. 14 Nov, 2013 1 commit
    • gimplify-be.h: New file. · 18f429e2
      
      	* gimplify-be.h:  New file.  Add prototypes.
      	* gimplify.h: Don't include gimple.h.
      	(struct gimplify_hasher, struct gimplify_ctx, is_gimple_sizepos,
      	gimplify_hasher::hash, gimplify_hasher::equal): Relocate from gimple.h.
      	* gimple.h (struct gimplify_hasher, gimplify_hasher::hash,
      	gimplify_hasher::equal, struct gimplify_ctx, is_gimple_sizepos): Move
      	to gimplify.h.
      	(enum gsi_iterator_update): Move to gimple-iterator.h.
      	* gimple-iterator.h (enum gsi_iterator_update): Relocate from gimple.h.
      	* gimplify-be.c: New File.
      	(force_gimple_operand_1, force_gimple_operand,
      	force_gimple_operand_gsi_1, force_gimple_operand_gsi): Relocate from
      	gimplify.c.
      	* gimplify.c (force_gimple_operand_1, force_gimple_operand,
      	force_gimple_operand_gsi_1, force_gimple_operand_gsi): Move to
      	gimplify-be.c.
      	* Makefile.in (OBJS): Add gimplify-be.o
      	* asan.c: Include only gimplify.h, gimplify-be.h, and/or gimple.h as
      	required.
      	* cfgloopmanip.c: Likewise.
      	* cgraphunit.c: Likewise.
      	* cilk-common.c: Likewise.
      	* fold-const.c: Likewise.
      	* function.c: Likewise.
      	* gimple-expr.c: Likewise.
      	* gimple-fold.c: Likewise.
      	* gimple-ssa-strength-reduction.c: Likewise.
      	* gimple.c: Likewise.
      	* graphite-clast-to-gimple.c: Likewise.
      	* graphite-sese-to-poly.c: Likewise.
      	* ipa-prop.c: Likewise.
      	* ipa-split.c: Likewise.
      	* ipa.c: Likewise.
      	* langhooks.c: Likewise.
      	* omp-low.c: Likewise.
      	* sese.c: Likewise.
      	* stor-layout.c: Likewise.
      	* targhooks.c: Likewise.
      	* trans-mem.c: Likewise.
      	* tree-affine.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-complex.c: Likewise.
      	* tree-if-conv.c: Likewise.
      	* tree-inline.c: Likewise.
      	* tree-loop-distribution.c: Likewise.
      	* tree-nested.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-address.c: Likewise.
      	* tree-ssa-ccp.c: Likewise.
      	* tree-ssa-dce.c: Likewise.
      	* tree-ssa-forwprop.c: Likewise.
      	* tree-ssa-ifcombine.c: Likewise.
      	* tree-ssa-loop-im.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-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-strlen.c: Likewise.
      	* tree-ssa.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-stmts.c: Likewise.
      	* tree.c: Likewise.
      	* tsan.c: Likewise.
      	* value-prof.c: Likewise.
      	* config/aarch64/aarch64.c: Likewise.
      	* config/alpha/alpha.c: Likewise.
      	* config/darwin.c: Likewise.
      	* config/i386/i386.c: Likewise.
      	* config/ia64/ia64.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.
      
      	* c/c-typeck.c: Include only gimplify.h and gimple.h as needed.
      	* c-family/c-common.c: Likewise.
      	* c-family/c-gimplify.c: Likewise.
      	* c-family/cilk.c: Likewise.
      
      	* cp/class.c: Include only gimplify.h and gimple.h as needed.
      	* cp/cp-gimplify.c: Likewise.
      	* cp/error.c: Likewise.
      	* cp/init.c: Likewise.
      	* cp/optimize.c: Likewise.
      	* cp/pt.c: Likewise.
      	* cp/semantics.c: Likewise.
      	* cp/tree.c: Likewise.
      	* cp/vtable-class-hierarchy.c: Likewise.
      
      	* fortran/trans-expr.c: Include only gimplify.h and gimple.h as needed.
      	* fortran/trans-openmp.c: Likewise.
      
      	* go/go-lang.c: Include only gimplify.h and gimple.h as needed.
      
      	* java/java-gimplify.c: Include only gimplify.h and gimple.h as needed.
      
      	* objc/objc-act.c: Include only gimplify.h and gimple.h as needed.
      
      From-SVN: r204812
      Andrew MacLeod committed
  9. 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
  10. 12 Nov, 2013 1 commit
    • gimple-expr.h (create_tmp_var_name, [...]): Relocate prototypes from gimple.h. · 45b0be94
      2013-11-12  Andrew MacLeod  <amacleod@redhat.com>
      
      	* gimple-expr.h (create_tmp_var_name, create_tmp_var_raw,
      	create_tmp_var, create_tmp_reg, mark_addressable, is_gimple_reg_rhs):
      	Relocate prototypes from gimple.h.
      	* gimplify.h: New File.  Relocate some prototypes from gimple.h here.
      	(gimple_predicate, enum fallback, enum gimplify_status): Relocate
      	from gimple.h.
      	* gimple.h: Move some prototypes to gimplify.h.
      	(gimple_predicate, enum fallback, enum gimplify_status): Move to
      	gimplify.h.
      	(gimple_do_not_emit_location_p, gimple_set_do_not_emit_location):
      	Relocate from gimpify.c.
      	* gimple-expr.c (remove_suffix, tmp_var_id_num, create_tmp_var_name,
      	create_tmp_var_raw, create_tmp_var, create_tmp_reg, mark_addressable,
      	is_gimple_reg_rhs) Relocate from gimplify.c.
      	* gimplify.c (mark_addressable): Move to gimple-expr.c.
      	(gimple_seq_add_stmt_without_update): Move to gimple.c.
      	(remove_suffix, tmp_var_id_num, create_tmp_var_name, create_tmp_var_raw,
      	create_tmp_var, create_tmp_reg, is_gimple_reg_rhs): Move to 
      	gimple-expr.c.
      	(should_carry_location_p): Move to gimple.c.
      	(gimple_do_not_emit_location_p, gimple_set_do_not_emit_location): Move
      	to gimple.h.
      	(annotate_one_with_location, annotate_all_with_location_after,
      	annotate_all_with_location): Move to gimple.c.
      	(compare_case_labels, sort_case_labels,
      	preprocess_case_label_vec_for_gimple): Move to gimple.c.
      	(rhs_predicate_for): Make static.
      	(gimplify_assign): Relocate from gimple.c.
      	* gimple.c (gimplify_assign): Move to gimplify.c.
      	(gimple_seq_add_stmt_without_update, should_carry_location_p,
      	annotate_one_with_location, annotate_all_with_location_after,
      	annotate_all_with_location, compare_case_labels, sort_case_labels,
      	preprocess_case_label_vec_for_gimple): Relocate from gimplify.c.
      	* tree.h (unshare_expr, unshare_expr_without_location,
      	mark_addressable): Move prototypes to gimplify.h.
      	* Makefile.in (GTFILES): gimple-expr.c now has the GTY tag for
      	tmp_var_id_num
      	* asan.c: Include gimplify.h rather than gimple.h.
      	* cfgloopmanip.c: Likewise.
      	* cgraphunit.c: Likewise.
      	* cilk-common.c: Likewise.
      	* dwarf2out.c: Dont include gimple.h.
      	* fold-const.c: Include gimplify.h rather than gimple.h.
      	* function.c: Likewise.
      	* gimple-fold.c: Likewise.
      	* gimple-ssa-strength-reduction.c: Likewise.
      	* graphite-clast-to-gimple.c: Likewise.
      	* graphite-sese-to-poly.c: Likewise.
      	* ipa-prop.c: Likewise.
      	* ipa-split.c: Likewise.
      	* ipa.c: Likewise.
      	* langhooks.c: Dont include gimple.h.
      	* loop-init.c: Include gimplify.h rather than gimple.h.
      	* omp-low.c: Likewise.
      	* sese.c: Likewise.
      	* stor-layout.c: Likewise.
      	* targhooks.c: Likewise.
      	* trans-mem.c: Likewise.
      	* tree-affine.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-complex.c: Likewise.
      	* tree-if-conv.c: Likewise.
      	* tree-inline.c: Likewise.
      	* tree-iterator.c: Likewise.
      	* tree-loop-distribution.c: Likewise.
      	* tree-nested.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-address.c: Likewise.
      	* tree-ssa-ccp.c: Likewise.
      	* tree-ssa-dce.c: Likewise.
      	* tree-ssa-forwprop.c: Likewise.
      	* tree-ssa-ifcombine.c: Likewise.
      	* tree-ssa-loop-im.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-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-strlen.c: Likewise.
      	* tree-ssa.c: Likewise.
      	* tree-switch-conversio: Likewise.n.c
      	* 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-stmts.c: Likewise.
      	* tsan.c: Likewise.
      	* value-prof.c: Likewise.
      	* config/aarch64/aarch64.c: Include gimplify.h instead of gimple.h.
      	* config/alpha/alpha.c: Likewise.
      	* config/darwin.c: Likewise.
      	* config/i386/i386.c: Likewise.
      	* config/ia64/ia64.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.
      
      	* ada/gcc-interface/trans.c: Include gimplify.h.
      
      	* c/c-typeck.c: Include gimplify.h.
      
      	* c-family/c-common.c: Include gimplify.h.
      	* c-family/c-gimplify.c: Likewise.
      	* c-family/cilk.c: Likewise.
      	* c-family/c-omp.c: Include gimple-expr.h instead of gimple.h.
      	* c-family/c-ubsan.c: Don't include gimple.h.
      
      	* cp/class.c: Include gimplify.h.
      	* cp/cp-gimplify.c: Likewise.
      	* cp/error.c: Likewise.
      	* cp/init.c: Likewise.
      	* cp/optimize.c: Likewise.
      	* cp/pt.c: Likewise.
      	* cp/semantics.c: Likewise.
      	* cp/tree.c: Likewise.
      	* cp/vtable-class-hierarchy.c: Likewise.
      	* cp/decl2.c: Don't include gimple.h.
      	* cp/except.c: Likewise.
      	* cp/method.c: Include pointer-set.h instead of gimple.h.
      
      	* fortran/f95-lang.c: Don't include gimple.h.
      	* fortran/trans-array.c: Include gimple-expr.h instead of gimple.h.
      	* fortran/trans.c: Likewise.
      	* fortran/trans-decl.c: Likewise.
      	* fortran/trans-expr.c: Include gimplify.h.
      	* fortran/trans-openmp.c: Likewise.
      
      	* go/go-lang.c: Include gimplify.h.
      
      	* java/java-gimplify.c: Include gimplify.h.
      
      	* objc/objc-act.c: Include gimplify.h.
      
      From-SVN: r204717
      Andrew MacLeod committed
  11. 23 Oct, 2013 1 commit
    • 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
  12. 02 Oct, 2013 2 commits
    • 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
    • tree-flow.h: Include new .h files. · cf2d1b38
      	* tree-flow.h: Include new .h files.  Move prototypes.
      	* tree-cfgcleanup.h: New file.  Add prototypes from tree-flow.h.
      	* tree-dfa.h: New File.  Add prototypes from tree-flow.h.
      	(get_addr_base_and_unit_offset_1) Move from tree-flow-inline.h.
      	* tree-pretty-print.h: Add prototypes from tree-flow.h.
      	* tree-into-ssa.h: New File.  Add prototypes from tree-flow.h.
      	({debug|dump}*): Move debugging prototypes out of tree-into-ssa.c.
      	* tree-into-ssa.c ({debug|dump}*): Move prototypes to header file.
      	* tree.h (get_ref_base_and_extent): Move prototype out.
      	* tree-flow-inline.h (get_addr_base_and_unit_offset_1): Move to 
      	tree-dfa.h.
      	* gimple-low.h: New File.  Add prototypes from tree-flow.h.
      	* gimple-low.c (try_catch_may_fallthru, block_may_fallthru): Move to...
      	* tree.c (try_catch_may_fallthru, block_may_fallthru): Here.
      	* tree-scalar-evolution.c: Include tree.h.
      	* sese.c: Include tree.h.
      	* dumpfile.c: Move gimple-pretty-print.h include after tree.h.
      	* dwarf2out.c: Include tree-dfa.h.
      	* tree-chrec.c: Include tree.h.
      	* tree-data-ref.c: Include tree.h.
      
      From-SVN: r203113
      Andrew Macleod committed
  13. 12 Sep, 2013 1 commit
    • tree-ssa.h: New. · 7a300452
      	* tree-ssa.h: New.  Move content from tree-flow.h and
      	tree-flow-inline.h.
      	* tree-flow.h (_edge_var_map, edge_var_map_vector): Move to tree-ssa.h.
      	Move prototypes belonging to tree-ssa.c.
      	* tree-flow-inline.h (redirect_edge_var_map_def, 
      	redirect_edge_var_map_result, redirect_edge_var_map_location): Move to
      	tree-ssa.h.
      	* gimple.h: Adjust prototypes.
      	* tree-ssa.c (useless_type_conversion_p, types_compatible_p): Move to...
      	* gimple.c (useless_type_conversion_p, types_compatible_p):  Here.
      	* tree.h: Move prototype to tree-ssa.h.
      	* gengtype.c (open_base_files): Replace tree-flow.h with tree-ssa.h.
      	* Makefile.in: (TREE_SSA_H, TREE_FLOW_H): Adjust dependencies.
      	* alias.c, asan.c, builtins.c, calls.c, cfgexpand.c, cfghooks.c,
      	cfgloop.c, cfgloopmanip.c, cgraph.c, cgraphbuild.c, cgraphclones.c,
      	cgraphunit.c, dse.c, except.c, expr.c, final.c, fold-const.c,
      	ggc-page.c, gimple-fold.c, gimple-iterator.c, gimple-low.c,
      	gimple-pretty-print.c, gimple-ssa-strength-reduction.c,
      	gimple-streamer-in.c, gimple-streamer-out.c, gimple.c, gimplify.c,
      	graphite-blocking.c, graphite-clast-to-gimple.c, graphite-dependences.c,
      	graphite-interchange.c, graphite-optimize-isl.c, graphite-poly.c,
      	graphite-scop-detection.c, graphite-sese-to-poly.c, graphite.c,
      	ipa-cp.c, ipa-inline-analysis.c, ipa-inline-transform.c, ipa-inline.c,
      	ipa-prop.c, ipa-pure-const.c, ipa-reference.c, ipa-split.c, ipa-utils.c,
      	loop-init.c, lto-cgraph.c, lto-section-in.c, lto-section-out.c,
      	lto-streamer-in.c, lto-streamer-out.c, lto-streamer.c, omp-low.c,
      	passes.c, predict.c, print-tree.c, profile.c, sese.c, targhooks.c,
      	tracer.c, trans-mem.c, tree-call-cdce.c, tree-cfg.c, tree-cfgcleanup.c,
      	tree-chrec.c, tree-complex.c, tree-data-ref.c, tree-dfa.c, tree-eh.c,
      	tree-emutls.c, tree-if-conv.c, tree-inline.c, tree-into-ssa.c,
      	tree-loop-distribution.c, tree-mudflap.c, tree-nested.c, tree-nrv.c,
      	tree-object-size.c, tree-optimize.c, tree-outof-ssa.c, tree-parloops.c,
      	tree-phinodes.c, tree-predcom.c, tree-pretty-print.c, tree-profile.c,
      	tree-scalar-evolution.c, tree-sra.c, tree-ssa*.c, tree-stdarg.c,
      	tree-streamer-in.c, tree-switch-conversion.c, tree-tailcall.c,
      	tree-vect-data-refs.c, tree-vect-generic.c, tree-vect-loop-manip.c,
      	tree-vect-loop.c, tree-vect-patterns.c, tree-vect-slp.c,
      	tree-vect-stmts.c, tree-vectorizer.c, tree-vrp.c, tsan.c,
      	value-prof.c, var-tracking.c,
      	varpool.c, vtable-verify.c: Replace tree-flow.h with tree-ssa.h
      
      From-SVN: r202523
      Andrew MacLeod committed
  14. 26 Apr, 2013 1 commit
    • This patch is the main part of a consolodation of the hash_table patches to the... · 4a8fb1a1
      This patch is the main part of a consolodation of the hash_table
      patches to the cxx-conversion branch for files not under gcc/config.
      
      Update various hash tables from htab_t to hash_table.
      Modify types and calls to match.
      
      * tree-parloops.c'reduction
      * tree-parloops.c'name_to_copy
      
      Fold reduction_info_hash and reduction_info_eq into new struct
      reduction_hasher.  Fold name_to_copy_elt_eq and name_to_copy_elt_hash
      into new struct name_to_copy_hasher.
      
      * trans-mem.c'tm_log
      
      Fold tm_log_hash, tm_log_eq, tm_log_free into new struct log_entry_hasher.
      
      * trans-mem.c'tm_memopt_value_numbers
      
      Fold tm_memop_hash, tm_memop_eq into new struct tm_memop_hasher.
      
      * tree-ssa-strlen.c'decl_to_stridxlist_htab
      
      Fold decl_to_stridxlist_hash into new struct stridxlist_hasher.
      
      * tree-ssa-loop-ivopts.c'ivopts_data::inv_expr_tab
      
      Fold htab_inv_expr_hash and htab_inv_expr_eq into new struct
      iv_inv_expr_hasher.
      
      * tree-ssa-uncprop.c'equiv
      
      Equiv renamed to val_ssa_equiv because of name ambiguity with local variables.
      
      Fold equiv_hash, equiv_eq and equiv_free into new struct val_ssa_equiv_hasher.
      
      Renamed variables equiv_hash_elt to an_equiv_elt because of name ambiguity
      with struct type.  Changed equiv_hash_elt_p to an_equiv_elt_p to match.
      
      * tree-ssa-phiopt.c'seen_ssa_names
      
      Fold name_to_bb_hash and name_to_bb_eq into new struct ssa_names_hasher.
      
      * tree-ssa-structalias.c'pointer_equiv_class_table
      * tree-ssa-structalias.c'location_equiv_class_table
      
      Fold equiv_class_label_hash and equiv_class_label_eq into new
      struct equiv_class_hasher.
      
      * tree-ssa-structalias.c'shared_bitmap_table
      
      Fold shared_bitmap_hash and shared_bitmap_eq into new struct
      shared_bitmap_hasher.
      
      * tree-ssa-live.c'var_map_base_init::tree_to_index
      
      New struct tree_int_map_hasher.
      
      * tree-sra.c'candidates
      
      Fold uid_decl_map_hash and uid_decl_map_eq into new struct
      uid_decl_hasher.  This change moves the definitions from tree-ssa.c
      into tree-sra.c and removes the declarations from tree-flow.h
      
      tree-browser.c
      
      Remove stale declaration of removed TB_parent_eq.
      Fix template parameter for base class to match value_type.
      
      gimple.h
      
      Use gimplify_hasher::hash rather than gimple_tree_hash in the
        assertion check.
      Change return values to match return type. (I.e. no conversions.)
      
      * graphite-clast-to-gimple.c'ivs_params::newivs_index
      * graphite-clast-to-gimple.c'ivs_params::params_index
      * graphite-clast-to-gimple.c'print_generated_program::params_index
      * graphite-clast-to-gimple.c'gloog::newivs_index
      * graphite-clast-to-gimple.c'gloog::params_index
      * graphite.c graphite_transform_loops::bb_pbb_mapping
      * sese.c copy_bb_and_scalar_dependences::rename_map
      
      Move hash table declarations to a new graphite-htab.h, because they
      are used in few places.
      
      Remove unused:
      
      htab_t scop::original_pddrs
      SCOP_ORIGINAL_PDDRS
      
      Remove unused:
      
      insert_loop_close_phis
      insert_guard_phis
      debug_ivtype_map
      ivtype_map_elt_info
      new_ivtype_map_elt
      
      * gimplify.c'gimplify_ctx::temp_htab
      
      Move struct gimple_temp_hash_elt and struct gimplify_ctx to a new
      gimplify-ctx.h, because they are used few places.
      
      * cselib.c'cselib_hash_table
      * gcse.c'pre_ldst_table
      * gimple-ssa-strength-reduction.c'base_cand_map
      * haifa-sched.c'delay_htab
      * haifa-sched.c'delay_htab_i2
      * ira-color.c'allocno_hard_regs_htab
      * ira-costs.c'cost_classes_htab
      * loop-invariant.c'merge_identical_invariants::eq
      * loop-iv.c'bivs
      * loop-unroll.c'opt_info::insns_to_split
      * loop-unroll.c'opt_info::insns_with_var_to_expand
      * passes.c'name_to_pass_map
      * plugin.c'event_tab
      * postreload-gcse.c'expr_table
      * store-motion.c'store_motion_mems_table
      * tree-cfg.c'discriminator_per_locus
      * tree-scalar-evolution.c'resolve_mixers::cache
      * tree-ssa-dom.c'avail_exprs
      
      Remove unused:
      dse.c bitmap clear_alias_sets
      dse.c bitmap disqualified_clear_alias_sets
      dse.c alloc_pool clear_alias_mode_pool
      dse.c dse_step2_spill
      dse.c dse_step5_spill
      graphds.h htab_t graph::indices
      
      * attribs.c'scoped_attributes::attribute_hash
      * bitmap.c'bitmap_desc_hash
      * dwarf2cfi.c'trace_index
      * dwarf2out.c'break_out_includes::cu_hash_table
      * dwarf2out.c'copy_decls_for_unworthy_types::decl_table
      * dwarf2out.c'optimize_external_refs::map
      * dwarf2out.c'output_comp_unit::extern_map
      * dwarf2out.c'output_comdat_type_unit::extern_map
      * dwarf2out.c'output_macinfo::macinfo_htab
      * dwarf2out.c'optimize_location_lists::htab
      * dwarf2out.c'dwarf2out_finish::comdat_type_table
      * except.c'ehspec_hash_type
      * except.c'assign_filter_values::ttypes
      * except.c'assign_filter_values::ehspec
      * except.c'sjlj_assign_call_site_values::ar_hash
      * except.c'convert_to_eh_region_ranges::ar_hash
      * trans-mem.c'tm_new_mem_hash
      * tree-browser.c'TB_up_ht
      * tree-eh.c'finally_tree
      
      Move the declaration of hash_table <alloc_pool_hasher> alloc_pool_hash
      in alloc-pool.c to after the method definitions for its parameter
      class.
      
      * ggc-common.c'loc_hash
      * ggc-common.c'ptr_hash
      
      Add a new hash_table method elements_with_deleted to meet the needs of
      gcc-common.c.
      
      Correct many methods with parameter types compare_type to the correct
      value_type.  (Correct code was unlikely to notice the change, but
      incorrect code will.)
      
      * tree-complex.c'complex_variable_components
      * tree-parloops.c'eliminate_local_variables_stmt::decl_address
      * tree-parloops.c'separate_decls_in_region::decl_copies
      
      Move hash table declarations to a new tree-hasher.h, to resolve
      compilation dependences and because they are used in few places.
      
      * lto-streamer.h'output_block::string_hash_table
      * lto-streamer-in.c'file_name_hash_table
      * lto-streamer.c'tree_htab
      
      The struct string_slot moves from data-streamer.h to lto-streamer.h to
      resolve compilation dependences.
      
      Tested on x86_64.
      
      
      Index: gcc/ChangeLog
      
      2013-04-25  Lawrence Crowl  <crowl@google.com>
      
      	* Makefile.in: Update as needed below.
      
      	* alloc-pool.c (static hash_table <alloc_pool_hasher> alloc_pool_hash):
      	Move declaration to after the type's method definitons.
      
      	* attribs.c (htab_t scoped_attributes::attribute_hash):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* bitmap.c (htab_t bitmap_desc_hash):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* cselib.c (htab_t cselib_hash_table):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* data-streamer.h (struct string_slot): Move to lto-streamer.h.
      	(hash_string_slot_node): Move implementation into lto-streamer.h
      	struct string_slot_hasher.
      	(eq_string_slot_node): Likewise.
      
      	* data-streamer-out.c: Update output_block::string_hash_table
      	dependent calls and types.
      
      	* dwarf2cfi.c (htab_t trace_index):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* dwarf2out.c (htab_t break_out_includes::cu_hash_table):
      	Change type to hash_table.  Update dependent calls and types.
      	(htab_t copy_decls_for_unworthy_types::decl_table): Likewise.
      	(htab_t optimize_external_refs::map): Likewise.
      	(htab_t output_comp_unit::extern_map): Likewise.
      	(htab_t output_comdat_type_unit::extern_map): Likewise.
      	(htab_t output_macinfo::macinfo_htab): Likewise.
      	(htab_t optimize_location_lists::htab): Likewise.
      	(htab_t dwarf2out_finish::comdat_type_table): Likewise.
      
      	* except.c (htab_t ehspec_hash_type):
      	Change type to hash_table.  Update dependent calls and types.
      	(assign_filter_values::ttypes): Likewise.
      	(assign_filter_values::ehspec): Likewise.
      	(sjlj_assign_call_site_values::ar_hash): Likewise.
      	(convert_to_eh_region_ranges::ar_hash): Likewise.
      
      	* gcse.c (htab_t pre_ldst_table):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* ggc-common.c (htab_t saving_htab):
      	Change type to hash_table.  Update dependent calls and types.
      	(htab_t loc_hash): Likewise.
      	(htab_t ptr_hash): Likewise.
      	(call_count): Rename ggc_call_count.
      	(call_alloc): Rename ggc_call_alloc.
      	(loc_descriptor): Rename make_loc_descriptor.
      	(add_statistics): Rename ggc_add_statistics.
      
      	* ggc-common.c (saving_htab):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* gimple.h (struct gimplify_ctx): Move to gimplify-ctx.h.
      	(push_gimplify_context): Likewise.
      	(pop_gimplify_context): Likewise.
      	(struct gimple_temp_hash_elt): Added.
      	(struct gimplify_hasher): Likewise.
      	(struct gimplify_ctx.temp_htab):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* gimple-fold.c: Include gimplify-ctx.h.
      
      	* gimple-ssa-strength-reduction.c (htab_t base_cand_map):
      	Change type to hash_table.  Update dependent calls and types.
      	(base_cand_dump_callback): Rename to ssa_base_cand_dump_callback to
      	avoid potential global name collision.
      
      	* gimplify.c: Include gimplify-ctx.h.
      	(struct gimple_temp_hash_elt): Move to gimplify-ctx.h.
      	(htab_t gimplify_ctx::temp_htab):
      	Update dependent calls and types for new type hash_table.
      	(gimple_tree_hash): Move into gimplify_hasher in gimplify-ctx.h.
      	(gimple_tree_eq): Move into gimplify_hasher in gimplify-ctx.h.
      
      	* gimplify-ctx.h: New.
      	(struct gimple_temp_hash_elt): Move from gimplify.c.
      	(class gimplify_hasher): New.
      	(struct gimplify_ctx): Move from gimple.h.
      	(htab_t gimplify_ctx::temp_htab):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* graphite-clast-to-gimple.c: Include graphite-htab.h.
      	(htab_t ivs_params::newivs_index):
      	Change type to hash_table.  Update dependent calls and types.
      	(htab_t ivs_params::params_index): Likewise.
      	(htab_t print_generated_program::params_index): Likewise.
      	(htab_t gloog::newivs_index): Likewise.
      	(htab_t gloog::params_index): Likewise.
      
      	* graphite.c: Include graphite-htab.h.
      	4htab_t graphite_transform_loops::bb_pbb_mapping):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* graphite-clast-to-gimple.h: (extern gloog) Move to graphite-htab.h.
      	(bb_pbb_map_hash): Fold into bb_pbb_htab_type in graphite-htab.h.
      	(eq_bb_pbb_map): Fold into bb_pbb_htab_type in graphite-htab.h.
      
      	* graphite-dependences.c: Include graphite-htab.h.
      	(loop_is_parallel_p): Change hash table type of parameter.
      
      	* graphite-htab.h: New.
      	(typedef hash_table <bb_pbb_hasher> bb_pbb_htab_type): New.
      	(extern find_pbb_via_hash): Move from graphite-poly.h.
      	(extern loop_is_parallel_p): Move from graphite-poly.h.
      	(extern get_loop_body_pbbs): Move from graphite-poly.h.
      
      	* graphite-poly.h (extern find_pbb_via_hash): Move to graphite-htab.h.
      	(extern loop_is_parallel_p): Move to graphite-htab.h.
      	(extern get_loop_body_pbbs): Move to graphite-htab.h.
      
      	* haifa-sched.c (htab_t delay_htab):
      	Change type to hash_table.  Update dependent calls and types.
      	(htab_t delay_htab_i2): Likewise.
      
      	* ira-color.c (htab_t allocno_hard_regs_htab):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* ira-costs.c (htab_t cost_classes_htab):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* loop-invariant.c (htab_t merge_identical_invariants::eq):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* loop-iv.c (htab_t bivs):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* loop-unroll.c (htab_t opt_info::insns_to_split):
      	Change type to hash_table.  Update dependent calls and types.
      	(htab_t opt_info::insns_with_var_to_expand): Likewise.
      
      	* lto-streamer.h (struct string_slot): Move from data-streamer.h
      	(struct string_slot_hasher): New.
      	(htab_t output_block::string_hash_table):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* lto-streamer-in.c (freeing_string_slot_hasher): New.
      	(htab_t file_name_hash_table):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* lto-streamer-out.c: Update output_block::string_hash_table dependent
      	calls and types.
      
      	* lto-streamer.c (htab_t tree_htab):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* omp-low.c: Include gimplify-ctx.h.
      
      	* passes.c (htab_t name_to_pass_map):
      	Change type to hash_table.  Update dependent calls and types.
      	(pass_traverse): Rename to passes_pass_traverse.
      
      	* plugin.c (htab_t event_tab):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* postreload-gcse.c (htab_t expr_table):
      	Change type to hash_table.  Update dependent calls and types.
      	(dump_hash_table_entry): Rename dump_expr_hash_table_entry.
      
      	* sese.c (debug_rename_map_1): Make extern.
      	(htab_t copy_bb_and_scalar_dependences::rename_map):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* sese.h (extern debug_rename_map): Move to .c file.
      
      	* store-motion.c (htab_t store_motion_mems_table):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* trans-mem.c (htab_t tm_new_mem_hash):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* tree-browser.c (htab_t TB_up_ht):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* tree-cfg.c (htab_t discriminator_per_locus):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* tree-complex.c: Include tree-hasher.h
      	(htab_t complex_variable_components):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* tree-eh.c (htab_t finally_tree):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* tree-flow.h (extern int_tree_map_hash): Moved into tree-hasher
      	struct int_tree_hasher.
      	(extern int_tree_map_eq): Likewise.
      	(uid_decl_map_hash): Removed.
      	(extern decl_tree_map_eq): Likewise.
      
      	* tree-hasher.h: New.
      	(struct int_tree_hasher): New.
      	(typedef int_tree_htab_type): New.
      
      	* tree-inline.c: Include gimplify-ctx.h.
      
      	* tree-mudflap.c: Include gimplify-ctx.h.
      
      	* tree-parloops.c: Include tree-hasher.h.
      	(htab_t eliminate_local_variables_stmt::decl_address):
      	Change type to hash_table.  Update dependent calls and types.
      	(htab_t separate_decls_in_region::decl_copies): Likewise.
      
      	* tree-scalar-evolution.c (htab_t resolve_mixers::cache):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* tree-sra.c (candidates):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* tree-ssa.c (int_tree_map_eq): Moved into struct int_tree_hasher
      	in tree-flow.h.
      	(int_tree_map_hash): Likewise.
      
      	* tree-ssa-dom.c (htab_t avail_exprs):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* tree-ssa-live.c (var_map_base_init::tree_to_index):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* tree-ssa-loop-ivopts.c (struct ivopts_data.inv_expr_tab):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* tree-ssa-phiopt.c (seen_ssa_names):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* tree-ssa-strlen.c (decl_to_stridxlist_htab):
      	Change type to hash_table.  Update dependent calls and types.
      
      	* tree-ssa-uncprop.c (equiv):
      	Change type to hash_table.  Update dependent calls and types.
      
      From-SVN: r198329
      Lawrence Crowl committed
  15. 02 Apr, 2013 1 commit
    • Remove unused symbols related to ivtype_map. · 622849c9
      Remove unused symbols related to ivtype_map.  This map does not appear to
      exist and I see no evidence of its removal in the ChangeLog.
      
      Tested on x86_64.
      
      
      Index: gcc/ChangeLog
      
      2013-04-02  Lawrence Crowl  <crowl@google.com>
      
      	* sese.h (struct ivtype_map_elt_s): Remove unused.
      	(extern debug_ivtype_map): Remove unused.
      	(extern eq_ivtype_map_elts): Remove unused.
      	* sese.c (debug_ivtype_map): Removed unused.
      	(debug_ivtype_map_1): Removed unused.
      	(debug_ivtype_elt): Remove unused.
      	(eq_ivtype_map_elts): Remove unused.
      
      From-SVN: r197374
      Lawrence Crowl committed
  16. 29 Mar, 2013 1 commit
    • Remove various unused items. · 58a49189
      2013-03-28  Lawrence Crowl  <crowl@google.com>
      
      Index: gcc/ChangeLog
      
      	* graphds.h (struct graph.indicies): Remove unused.
      	* graphite-poly.h (struct graph.original_pddrs): Remove unused.
      	(SCOP_ORIGINAL_PDDRS): Remove unused.
      	* sese.h (extern insert_loop_close_phis): Removed unused.
      	(extern insert_guard_phis): Removed unused.
      	(extern ivtype_map_elt_info): Removed unused.
      	(new_ivtype_map_elt): Removed unused.
      	* sese.c (ivtype_map_elt_info): Removed unused.
      
      From-SVN: r197226
      Lawrence Crowl committed
  17. 10 Jan, 2013 1 commit
  18. 04 Jan, 2013 1 commit
  19. 18 Nov, 2012 1 commit
    • This patch rewrites the old VEC macro-based interface into a new one based on… · 9771b263
      This patch rewrites the old VEC macro-based interface into a new one based on the template class 'vec'.
      
      This patch rewrites the old VEC macro-based interface into a new one
      based on the template class 'vec'.  The user-visible changes are
      described in http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec.
      
      I have tested the patch pretty extensively:
      
      - Regular bootstraps on x86_64, ppc, ia64, sparc and hppa.
      - Bootstraps with --enable-checking=release
      - Bootstraps with --enable-checking=gc,gcac
      - Basic builds on all targets (using contrib/config-list.mk).
      
      We no longer access the vectors via VEC_* macros.  The pattern is
      "VEC_operation (T, A, V, args)" becomes "V.operation (args)".
      
      The only thing I could not do is create proper ctors and dtors for the
      vec class.  Since these vectors are stored in unions, we
      have to keep them as PODs (C++03 does not allow non-PODs in unions).
      
      This means that creation and destruction must be explicit.  There is a
      new method vec<type, allocation, layout>::create() and another vec<type,
      allocation, layout>::destroy() to allocate the internal vector.
      
      For vectors that must be pointers, there is a family of free functions
      that implement the operations that need to tolerate NULL vectors.
      These functions all start with the prefix 'vec_safe_'.  See the wiki
      page for details.
      
      The gengtype change removes the special handling for VEC() that used
      to exist in gengtype. Additionally, it allows gengtype to recognize
      templates of more than one argument and introduces the concept of an
      undefined type (useful for template arguments that may or may not be
      types).
      
      When a TYPE_UNDEFINED is reached, gengtype will ignore it if it
      happens inside a type marked with GTY((user)).  Otherwise, it will
      emit an error.
      
      Finally, gengtype rejects root types marked GTY((user)) that are not
      first class pointers.
      
      2012-11-16  Diego Novillo  <dnovillo@google.com>
      
      	VEC API overhaul (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
      
      	* vec.c (register_overhead): Convert it into
      	member function of vec_prefix.
      	(release_overhead): Likewise.
      	(calculate_allocation): Likewise.
      	(vec_heap_free): Remove.
      	(vec_gc_o_reserve_1): Remove.
      	(vec_heap_o_reserve_1): Remove.
      	(vec_stack_o_reserve_1): Remove.
      	(vec_stack_o_reserve_exact): Remove.
      	(register_stack_vec): New.
      	(stack_vec_register_index): New.
      	(unregister_stack_vec): New.
      	(vec_assert_fail): Remove.
      	* vec.h: Conditionally include ggc.h.  Document conditional
      	hackery.
      	Update top-level documentation.
      	(ALONE_VEC_CHECK_INFO): Remove.
      	(VEC_CHECK_INFO): Remove.
      	(ALONE_VEC_CHECK_DECL): Remove.
      	(VEC_CHECK_DECL): Remove.
      	(ALONE_VEC_CHECK_PASS): Remove.
      	(VEC_CHECK_PASS): Remove.
      	(VEC_ASSERT): Remove.
      	(vec_prefix): Add friends va_gc, va_gc_atomic, va_heap and
      	va_stack.
      	Mark fields alloc_ and num_ as protected.
      	(struct vec_t): Remove.  Remove all function members.
      	(struct vl_embed): Declare.
      	(struct vl_ptr): Declare.
      	(free): Remove.
      	(reserve_exact): Remove.
      	(reserve): Remove.
      	(safe_splice): Remove.
      	(safe_push): Remove.
      	(safe_grow): Remove.
      	(safe_grow_cleared): Remove.
      	(safe_insert): Remove.
      	(DEF_VEC_I): Remove.
      	(DEF_VEC_ALLOC_I): Remove.
      	(DEF_VEC_P): Remove.
      	(DEF_VEC_ALLOC_P): Remove.
      	(DEF_VEC_O): Remove.
      	(DEF_VEC_ALLOC_O): Remove.
      	(DEF_VEC_ALLOC_P_STACK): Remove.
      	(DEF_VEC_ALLOC_O_STACK): Remove.
      	(DEF_VEC_ALLOC_I_STACK): Remove.
      	(DEF_VEC_A): Remove.
      	(DEF_VEC_ALLOC_A): Remove.
      	(vec_stack_p_reserve_exact_1): Remove.
      	(vec_stack_o_reserve): Remove.
      	(vec_stack_o_reserve_exact): Remove.
      	(VEC_length): Remove.
      	(VEC_empty): Remove.
      	(VEC_address): Remove.
      	(vec_address): Remove.
      	(VEC_last): Remove.
      	(VEC_index): Remove.
      	(VEC_iterate): Remove.
      	(VEC_embedded_size): Remove.
      	(VEC_embedded_init): Remove.
      	(VEC_free): Remove.
      	(VEC_copy): Remove.
      	(VEC_space): Remove.
      	(VEC_reserve): Remove.
      	(VEC_reserve_exact): Remove.
      	(VEC_splice): Remove.
      	(VEC_safe_splice): Remove.
      	(VEC_quick_push): Remove.
      	(VEC_safe_push): Remove.
      	(VEC_pop): Remove.
      	(VEC_truncate): Remove.
      	(VEC_safe_grow): Remove.
      	(VEC_replace): Remove.
      	(VEC_quick_insert): Remove.
      	(VEC_safe_insert): Remove.
      	(VEC_ordered_remove): Remove.
      	(VEC_unordered_remove): Remove.
      	(VEC_block_remove): Remove.
      	(VEC_lower_bound): Remove.
      	(VEC_alloc): Remove.
      	(VEC_qsort): Remove.
      
      	(va_heap): Declare.
      	(va_heap::default_layout): New typedef to vl_ptr.
      	(va_heap::reserve): New.
      	(va_heap::release): New.
      	(va_gc): Declare.
      	(va_gc::default_layout): New typedef to vl_embed.
      	(va_gc::reserve): New.
      	(va_gc::release): New.
      	(va_gc_atomic): Declare.  Inherit from va_gc.
      	(va_stack): Declare.
      	(va_stack::default_layout): New typedef to vl_ptr.
      	(va_stack::alloc): New.
      	(va_stack::reserve): New.
      	(va_stack::release): New.
      	(register_stack_vec): Declare.
      	(stack_vec_register_index): Declare.
      	(unregister_stack_vec): Declare.
      
      	(vec<T, A = va_heap, L = typename A::default_layout>): Declare
      	empty vec template.
      	(vec<T, A, vl_embed>): Partial specialization for embedded
      	layout.
      	(vec<T, A, vl_embed>::allocated): New.
      	(vec<T, A, vl_embed>::length): New.
      	(vec<T, A, vl_embed>::is_empty): New.
      	(vec<T, A, vl_embed>::address): New.
      	(vec<T, A, vl_embed>::operator[]): New.
      	(vec<T, A, vl_embed>::last New.
      	(vec<T, A, vl_embed>::space): New.
      	(vec<T, A, vl_embed>::iterate): New.
      	(vec<T, A, vl_embed>::iterate): New.
      	(vec<T, A, vl_embed>::copy): New.
      	(vec<T, A, vl_embed>::splice): New.
      	(vec<T, A, vl_embed>::quick_push New.
      	(vec<T, A, vl_embed>::pop New.
      	(vec<T, A, vl_embed>::truncate): New.
      	(vec<T, A, vl_embed>::quick_insert): New.
      	(vec<T, A, vl_embed>::ordered_remove): New.
      	(vec<T, A, vl_embed>::unordered_remove): New.
      	(vec<T, A, vl_embed>::block_remove): New.
      	(vec<T, A, vl_embed>::qsort): New.
      	(vec<T, A, vl_embed>::lower_bound): New.
      	(vec<T, A, vl_embed>::embedded_size): New.
      	(vec<T, A, vl_embed>::embedded_init): New.
      	(vec<T, A, vl_embed>::quick_grow): New.
      	(vec<T, A, vl_embed>::quick_grow_cleared): New.
      	(vec_safe_space): New.
      	(vec_safe_length): New.
      	(vec_safe_address): New.
      	(vec_safe_is_empty): New.
      	(vec_safe_reserve): New.
      	(vec_safe_reserve_exact): New.
      	(vec_alloc): New.
      	(vec_free): New.
      	(vec_safe_grow): New.
      	(vec_safe_grow_cleared): New.
      	(vec_safe_iterate): New.
      	(vec_safe_push): New.
      	(vec_safe_insert): New.
      	(vec_safe_truncate): New.
      	(vec_safe_copy): New.
      	(vec_safe_splice): New.
      
      	(vec<T, A, vl_ptr>): New partial specialization for the space
      	efficient layout.
      	(vec<T, A, vl_ptr>::exists): New.
      	(vec<T, A, vl_ptr>::is_empty): New.
      	(vec<T, A, vl_ptr>::length): New.
      	(vec<T, A, vl_ptr>::address): New.
      	(vec<T, A, vl_ptr>::operator[]): New.
      	(vec<T, A, vl_ptr>::operator!=): New.
      	(vec<T, A, vl_ptr>::operator==): New.
      	(vec<T, A, vl_ptr>::last): New.
      	(vec<T, A, vl_ptr>::space): New.
      	(vec<T, A, vl_ptr>::iterate): New.
      	(vec<T, A, vl_ptr>::copy): New.
      	(vec<T, A, vl_ptr>::reserve): New.
      	(vec<T, A, vl_ptr>::reserve_exact): New.
      	(vec<T, A, vl_ptr>::splice): New.
      	(vec<T, A, vl_ptr>::safe_splice): New.
      	(vec<T, A, vl_ptr>::quick_push): New.
      	(vec<T, A, vl_ptr>::safe_push): New.
      	(vec<T, A, vl_ptr>::pop): New.
      	(vec<T, A, vl_ptr>::truncate): New.
      	(vec<T, A, vl_ptr>::safe_grow): New.
      	(vec<T, A, vl_ptr>::safe_grow_cleared): New.
      	(vec<T, A, vl_ptr>::quick_grow): New.
      	(vec<T, A, vl_ptr>::quick_grow_cleared): New.
      	(vec<T, A, vl_ptr>::quick_insert): New.
      	(vec<T, A, vl_ptr>::safe_insert): New.
      	(vec<T, A, vl_ptr>::ordered_remove): New.
      	(vec<T, A, vl_ptr>::unordered_remove): New.
      	(vec<T, A, vl_ptr>::block_remove): New.
      	(vec<T, A, vl_ptr>::qsort): New.
      	(vec<T, A, vl_ptr>::lower_bound): New.
      	(vec_stack_alloc): Define.
      	(FOR_EACH_VEC_SAFE_ELT): Define.
      	* vecir.h: Remove.  Update all users.
      	* vecprim.h: Remove.  Update all users.
      	Move uchar to coretypes.h.
      
      	* Makefile.in (VEC_H): Add $(GGC_H).
      	Remove vecir.h and vecprim.h dependencies everywhere.
      
      2012-11-16  Diego Novillo  <dnovillo@google.com>
      
      	* gengtype-lex.l (VEC): Remove.
      	Add characters in the set [\!\>\.-].
      	* gengtype-parse.c (token_names): Remove "VEC".
      	(require_template_declaration): Remove handling of VEC_TOKEN.
      	(type): Likewise.
      	Call create_user_defined_type when parsing GTY((user)).
      	* gengtype-state.c (type_lineloc): handle TYPE_UNDEFINED.
      	(write_state_undefined_type): New.
      	(write_state_type): Call write_state_undefined_type for
      	TYPE_UNDEFINED.
      	(read_state_type): Call read_state_undefined_type for
      	TYPE_UNDEFINED.
      	* gengtype.c (dbgprint_count_type_at): Handle TYPE_UNDEFINED.
      	(create_user_defined_type): Make extern.
      	(type_for_name): Factor out of resolve_typedef.
      	(create_undefined_type): New
      	(resolve_typedef): Call it when we cannot find a previous
      	typedef and the type is not a template.
      	(find_structure): Accept TYPE_UNDEFINED.
      	(set_gc_used_type): Add argument ALLOWED_UNDEFINED_TYPES,
      	default to false.
      	Emit an error for TYPE_UNDEFINED unless LEVEL is GC_UNUSED or
      	ALLOWED_UNDEFINED_TYPES is set.
      	Set ALLOWED_UNDEFINED_TYPES to true for TYPE_USER_STRUCT.
      	(filter_type_name): Accept templates with more than one
      	argument.
      	(output_mangled_typename): Handle TYPE_UNDEFINED
      	(walk_type): Likewise.
      	(write_types_process_field): Likewise.
      	(write_func_for_structure): If CHAIN_NEXT is set, ORIG_S
      	should not be a user-defined type.
      	(write_types_local_user_process_field): Handle TYPE_ARRAY,
      	TYPE_NONE and TYPE_UNDEFINED.
      	(write_types_local_process_field): Likewise.
      	(contains_scalar_p): Return 0 for TYPE_USER_STRUCT.
      	(write_root): Reject user-defined types that are not pointers.
      	Handle TYPE_NONE, TYPE_UNDEFINED, TYPE_UNION, TYPE_LANG_STRUCT
      	and TYPE_PARAM_STRUCT.
      	(output_typename): Handle TYPE_NONE, TYPE_UNDEFINED, and
      	TYPE_ARRAY.
      	(dump_typekind): Handle TYPE_UNDEFINED.
      	* gengtype.h (enum typekind): Add TYPE_UNDEFINED.
      	(create_user_defined_type): Declare.
      	(enum gty_token): Remove VEC_TOKEN.
      
      2012-11-16  Diego Novillo  <dnovillo@google.com>
      
      	Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
      
      	* coretypes.h (uchar): Define.
      	* alias.c: Use new vec API in vec.h.
      	* asan.c: Likewise.
      	* attribs.c: Likewise.
      	* basic-block.h: Likewise.
      	* bb-reorder.c: Likewise.
      	* builtins.c: Likewise.
      	* calls.c: Likewise.
      	* cfg.c: Likewise.
      	* cfganal.c: Likewise.
      	* cfgcleanup.c: Likewise.
      	* cfgexpand.c: Likewise.
      	* cfghooks.c: Likewise.
      	* cfghooks.h: Likewise.
      	* cfgloop.c: Likewise.
      	* cfgloop.h: Likewise.
      	* cfgloopanal.c: Likewise.
      	* cfgloopmanip.c: Likewise.
      	* cfgrtl.c: Likewise.
      	* cgraph.c: Likewise.
      	* cgraph.h: Likewise.
      	* cgraphclones.c: Likewise.
      	* cgraphunit.c: Likewise.
      	* combine.c: Likewise.
      	* compare-elim.c: Likewise.
      	* coverage.c: Likewise.
      	* cprop.c: Likewise.
      	* data-streamer.h: Likewise.
      	* dbxout.c: Likewise.
      	* dce.c: Likewise.
      	* df-core.c: Likewise.
      	* df-problems.c: Likewise.
      	* df-scan.c: Likewise.
      	* dominance.c: Likewise.
      	* domwalk.c: Likewise.
      	* domwalk.h: Likewise.
      	* dse.c: Likewise.
      	* dwarf2cfi.c: Likewise.
      	* dwarf2out.c: Likewise.
      	* dwarf2out.h: Likewise.
      	* emit-rtl.c: Likewise.
      	* except.c: Likewise.
      	* except.h: Likewise.
      	* expr.c: Likewise.
      	* expr.h: Likewise.
      	* final.c: Likewise.
      	* fold-const.c: Likewise.
      	* function.c: Likewise.
      	* function.h: Likewise.
      	* fwprop.c: Likewise.
      	* gcc.c: Likewise.
      	* gcse.c: Likewise.
      	* genattr.c: Likewise.
      	* genattrtab.c: Likewise.
      	* genautomata.c: Likewise.
      	* genextract.c: Likewise.
      	* genopinit.c: Likewise
      	* ggc-common.c: Likewise.
      	* ggc.h: Likewise.
      	* gimple-low.c: Likewise.
      	* gimple-ssa-strength-reduction.c: Likewise.
      	* gimple-streamer-in.c: Likewise.
      	* gimple.c: Likewise.
      	* gimple.h: Likewise.
      	* gimplify.c: Likewise.
      	* graph.c: Likewise.
      	* graphds.c: Likewise.
      	* graphds.h: 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-poly.h: Likewise.
      	* graphite-scop-detection.c: Likewise.
      	* graphite-scop-detection.h: Likewise.
      	* graphite-sese-to-poly.c: Likewise.
      	* graphite.c: Likewise.
      	* godump.c: Likewise.
      	* haifa-sched.c: Likewise.
      	* hw-doloop.c: Likewise.
      	* hw-doloop.h: Likewise.
      	* ifcvt.c: Likewise.
      	* insn-addr.h: Likewise.
      	* ipa-cp.c: Likewise.
      	* ipa-inline-analysis.c: Likewise.
      	* ipa-inline-transform.c: Likewise.
      	* ipa-inline.c: Likewise.
      	* ipa-inline.h: Likewise.
      	* ipa-prop.c: Likewise.
      	* ipa-prop.h: Likewise.
      	* ipa-pure-const.c: Likewise.
      	* ipa-ref-inline.h: Likewise.
      	* ipa-ref.c: Likewise.
      	* ipa-ref.h: Likewise.
      	* ipa-reference.c: Likewise.
      	* ipa-split.c: Likewise.
      	* ipa-utils.c: Likewise.
      	* ipa-utils.h: Likewise.
      	* ipa.c: Likewise.
      	* ira-build.c: Likewise.
      	* ira-color.c: Likewise.
      	* ira-emit.c: Likewise.
      	* ira-int.h: Likewise.
      	* ira.c: Likewise.
      	* loop-invariant.c: Likewise.
      	* loop-unroll.c: Likewise.
      	* lower-subreg.c: Likewise.
      	* lra-lives.c: Likewise.
      	* lra.c: Likewise.
      	* lto-cgraph.c: Likewise.
      	* lto-section-out.c: Likewise.
      	* lto-streamer-in.c: Likewise.
      	* lto-streamer-out.c: Likewise.
      	* lto-streamer.h: Likewise.
      	* lto-symtab.c: Likewise.
      	* mcf.c: Likewise.
      	* modulo-sched.c: Likewise.
      	* omp-low.c: Likewise.
      	* opts-common.c: Likewise.
      	* opts-global.c: Likewise.
      	* opts.c: Likewise.
      	* opts.h: Likewise.
      	* passes.c: Likewise.
      	* predict.c: Likewise.
      	* print-tree.c: Likewise.
      	* profile.c: Likewise.
      	* profile.h: Likewise.
      	* read-rtl.c: Likewise.
      	* ree.c: Likewise.
      	* reg-stack.c: Likewise.
      	* regrename.c: Likewise.
      	* regrename.h: Likewise.
      	* reload.c: Likewise.
      	* reload.h: Likewise.
      	* reload1.c: Likewise.
      	* rtl.h: Likewise.
      	* sched-deps.c: Likewise.
      	* sched-int.h: Likewise.
      	* sdbout.c: Likewise.
      	* sel-sched-dump.c: Likewise.
      	* sel-sched-ir.c: Likewise.
      	* sel-sched-ir.h: Likewise.
      	* sel-sched.c: Likewise.
      	* sese.c: Likewise.
      	* sese.h: Likewise.
      	* statistics.h: Likewise.
      	* stmt.c: Likewise.
      	* stor-layout.c: Likewise.
      	* store-motion.c: Likewise.
      	* tlink.c: Likewise.
      	* toplev.c: Likewise.
      	* trans-mem.c: Likewise.
      	* tree-browser.c: Likewise.
      	* tree-call-cdce.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-chrec.c: Likewise.
      	* tree-chrec.h: Likewise.
      	* tree-complex.c: Likewise.
      	* tree-data-ref.c: Likewise.
      	* tree-data-ref.h: Likewise.
      	* tree-dfa.c: Likewise.
      	* tree-diagnostic.c: Likewise.
      	* tree-dump.c: Likewise.
      	* tree-eh.c: Likewise.
      	* tree-emutls.c: Likewise.
      	* tree-flow.h: Likewise.
      	* tree-if-conv.c: Likewise.
      	* tree-inline.c: Likewise.
      	* tree-inline.h: Likewise.
      	* tree-into-ssa.c: Likewise.
      	* tree-iterator.c: Likewise.
      	* tree-loop-distribution.c: Likewise.
      	* tree-mudflap.c: Likewise.
      	* tree-optimize.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-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-dce.c: Likewise.
      	* tree-ssa-dom.c: Likewise.
      	* tree-ssa-forwprop.c: Likewise.
      	* tree-ssa-live.c: Likewise.
      	* tree-ssa-live.h: 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-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-sccvn.h: Likewise.
      	* tree-ssa-strlen.c: Likewise.
      	* tree-ssa-structalias.c: Likewise.
      	* tree-ssa-tail-merge.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-streamer-out.c: Likewise.
      	* tree-streamer.c: Likewise.
      	* tree-streamer.h: Likewise.
      	* tree-switch-conversion.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-vectorizer.h: Likewise.
      	* tree-vrp.c: Likewise.
      	* tree.c: Likewise.
      	* tree.h: Likewise.
      	* value-prof.c: Likewise.
      	* value-prof.h: Likewise.
      	* var-tracking.c: Likewise.
      	* varasm.c: Likewise.
      	* varpool.c: Likewise.
      	* vmsdbgout.c: Likewise.
      	* config/bfin/bfin.c: Likewise.
      	* config/c6x/c6x.c: Likewise.
      	* config/darwin.c: Likewise.
      	* config/i386/i386.c: Likewise.
      	* config/ia64/ia64.c: Likewise.
      	* config/mep/mep.c: Likewise.
      	* config/mips/mips.c: Likewise.
      	* config/pa/pa.c: Likewise.
      	* config/rs6000/rs6000-c.c: Likewise.
      	* config/rs6000/rs6000.c: Likewise.
      	* config/rx/rx.c: Likewise.
      	* config/spu/spu-c.c: Likewise.
      	* config/vms/vms.c: Likewise.
      	* config/vxworks.c: Likewise.
      	* config/epiphany/resolve-sw-modes.c: Likewise.
      
      From-SVN: r193595
      Diego Novillo committed
  20. 14 Aug, 2012 2 commits
    • cfgexpand.c (expand_used_vars): Use virtual_operand_p. · ea057359
      2012-08-14  Richard Guenther  <rguenther@suse.de>
      
      	* cfgexpand.c (expand_used_vars): Use virtual_operand_p.
      	* gimple-pretty-print.c (dump_phi_nodes): Likewise.
      	* gimple-streamer-out.c (output_bb): Likewise.
      	* graphite-sese-to-poly.c (scalar_close_phi_node_p): Likewise.
      	(rewrite_reductions_out_of_ssa): Likewise.
      	(rewrite_commutative_reductions_out_of_ss): Likewise.
      	* ipa-split.c (verify_non_ssa_vars): Likewise.
      	(consider_split): Likewise.
      	(visit_bb): Likewise.
      	(split_function): Likewise.
      	* lto-streamer-out.c (output_ssa_names): Likewise.
      	* sese.c (rename_uses): Likewise.
      	* tree-cfg.c (replace_uses_by): Likewise.
      	(gimple_merge_blocks): Likewise.
      	(gimple_cfg2dot): Likewise.
      	(verify_gimple_phi): Likewise.
      	(replace_ssa_name): Likewise.
      	(move_block_to_fn): Likewise.
      	* tree-eh.c (cleanup_empty_eh_merge_phis): Likewise.
      	* tree-if-conv.c (if_convertible_phi_p): Likewise.
      	(predicate_scalar_phi): Likewise.
      	* tree-inline.c (update_ssa_across_abnormal_edges): Likewise.
      	(copy_phis_for_bb): Likewise.
      	* tree-loop-distribution.c (generate_loops_for_partition): Likewise.
      	(destroy_loop): Likewise.
      	* tree-outof-ssa.c (eliminate_useless_phis): Likewise.
      	(insert_backedge_copies): Likewise.
      	* tree-parloops.c (transform_to_exit_first_loop): Likewise.
      	(gather_scalar_reductions): Likewise.
      	(try_create_reduction_list): Likewise.
      	* tree-scalar-evolution.c (analyze_scalar_evolution_for_all_loop_ph):
      	Likewise.
      	(scev_const_prop): Likewise.
      	* tree-ssa-ccp.c (debug_lattice_value): Likewise.
      	(get_default_value): Likewise.
      	(ccp_initialize): Likewise.
      	* tree-ssa-coalesce.c (create_outofssa_var_map): Likewise.
      	* tree-ssa-copy.c (may_propagate_copy): Likewise.
      	(init_copy_prop): Likewise.
      	* tree-ssa-dce.c (propagate_necessity): Likewise.
      	(remove_dead_phis): Likewise.
      	(forward_edge_to_pdom): Likewise.
      	(eliminate_unnecessary_stmts): Likewise.
      	* tree-ssa-live.c (partition_view_init): Likewise.
      	(remove_unused_locals): Likewise.
      	(register_ssa_partition_check): Likewise.
      	* tree-ssa-loop-im.c (movement_possibility): Likewise.
      	(move_computations_stmt): Likewise.
      	* tree-ssa-loop-ivopts.c (determine_biv_step): Likewise.
      	(record_invariant): Likewise.
      	(find_interesting_uses_outside): Likewise.
      	(determine_set_costs): Likewise.
      	* tree-ssa-loop-manip.c (add_exit_phis_var): Likewise.
      	(find_uses_to_rename_use): Likewise.
      	(check_loop_closed_ssa_use): Likewise.
      	(rewrite_phi_with_iv): Likewise.
      	(canonicalize_loop_ivs): Likewise.
      	* tree-ssa-math-opts.c (execute_cse_reciprocals): Likewise.
      	* tree-ssa-phiopt.c (hoist_adjacent_loads): Likewise.
      	* tree-ssa-pre.c (make_values_for_phi): Likewise.
      	(compute_avail): Likewise.
      	(eliminate): Likewise.
      	* tree-ssa-propagate.c (substitute_and_fold): Likewise.
      	* tree-ssa-reassoc.c (phi_rank): Likewise.
      	* tree-ssa-strlen.c (strlen_enter_block): Likewise.
      	* tree-ssa-structalias.c (compute_points_to_sets): Likewise.
      	(ipa_pta_execute): Likewise.
      	* tree-ssa-tail-merge.c (same_succ_hash): Likewise.
      	(release_last_vdef): Likewise.
      	(same_phi_alternatives_1): Likewise.
      	(bb_has_non_vop_phi): Likewise.
      	(vop_phi): Likewise.
      	* tree-ssa-threadedge.c (record_temporary_equivalences_from_phis):
      	Likewise.
      	* tree-ssa-uninit.c (warn_uninitialized_phi): Likewise.
      	(execute_late_warn_uninitialized): Likewise.
      	* tree-ssa.c (verify_ssa_name): Likewise.
      	(verify_phi_args): Likewise.
      	(verify_ssa): Likewise.
      	* tree-stdarg.c (execute_optimize_stdarg): Likewise.
      	* tree-vect-loop-manip.c (slpeel_update_phi_nodes_for_guard1): Likewise.
      	(slpeel_tree_peel_loop_to_edge): Likewise.
      	(vect_can_advance_ivs_p): Likewise.
      	(vect_update_ivs_after_vectorizer): Likewise.
      	* tree-vect-loop.c (vect_analyze_scalar_cycles_1): Likewise.
      	* tree-vrp.c (remove_range_assertions): Likewise.
      	* value-prof.c (gimple_divmod_values_to_profile): Likewise.
      
      From-SVN: r190385
      Richard Guenther committed
    • gimplify.c (create_tmp_from_val): Mark temporary with DECL_GIMPLE_REG_P here ... · 2ad728d2
      2012-08-14  Richard Guenther  <rguenther@suse.de>
      
      	* gimplify.c (create_tmp_from_val): Mark temporary with
      	DECL_GIMPLE_REG_P here ...
      	(internal_get_tmp_var): ... instead of here.  If we go into
      	SSA create an SSA name instead of a VAR_DECL.
      	(gimplify_modify_expr): Do not create SSA names here, assert
      	we already got them.
      	(force_gimple_operand_1): Create an SSA name if we go into SSA.
      	* sese.c (rename_uses): Simplify.
      
      From-SVN: r190381
      Richard Guenther committed
  21. 07 Aug, 2012 1 commit
    • gimple.h (gimple_phi_set_result): Adjust SSA_NAME_DEF_STMT. · dcc748dd
      2012-08-07  Richard Guenther  <rguenther@suse.de>
      
      	* gimple.h (gimple_phi_set_result): Adjust SSA_NAME_DEF_STMT.
      	* tree-phinodes.c (make_phi_node): Allow a NULL var.
      	* tree-into-ssa.c (insert_phi_nodes_for): Simplify.
      	* tree-complex.c (update_phi_components): Likewise.
      	* tree-ssa-loop-manip.c (create_iv): Likewise.
      	(add_exit_phis_edge): Likewise.
      	(split_loop_exit_edge): Likewise.
      	(tree_transform_and_unroll_loop): Likewise.
      	* value-prof.c (gimple_ic): Likewise.
      	(gimple_stringop_fixed_value): Likewise.
      	* tree-tailcall.c (tree_optimize_tail_calls_1): Likewise.
      	* omp-low.c (expand_parallel_call): Likewise.
      	(expand_omp_for_static_chunk): Likewise.
      	(expand_omp_atomic_pipeline): Likewise.
      	* tree-parloops.c (create_phi_for_local_result): Likewise.
      	(transform_to_exit_first_loop): Likewise.
      	* tree-vect-data-refs.c (vect_setup_realignment): Likewise.
      	* graphite-scop-detection.c (canonicalize_loop_closed_ssa): Likewise.
      	* tree-predcom.c (initialize_root_vars): Likewise.
      	(initialize_root_vars_lm): Likewise.
      	* sese.c (sese_add_exit_phis_edge): Likewise.
      	* gimple-streamer-in.c (input_phi): Likewise.
      	* tree-inline.c (copy_phis_for_bb): Likewise.
      	* tree-ssa-phiprop.c (phiprop_insert_phi): Likewise.
      	* tree-cfg.c (gimple_make_forwarder_block): Likewise.
      	(gimple_duplicate_bb): Likewise.
      
      From-SVN: r190199
      Richard Guenther committed
  22. 01 Aug, 2012 1 commit
    • graphite-clast-to-gimple.c (translate_clast_user): Rename virtual operands. · 525174a2
      2012-08-01  Richard Guenther  <rguenther@suse.de>
      
      	* graphite-clast-to-gimple.c (translate_clast_user): Rename
      	virtual operands.
      	* sese.c (graphite_copy_stmts_from_block): Do not rename virtual
      	operands here.
      	* tree-call-cdce.c (tree_call_cdce): Use
      	mark_virtual_operands_for_renaming.
      	* tree-eh.c (sink_clobbers): Simplify.
      	* tree-flow.h (mark_sym_for_renaming): Remove.
      	(mark_virtual_operands_for_renaming): New function.
      	* tree-if-conv.c (tree_if_conversion): Use
      	mark_virtual_operands_for_renaming.
      	* tree-inline.c (update_ssa_across_abnormal_edges): Likewise.
      	* tree-into-ssa.c (mark_sym_for_renaming): Remove.
      	(mark_virtual_operands_for_renaming): New function.
      	* tree-loop-distribution.c (tree_loop_distribution): Use
      	mark_virtual_operands_for_renaming.
      	* tree-ssa-dce.c (mark_virtual_operand_for_renaming): Do not
      	update stmts, use mark_virtual_operands_for_renaming.
      	* tree-ssa-tail-merge.c (release_last_vdef): Remove.
      	(replace_block_by): Adjust.
      	(tail_merge_optimize): Use mark_virtual_operands_for_renaming.
      	* tree-tailcall.c (tree_optimize_tail_calls_1): Use
      	mark_virtual_operands_for_renaming.
      	* tree-vect-slp.c (vect_slp_transform_bb): Likewise.
      	* tree-vectorizer.c (vectorize_loops): Likewise.
      
      From-SVN: r190034
      Richard Guenther committed
  23. 16 Jul, 2012 1 commit
    • revert: tree.h (phi_arg_d): New field. · 9e227d60
      2012-07-16  Dehao Chen  <dehao@google.com>
      
      	Revert
      	2012-07-10  Dehao Chen  <dehao@google.com>
      
      	* tree.h (phi_arg_d): New field.
      	* tree-flow-inline.h (gimple_phi_arg_block): New function.
      	(gimple_phi_arg_block_from_edge): New function.
      	(gimple_phi_arg_set_block): New function.
      	(gimple_phi_arg_has_block): New function.
      	(redirect_edge_var_map_block): New function.
      	* tree-flow.h (_edge_var_map): New field.
      	* tree-ssa-live.c (remove_unused_locals): Mark phi_arg's block as used.
      	* tree-eh.c (cleanup_empty_eh_merge_phis): Add block debug info for
      	redirect_edge_var_map_add.
      	* tree-outof-ssa.c (_elim_graph): New field.
      	(insert_partition_copy_on_edge): New parameter.
      	(insert_value_copy_on_edge): New parameter.
      	(insert_rtx_to_part_on_edge): New parameter.
      	(insert_part_to_rtx_on_edge): New parameter.
      	(elim_graph_add_edge): New parameter.
      	(elim_graph_remove_succ_edge): New parameter.
      	(FOR_EACH_ELIM_GRAPH_SUCC): New parameter.
      	(FOR_EACH_ELIM_GRAPH_PRED): New parameter.
      	(new_elim_graph): Add block debug info.
      	(clear_elim_graph): Likewise.
      	(delete_elim_graph): Likewise.
      	(elim_graph_add_node): Likewise.
      	(elim_graph_add_edge): Likewise.
      	(elim_graph_remove_succ_edge): Likewise.
      	(eliminate_build): Likewise.
      	(elim_forward): Likewise.
      	(elim_unvisited_predecessor): Likewise.
      	(elim_backward): Likewise.
      	(elim_create): Likewise.
      	(eliminate_phi): Likewise.
      	(insert_backedge_copies): Likewise.
      	* tree-into-ssa.c (insert_phi_nodes_for): Add block debug info for
      	add_phi_arg.
      	(rewrite_add_phi_arguments): Likewise.
      	* tree-ssa-loop-im.c (execute_sm_if_changed): Likewise.
      	* tree-ssa-tail-merge.c (replace_block_by): Likewise.
      	* tree-ssa-threadupdate.c (copy_phi_args): Likewise.
      	* tree-loop-distribution.c (update_phis_for_loop_copy): Likewise.
      	* tree-ssa-loop-manip.c (create_iv): Likewise.
      	(add_exit_phis_edge): Likewise.
      	(split_loop_exit_edge): Likewise.
      	(copy_phi_node_args): Likewise.
      	(tree_transform_and_unroll_loop): Likewise.
      	* value-prof.c (gimple_ic): Likewise.
      	(gimple_stringop_fixed_value): Likewise.
      	* tree-tailcall.c (add_successor_phi_arg): Likewise.
      	(eliminate_tail_call): Likewise.
      	(create_tailcall_accumulator): Likewise.
      	(tree_optimize_tail_calls_1): Likewise.
      	* tree-phinodes.c (add_phi_arg): Likewise.
      	(make_phi_node): Likewise.
      	(resize_phi_node): Likewise.
      	(remove_phi_arg_num): Likewise.
      	* omp-low.c (expand_parallel_call): Likewise.
      	(expand_omp_for_static_chunk): Likewise.
      	* tree-vect-loop-manip.c (slpeel_update_phis_for_duplicate_loop):
      	Likewise.
      	(slpeel_update_phi_nodes_for_guard1): Likewise.
      	(slpeel_update_phi_nodes_for_guard2): Likewise.
      	(slpeel_tree_duplicate_loop_to_edge_cfg): Likewise.
      	(set_prologue_iterations): Likewise.
      	(slpeel_tree_peel_loop_to_edge): Likewise.
      	(vect_loop_versioning): Likewise.
      	* tree-parloops.c (create_phi_for_local_result): Likewise.
      	(transform_to_exit_first_loop): Likewise.
      	(create_parallel_loop): Likewise.
      	* ipa-split.c (split_function): Likewise.
      	* tree-vect-loop.c (get_initial_def_for_induction): Likewise.
      	(vect_create_epilog_for_reduction): Likewise.
      	* tree-vect-data-refs.c (vect_setup_realignment): Likewise.
      	* graphite-scop-detection.c (canonicalize_loop_closed_ssa): Likewise.
      	* tree-ssa-phiopt.c (cond_store_replacement): Likewise.
      	(cond_if_else_store_replacement_1): Likewise.
      	* tree-cfgcleanup.c (remove_forwarder_block): Likewise.
      	(remove_forwarder_block_with_phi): Likewise.
      	* tree-ssa-pre.c (insert_into_preds_of_block): Likewise.
      	* tree-predcom.c (initialize_root_vars): Likewise.
      	(initialize_root_vars_lm): Likewise.
      	* sese.c (sese_add_exit_phis_edge): Likewise.
      	* tree-ssa-dce.c (forward_edge_to_pdom): Likewise.
      	* tree-ssa.c (flush_pending_stmts): Likewise.
      	(redirect_edge_var_map_add): Likewise.
      	(ssa_redirect_edge): Likewise.
      	* gimple-streamer-in.c (input_phi): Likewise.
      	* tree-vect-stmts.c (vectorizable_load): Likewise.
      	* tree-inline.c (copy_phis_for_bb): Likewise.
      	* tree-ssa-phiprop.c (phiprop_insert_phi): Likewise.
      	* tree-switch-conversion.c (fix_phi_nodes): Likewise.
      	* tree-cfg.c (reinstall_phi_args): Likewise.
      	(gimple_make_forwarder_block): Likewise.
      	(add_phi_args_after_copy_edge): Likewise.
      	(gimple_duplicate_sese_tail): Likewise.
      
      From-SVN: r189518
      Dehao Chen committed
  24. 10 Jul, 2012 1 commit
    • tree.h (phi_arg_d): New field. · e53a3e77
      2012-07-10  Dehao Chen  <dehao@google.com>
      
      	* tree.h (phi_arg_d): New field.
      	* tree-flow-inline.h (gimple_phi_arg_block): New function.
      	(gimple_phi_arg_block_from_edge): New function.
      	(gimple_phi_arg_set_block): New function.
      	(gimple_phi_arg_has_block): New function.
      	(redirect_edge_var_map_block): New function.
      	* tree-flow.h (_edge_var_map): New field.
      	* tree-ssa-live.c (remove_unused_locals): Mark phi_arg's block
      	as used.
      	* tree-eh.c (cleanup_empty_eh_merge_phis): Add block debug info for
      	redirect_edge_var_map_add.
      	* tree-outof-ssa.c (_elim_graph): New field.
      	(insert_partition_copy_on_edge): New parameter.
      	(insert_value_copy_on_edge): New parameter.
      	(insert_rtx_to_part_on_edge): New parameter.
      	(insert_part_to_rtx_on_edge): New parameter.
      	(elim_graph_add_edge): New parameter.
      	(elim_graph_remove_succ_edge): New parameter.
      	(FOR_EACH_ELIM_GRAPH_SUCC): New parameter.
      	(FOR_EACH_ELIM_GRAPH_PRED): New parameter.
      	(new_elim_graph): Add block debug info.
      	(clear_elim_graph): Likewise.
      	(delete_elim_graph): Likewise.
      	(elim_graph_add_node): Likewise.
      	(elim_graph_add_edge): Likewise.
      	(elim_graph_remove_succ_edge): Likewise.
      	(eliminate_build): Likewise.
      	(elim_forward): Likewise.
      	(elim_unvisited_predecessor): Likewise.
      	(elim_backward): Likewise.
      	(elim_create): Likewise.
      	(eliminate_phi): Likewise.
      	(insert_backedge_copies): Likewise.
      	* tree-into-ssa.c (insert_phi_nodes_for): Add block debug info for
      	add_phi_arg.
      	(rewrite_add_phi_arguments): Likewise.
      	* tree-ssa-loop-im.c (execute_sm_if_changed): Likewise.
      	* tree-ssa-tail-merge.c (replace_block_by): Likewise.
      	* tree-ssa-threadupdate.c (copy_phi_args): Likewise.
      	* tree-loop-distribution.c (update_phis_for_loop_copy): Likewise.
      	* tree-ssa-loop-manip.c (create_iv): Likewise.
      	(add_exit_phis_edge): Likewise.
      	(split_loop_exit_edge): Likewise.
      	(copy_phi_node_args): Likewise.
      	(tree_transform_and_unroll_loop): Likewise.
      	* value-prof.c (gimple_ic): Likewise.
      	(gimple_stringop_fixed_value): Likewise.
      	* tree-tailcall.c (add_successor_phi_arg): Likewise.
      	(eliminate_tail_call): Likewise.
      	(create_tailcall_accumulator): Likewise.
      	(tree_optimize_tail_calls_1): Likewise.
      	* tree-phinodes.c (add_phi_arg): Likewise.
      	(make_phi_node): Likewise.
      	(resize_phi_node): Likewise.
      	(remove_phi_arg_num): Likewise.
      	* omp-low.c (expand_parallel_call): Likewise.
      	(expand_omp_for_static_chunk): Likewise.
      	* tree-vect-loop-manip.c (slpeel_update_phis_for_duplicate_loop):
      	Likewise.
      	(slpeel_update_phi_nodes_for_guard1): Likewise.
      	(slpeel_update_phi_nodes_for_guard2): Likewise.
      	(slpeel_tree_duplicate_loop_to_edge_cfg): Likewise.
      	(set_prologue_iterations): Likewise.
      	(slpeel_tree_peel_loop_to_edge): Likewise.
      	(vect_loop_versioning): Likewise.
      	* tree-parloops.c (create_phi_for_local_result): Likewise.
      	(transform_to_exit_first_loop): Likewise.
      	(create_parallel_loop): Likewise.
      	* ipa-split.c (split_function): Likewise.
      	* tree-vect-loop.c (get_initial_def_for_induction): Likewise.
      	(vect_create_epilog_for_reduction): Likewise.
      	* tree-vect-data-refs.c (vect_setup_realignment): Likewise.
      	* graphite-scop-detection.c (canonicalize_loop_closed_ssa): Likewise.
      	* tree-ssa-phiopt.c (cond_store_replacement): Likewise.
      	(cond_if_else_store_replacement_1): Likewise.
      	* tree-cfgcleanup.c (remove_forwarder_block): Likewise.
      	(remove_forwarder_block_with_phi): Likewise.
      	* tree-ssa-pre.c (insert_into_preds_of_block): Likewise.
      	* tree-predcom.c (initialize_root_vars): Likewise.
      	(initialize_root_vars_lm): Likewise.
      	* sese.c (sese_add_exit_phis_edge): Likewise.
      	* tree-ssa-dce.c (forward_edge_to_pdom): Likewise.
      	* tree-ssa.c (flush_pending_stmts): Likewise.
      	(redirect_edge_var_map_add): Likewise.
      	(ssa_redirect_edge): Likewise.
      	* gimple-streamer-in.c (input_phi): Likewise.
      	* tree-vect-stmts.c (vectorizable_load): Likewise.
      	* tree-inline.c (copy_phis_for_bb): Likewise.
      	* tree-ssa-phiprop.c (phiprop_insert_phi): Likewise.
      	* tree-switch-conversion.c (fix_phi_nodes): Likewise.
      	* tree-cfg.c (reinstall_phi_args): Likewise.
      	(gimple_make_forwarder_block): Likewise.
      	(add_phi_args_after_copy_edge): Likewise.
      	(gimple_duplicate_sese_tail): Likewise.
      
      From-SVN: r189402
      Dehao Chen committed
  25. 17 Jun, 2012 1 commit
    • cfgloop.h: Do not include rtl.h. · 1c1ad7bb
      	* cfgloop.h: Do not include rtl.h.
      	(enum iv_extend_code): New.
      	(struct rtx_iv): Use iv_extend_code instead of rtx_code.
      	* Makefile.in (CFGLOOP_H): Do not depend on RTL_H.
      	* loop-iv.c (iv_extend_to_rtx_code): New function to translate
      	an IV_EXTEND_CODE to an RTX_CODE.
      	(dump_iv_info): Update for rtx_iv field type change.
      	(iv_constant): Likewise.
      	(iv_subreg): Likewise.
      	(iv_extend): Likewise.
      	(iv_neg): Likewise.
      	(iv_add): Likewise.
      	(iv_mult): Likewise.
      	(iv_shift): Likewise.
      	(get_biv_step_1): Likewise.
      	(get_biv_step): Likewise.
      	(iv_analyze_biv): Likewise.
      	(get_iv_value): Likewise.
      	(shorten_into_mode): Likewise.
      	(canonicalize_iv_subregs): Likewise.
      	* sese.c (sese_build_liveouts): Use MAY_HAVE_DEBUG_STMTS instead
      	of MAY_HAVE_DEBUG_INSNS.
      	* tree-ssa-loop-ivopts.c: Include recog.h after expr.h.
      	* tree-ssa-loop-prefetch.c: Likewise.
      
      From-SVN: r188711
      Steven Bosscher committed
  26. 29 May, 2012 1 commit
    • LANGUAGES: Fix typos. · 073a8998
      	* LANGUAGES: Fix typos.
      	* Makefile.in: Fix typos.
      	* alias.c: Fix typos.
      	* auto-inc-dec.c: Fix typos.
      	* bb-reorder.c: Fix typos.
      	* cfgcleanup.c: Fix typos.
      	* cgraph.c: Fix typos.
      	* cgraph.h: Fix typos.
      	* cgraphunit.c: Fix typos.
      	* collect2-aix.h: Fix typos.
      	* collect2.c: Fix typos.
      	* compare-elim.c: Fix typos.
      	* config/alpha/vms.h: Fix typos.
      	* config/arm/README-interworking: Fix typos.
      	* config/arm/arm.c: Fix typos.
      	* config/arm/iterators.md: Fix typos.
      	* config/arm/vxworks.h: Fix typos.
      	* config/avr/avr.c: Fix typos.
      	* config/avr/avr.h: Fix typos.
      	* config/avr/avr.md: Fix typos.
      	* config/avr/builtins.def: Fix typos.
      	* config/c6x/c6x.c: Fix typos.
      	* config/cr16/cr16.c: Fix typos.
      	* config/cr16/cr16.md: Fix typos.
      	* config/cris/cris.md: Fix typos.
      	* config/darwin.c: Fix typos.
      	* config/darwin.opt: Fix typos.
      	* config/i386/i386-c.c: Fix typos.
      	* config/i386/i386.c: Fix typos.
      	* config/ia64/ia64.c: Fix typos.
      	* config/m68k/cf.md: Fix typos.
      	* config/mep/mep.c: Fix typos.
      	* config/microblaze/microblaze.c: Fix typos.
      	* config/microblaze/microblaze.h: Fix typos.
      	* config/mn10300/mn10300.c: Fix typos.
      	* config/mn10300/mn10300.md: Fix typos.
      	* config/pa/pa.c: Fix typos.
      	* config/picochip/picochip.h: Fix typos.
      	* config/rs6000/a2.md: Fix typos.
      	* config/rs6000/rs6000.c: Fix typos.
      	* config/rs6000/vector.md: Fix typos.
      	* config/rx/rx.md: Fix typos.
      	* config/rx/rx.opt: Fix typos.
      	* config/s390/2097.md: Fix typos.
      	* config/s390/s390.c: Fix typos.
      	* config/s390/s390.h: Fix typos.
      	* config/sh/sh.c: Fix typos.
      	* config/sh/sh.md: Fix typos.
      	* config/sparc/sync.md: Fix typos.
      	* config/spu/spu.c: Fix typos.
      	* config/spu/spu.md: Fix typos.
      	* config/vms/vms.c: Fix typos.
      	* config/vxworks-dummy.h: Fix typos.
      	* config/vxworks.h: Fix typos.
      	* cselib.c: Fix typos.
      	* df-scan.c: Fix typos.
      	* df.h: Fix typos.
      	* doc/extend.texi: Fix typos.
      	* doc/install.texi: Fix typos.
      	* doc/invoke.texi: Fix typos.
      	* doc/md.texi: Fix typos.
      	* doc/plugins.texi: Fix typos.
      	* doc/rtl.texi: Fix typos.
      	* dse.c: Fix typos.
      	* dwarf2asm.c: Fix typos.
      	* dwarf2out.c: Fix typos.
      	* except.h: Fix typos.
      	* expr.c: Fix typos.
      	* fold-const.c: Fix typos.
      	* gcc.c: Fix typos.
      	* gcse.c: Fix typos.
      	* genautomata.c: Fix typos.
      	* gengtype-state.c: Fix typos.
      	* gengtype.c: Fix typos.
      	* genhooks.c: Fix typos.
      	* gimple-fold.c: Fix typos.
      	* gimple-pretty-print.c: Fix typos.
      	* gimple.c: Fix typos.
      	* gimple.h: Fix typos.
      	* gimplify.c: Fix typos.
      	* graphite-interchange.c: Fix typos.
      	* graphite-sese-to-poly.c: Fix typos.
      	* ifcvt.c: Fix typos.
      	* input.c: Fix typos.
      	* ipa-cp.c: Fix typos.
      	* ipa-inline-analysis.c: Fix typos.
      	* ipa-inline-transform.c: Fix typos.
      	* ipa-inline.c: Fix typos.
      	* ipa-pure-const.c: Fix typos.
      	* ipa-ref.h: Fix typos.
      	* ipa-reference.c: Fix typos.
      	* ipa-utils.c: Fix typos.
      	* ipa.c: Fix typos.
      	* ira-emit.c: Fix typos.
      	* ira-lives.c: Fix typos.
      	* lto-streamer.c: Fix typos.
      	* lto-streamer.h: Fix typos.
      	* lto-wrapper.c: Fix typos.
      	* mcf.c: Fix typos.
      	* mode-switching.c: Fix typos.
      	* modulo-sched.c: Fix typos.
      	* plugin.c: Fix typos.
      	* postreload.c: Fix typos.
      	* sched-deps.c: Fix typos.
      	* sel-sched-ir.c: Fix typos.
      	* sel-sched-ir.h: Fix typos.
      	* sel-sched.c: Fix typos.
      	* sese.c: Fix typos.
      	* stor-layout.c: Fix typos.
      	* target-hooks-macros.h: Fix typos.
      	* target.def: Fix typos.
      	* trans-mem.c: Fix typos.
      	* tree-eh.c: Fix typos.
      	* tree-predcom.c: Fix typos.
      	* tree-sra.c: Fix typos.
      	* tree-ssa-address.c: Fix typos.
      	* tree-ssa-loop-ivopts.c: Fix typos.
      	* tree-ssa-loop-niter.c: Fix typos.
      	* tree-ssa-math-opts.c: Fix typos.
      	* tree-ssa-pre.c: Fix typos.
      	* tree-ssa-propagate.c: Fix typos.
      	* tree-ssa-reassoc.c: Fix typos.
      	* tree-ssa-sccvn.c: Fix typos.
      	* tree-ssa-ter.c: Fix typos.
      	* tree-ssa-uninit.c: Fix typos.
      	* tree-ssanames.c: Fix typos.
      	* tree-vect-generic.c: Fix typos.
      	* tree-vect-slp.c: Fix typos.
      	* tree.c: Fix typos.
      	* tree.h: Fix typos.
      	* varasm.c: Fix typos.
      	* varpool.c: Fix typos.
      
      From-SVN: r187959
      Joseph Myers committed
  27. 09 Sep, 2011 1 commit
    • gimple.h (fold_stmt_inplace): Adjust to take a gimple_stmt_iterator instead of a statement. · 59401b92
      2011-09-09  Richard Guenther  <rguenther@suse.de>
      
      	* gimple.h (fold_stmt_inplace): Adjust to take a gimple_stmt_iterator
      	instead of a statement.
      	* gimple-fold.c (fold_stmt_inplace): Likewise.
      	* sese.c (graphite_copy_stmts_from_block): Adjust.
      	* tree-ssa-dom.c (propagate_rhs_into_lhs): Likewise.
      	* tree-ssa-forwprop.c (forward_propagate_into_comparison): Use
      	fold_stmt.
      	(forward_propagate_addr_into_variable_array_index): Likewise.
      	(forward_propagate_addr_expr_1): adjust.
      	(associate_plusminus): Likewise.
      	(ssa_forward_propagate_and_combine): Likewise.
      	* tree-ssa-mathopts.c (replace_reciprocal): Adjust.
      	(execute_cse_reciprocals): Likewise.
      	* tree-ssa.c (insert_debug_temp_for_var_def): Adjust.
      
      From-SVN: r178726
      Richard Guenther committed
  28. 28 Jul, 2011 1 commit
    • Fix PR49876: Continue code generation with integer_zero_node on gloog_error · 60cf26cc
      When setting gloog_error, graphite should continue code generation
      without early returns, as otherwise the SSA representation would not
      be complete.  So set the new expression to integer_zero_node, that
      would not require more SSA updates, and continue code generation as
      nothing happened.
      
      Regstrapped on amd64-linux.
      
      2011-07-28  Sebastian Pop  <sebastian.pop@amd.com>
      
      	PR tree-optimization/49876
      	* sese.c (rename_uses): Do not return false on gloog_error: set
      	the new_expr to integer_zero_node and continue code generation.
      	(graphite_copy_stmts_from_block): Remove early exit on gloog_error.
      
      From-SVN: r176900
      Sebastian Pop committed
  29. 27 Jul, 2011 1 commit
    • Fix PR47691: do not abort compilation when code generation fails · bd4a54da
      2011-07-27  Sebastian Pop  <sebastian.pop@amd.com>
      
      	PR middle-end/47691
      	* graphite-clast-to-gimple.c (translate_clast_user): Update use of
      	copy_bb_and_scalar_dependences.
      	* sese.c (rename_uses): Do not call gcc_assert.  Set gloog_error.
      	(graphite_copy_stmts_from_block): Update call to rename_uses.
      	(copy_bb_and_scalar_dependences): Update call to
      	graphite_copy_stmts_from_block.
      	* sese.h (copy_bb_and_scalar_dependences): Update declaration.
      
      	* gfortran.dg/graphite/id-pr47691.f: New.
      
      From-SVN: r176836
      Sebastian Pop committed
  30. 22 Jun, 2011 1 commit
    • re PR debug/47858 (IPA-SRA decreases quality of debug info) · ddb555ed
      	PR debug/47858
      	* gimple.h (enum gimple_debug_subcode): Add GIMPLE_DEBUG_SOURCE_BIND.
      	(gimple_build_debug_source_bind_stat): New prototype.
      	(gimple_build_debug_source_bind): Define.
      	(gimple_debug_source_bind_p, gimple_debug_source_bind_get_var,
      	gimple_debug_source_bind_get_value,
      	gimple_debug_source_bind_get_value_ptr,
      	gimple_debug_source_bind_set_var,
      	gimple_debug_source_bind_set_value): New inlines.
      	* gimple.c (gimple_build_debug_source_bind_stat): New function.
      	* gimple-pretty-print.c (dump_gimple_debug): Handle
      	GIMPLE_DEBUG_SOURCE_BIND.
      	* sese.c (rename_uses): Handle gimple_debug_source_bind_p.
      	* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Likewise.
      	* tree-parloops.c (eliminate_local_variables,
      	separate_decls_in_region): Likewise.
      	(separate_decls_in_region_debug): Renamed from
      	separate_decls_in_region_debug_bind.  Handle
      	gimple_debug_source_bind_p.
      	* tree.h (decl_debug_args_lookup, decl_debug_args_insert): New
      	prototypes.
      	(DECL_HAS_DEBUG_ARGS_P): Define.
      	(struct tree_function_decl): Add has_debug_args_flag field.
      	* tree.c (debug_args_for_decl): New variable.
      	(decl_debug_args_lookup, decl_debug_args_insert): New functions.
      	* tree-into-ssa.c (mark_def_sites): Handle uses in debug stmts.
      	(rewrite_debug_stmt_uses): New function.
      	(rewrite_stmt): Use it to rewrite debug stmt uses.
      	* rtl.def (DEBUG_PARAMETER_REF): New.
      	* rtl.h (DEBUG_PARAMETER_REF_DECL): Define.
      	* cselib.c (rtx_equal_for_cselib_1, cselib_hash_rtx): Handle
      	DEBUG_PARAMETER_REF.
      	* rtl.c (rtx_equal_p_cb, rtx_equal_p, iterative_hash_rtx): Likewise.
      	* print-rtl.c (print_rtx): Likewise.
      	* tree-sra.c (sra_ipa_reset_debug_stmts): Prefer replacing of
      	SSA_NAMEs with DEBUG_EXPR_DECLs initialized in source bind
      	debug stmts in the first bb.
      	* tree-inline.c (remap_ssa_name): If remapping default def
      	of a PARM_DECL fails, map to a DEBUG_EXPR_DECL set in
      	a source bind debug stmt.
      	(remap_gimple_stmt): Handle gimple_debug_source_bind_p.
      	(maybe_move_debug_stmts_to_successors): Likewise.
      	(copy_debug_stmt): Likewise.  Avoid shadowing a variable.
      	(tree_function_versioning): If DECL_HAS_DEBUG_ARGS_P, copy
      	debug args vector from old_decl to new_decl.
      	* ipa-prop.c (ipa_modify_call_arguments): For optimized away
      	or modified parameters, add debug bind stmts before call
      	setting DEBUG_EXPR_DECL which is remembered in debug args
      	vector.
      	* cfgexpand.c (expand_call_stmt): Call expand_debug_expr
      	on DECL_DEBUG_EXPRs from debug args vector.
      	(expand_debug_source_expr): New function.
      	(expand_debug_locations): Use it for source bind insns.
      	(expand_gimple_basic_block): Handle gimple_debug_source_bind_p.
      	* var-tracking.c (prepare_call_arguments): Add debug args
      	to call_arguments if any.
      	* dwarf2out.c (dwarf_stack_op_name, size_of_loc_descr,
      	output_loc_operands, output_loc_operands_raw,
      	resolve_addr_in_expr, compare_loc_operands): Handle
      	DW_OP_GNU_parameter_ref.
      	(get_ref_die_offset, parameter_ref_descriptor): New functions.
      	(mem_loc_descriptor): Handle DEBUG_PARAMETER_REF.
      	(gen_subprogram_die): Handle parameters identified by
      	DEBUG_PARAMETER_REF.
      
      	* dwarf2.h (enum dwarf_location_atom): Add DW_OP_GNU_parameter_ref.
      
      From-SVN: r175288
      Jakub Jelinek committed
  31. 20 Apr, 2011 1 commit
    • remove useless if-before-free tests · 04695783
      Change "if (E) free (E);" to "free (E);" everywhere except in the
      libgo/, intl/, zlib/ and classpath/ directories.
      Also transform equivalent variants like
      "if (E != NULL) free (E);" and allow an extra cast on the
      argument to free.  Otherwise, the tested and freed "E"
      expressions must be identical, modulo white space.
      
      From-SVN: r172785
      Jim Meyering committed
  32. 28 Dec, 2010 1 commit
    • Do not include unnecessary .h files. · 1bd6497c
      2010-12-28  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* Makefile.in (TREE_VECTORIZER_H): Removed duplicate definition.
      	(tree-browser.o): Update dependences.
      	(omega.o): Same.
      	(tree-chrec.o): Same.
      	(tree-scalar-evolution.o): Same.
      	(tree-data-ref.o): Same.
      	(sese.o): Same.
      	(graphite.o): Same.
      	(graphite-blocking.o): Same.
      	(graphite-clast-to-gimple.o): Same.
      	(graphite-cloog-util.o): Same.
      	(graphite-dependences.o): Same.
      	(graphite-flattening.o): Same.
      	(graphite-interchange.o): Same.
      	(graphite-poly.o): Same.
      	(graphite-ppl.o): Same.
      	(graphite-scop-detection.o): Same.
      	(graphite-sese-to-poly.o): Same.
      	(tree-loop-linear.o): Same.
      	(tree-loop-distribution.o): Same.
      	(tree-parloops.o): Same.
      	(lambda-mat.o): Same.
      	(lambda-trans.o): Same.
      	(lambda-code.o): Same.
      	* tree-browser.o: Do not include unnecessary .h files.
      	* omega.o: Same.
      	* tree-chrec.o: Same.
      	* tree-scalar-evolution.o: Same.
      	* tree-data-ref.o: Same.
      	* sese.o: Same.
      	* graphite.o: Same.
      	* graphite-blocking.o: Same.
      	* graphite-clast-to-gimple.o: Same.
      	* graphite-cloog-util.o: Same.
      	* graphite-dependences.o: Same.
      	* graphite-flattening.o: Same.
      	* graphite-interchange.o: Same.
      	* graphite-poly.o: Same.
      	* graphite-ppl.o: Same.
      	* graphite-scop-detection.o: Same.
      	* graphite-sese-to-poly.o: Same.
      	* tree-loop-linear.o: Same.
      	* tree-loop-distribution.o: Same.
      	* tree-parloops.o: Same.
      	* lambda-mat.o: Same.
      	* lambda-trans.o: Same.
      	* lambda-code.o: Same.
      	* graphite.h: Removed.
      
      From-SVN: r168296
      Sebastian Pop committed
  33. 15 Dec, 2010 1 commit
  34. 08 Dec, 2010 1 commit
    • Fix PR45230, PR45231, and PR45370: fold_stmt_inplace after replace_exp. · fd66ea1a
      2010-12-08  Richard Guenther  <rguenther@suse.de>
      	    Sebastian Pop  <sebastian.pop@amd.com>
      
      	PR tree-optimization/45230
      	PR tree-optimization/45231
      	PR tree-optimization/45370
      	* sese.c (rename_uses): Returns a bool.  Call
      	recompute_tree_invariant_for_addr_expr only on the RHS of a
      	GIMPLE_ASSIGN.
      	(graphite_copy_stmts_from_block): Call fold_stmt_inplace when
      	rename_uses returns true.
      	* tree-ssa-copy.c (replace_exp): Add a comment about calling
      	fold_stmt_inplace after replace_exp.
      
      	* gcc.dg/graphite/id-pr45230-1.c: New.
      	* gcc.dg/graphite/id-pr45231.c: New.
      	* gfortran.dg/graphite/id-pr45370.f90: New.
      
      Co-Authored-By: Sebastian Pop <sebastian.pop@amd.com>
      
      From-SVN: r167609
      Richard Guenther committed
  35. 01 Dec, 2010 2 commits
  36. 30 Nov, 2010 1 commit
    • diagnostic-core.h: Include bversion.h. · 7c475d11
      	* diagnostic-core.h: Include bversion.h.
      	* toplev.h: Don't include input.h or bversion.h.
      	(parse_optimize_options): Don't declare here.
      	* alias.c, auto-inc-dec.c, c-aux-info.c, c-convert.c, c-parser.c,
      	caller-save.c, cfg.c, cfganal.c, cfgbuild.c, cfgcleanup.c,
      	combine-stack-adj.c, config/arm/pe.c, config/darwin-c.c,
      	config/host-darwin.c, config/i386/host-cygwin.c,
      	config/i386/host-mingw32.c, config/i386/msformat-c.c,
      	config/i386/netware.c, config/i386/nwld.c,
      	config/i386/winnt-cxx.c, config/i386/winnt-stubs.c,
      	config/ia64/ia64-c.c, config/m32c/m32c-pragma.c,
      	config/mep/mep-pragma.c, config/microblaze/microblaze-c.c,
      	config/rs6000/host-darwin.c, config/rs6000/rs6000-c.c,
      	config/score/score3.c, config/score/score7.c,
      	config/sh/symbian-base.c, config/sh/symbian-c.c,
      	config/sh/symbian-cxx.c, config/sol2-c.c, config/sol2.c,
      	config/v850/v850-c.c, config/vxworks.c, convert.c, cppbuiltin.c,
      	cselib.c, dbgcnt.c, ddg.c, dfp.c, dominance.c, emit-rtl.c,
      	fixed-value.c, fwprop.c, ggc-common.c, gimple.c, gimplify.c,
      	graphite-blocking.c, graphite-clast-to-gimple.c,
      	graphite-dependences.c, graphite-flattening.c,
      	graphite-interchange.c, graphite-poly.c,
      	graphite-scop-detection.c, graphite.c, haifa-sched.c,
      	implicit-zee.c, integrate.c, ipa-pure-const.c, ipa-reference.c,
      	ira-build.c, ira-conflicts.c, ira-costs.c, ira-lives.c, jump.c,
      	lists.c, loop-doloop.c, loop-iv.c, lto-cgraph.c, lto-compress.c,
      	lto-opts.c, lto-section-in.c, lto-section-out.c,
      	lto-streamer-out.c, lto-symtab.c, modulo-sched.c, optabs.c,
      	params.c, postreload-gcse.c, postreload.c, predict.c, profile.c,
      	regcprop.c, reginfo.c, regmove.c, reorg.c, resource.c,
      	sched-deps.c, sched-ebb.c, sched-rgn.c, sdbout.c,
      	sel-sched-dump.c, sel-sched-ir.c, sese.c, stmt.c, targhooks.c,
      	tree-cfgcleanup.c, tree-mudflap.c, tree-nomudflap.c,
      	tree-object-size.c, tree-outof-ssa.c, tree-phinodes.c,
      	tree-profile.c, tree-sra.c, tree-ssa-ccp.c, tree-ssa-coalesce.c,
      	tree-ssa-live.c, tree-ssa-loop-prefetch.c, tree-ssa-loop.c,
      	tree-ssa-operands.c, tree-ssa-structalias.c, tree-ssa-uninit.c,
      	tree-vect-patterns.c, value-prof.c, var-tracking.c, web.c: Don't
      	include toplev.h.
      	* Makefile.in (TOPLEV_H): Remove.  All uses changed to use
      	toplev.h.  Dependencies for above files and c-family files changed
      	to remove $(TOPLEV_H) or toplev.h.
      	(C_TREE_H): Don't include $(TOPLEV_H).
      	(DIAGNOSTIC_CORE_H): Use $(INPUT_H) instead of input.h.  Add
      	bversion.h.
      	* config/arm/t-pe, config/arm/t-wince-pe, config/i386/t-cygming,
      	config/ia64/t-ia64, config/mep/t-mep, config/score/t-score-elf,
      	config/t-darwin, config/t-sol2,
      	config/t-vxworks, config/v850/t-v850, config/v850/t-v850e:
      	Dependencies for above files changed to remove $(TOPLEV_H) or
      	toplev.h.
      
      c-family:
      	* c-common.h (parse_optimize_options): Declare.
      	* c-cppbuiltin.c, c-format.c, c-gimplify.c, c-lex.c, c-omp.c,
      	c-pch.c, c-pragma.c, c-semantics.c: Don't include toplev.h.
      
      cp:
      	* cp-gimplify.c, cp-lang.c, cvt.c, cxx-pretty-print.c, error.c,
      	except.c, expr.c, friend.c, init.c, mangle.c, name-lookup.c,
      	optimize.c, parser.c, rtti.c, tree.c, typeck2.c: Don't include
      	toplev.h.
      	* Make-lang.in: Dependencies for above files changed to remove
      	toplev.h.
      
      java:
      	* expr.c, lang.c, mangle.c, mangle_name.c, typeck.c,
      	verify-glue.c: Don't include toplev.h.
      	* Make-lang.in: Dependencies for above files changed to remove
      	toplev.h.
      
      lto:
      	* Make-lang.in (lto/lto-object.o): Depend on toplev.h instead of
      	$(TOPLEV_H).
      
      From-SVN: r167293
      Joseph Myers committed
  37. 20 Aug, 2010 1 commit
    • vec.h (FOR_EACH_VEC_ELT): Define. · ac47786e
      gcc/
      	* vec.h (FOR_EACH_VEC_ELT): Define.
      	* c-decl.c: Use it.
      	* cfgloop.c: Likewise.
      	* cfgloopmanip.c: Likewise.
      	* cgraph.c: Likewise.
      	* cgraphunit.c: Likewise.
      	* combine.c: Likewise.
      	* config/bfin/bfin.c: Likewise.
      	* config/mips/mips.c: Likewise.
      	* config/rs6000/rs6000.c: Likewise.
      	* dbxout.c: Likewise.
      	* df-scan.c: Likewise.
      	* dominance.c: Likewise.
      	* dse.c: Likewise.
      	* dwarf2out.c: Likewise.
      	* except.c: Likewise.
      	* expr.c: Likewise.
      	* function.c: Likewise.
      	* gcse.c: Likewise.
      	* genattr.c: Likewise.
      	* ggc-common.c: Likewise.
      	* gimplify.c: Likewise.
      	* graphite-blocking.c: Likewise.
      	* graphite-clast-to-gimple.c: Likewise.
      	* graphite-dependences.c: Likewise.
      	* graphite-interchange.c: Likewise.
      	* graphite-poly.c: Likewise.
      	* graphite-scop-detection.c: Likewise.
      	* graphite-sese-to-poly.c: Likewise.
      	* graphite.c: Likewise.
      	* haifa-sched.c: Likewise.
      	* ifcvt.c: Likewise.
      	* implicit-zee.c: Likewise.
      	* ipa-prop.c: Likewise.
      	* ipa-struct-reorg.c: Likewise.
      	* ipa.c: Likewise.
      	* ira-build.c: Likewise.
      	* ira-color.c: Likewise.
      	* ira-emit.c: Likewise.
      	* lambda-code.c: Likewise.
      	* loop-invariant.c: Likewise.
      	* loop-unroll.c: Likewise.
      	* lower-subreg.c: Likewise.
      	* lto-cgraph.c: Likewise.
      	* lto-opts.c: Likewise.
      	* lto-streamer-in.c: Likewise.
      	* lto-streamer-out.c: Likewise.
      	* lto-streamer.c: Likewise.
      	* lto-symtab.c: Likewise.
      	* matrix-reorg.c: Likewise.
      	* opts.c: Likewise.
      	* predict.c: Likewise.
      	* print-tree.c: Likewise.
      	* sdbout.c: Likewise.
      	* sel-sched-dump.c: Likewise.
      	* sel-sched-ir.c: Likewise.
      	* sel-sched.c: Likewise.
      	* sese.c: Likewise.
      	* stor-layout.c: Likewise.
      	* tree-cfg.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-chrec.c: Likewise.
      	* tree-data-ref.c: Likewise.
      	* tree-emutls.c: Likewise.
      	* tree-inline.c: Likewise.
      	* tree-into-ssa.c: Likewise.
      	* tree-loop-distribution.c: Likewise.
      	* tree-loop-linear.c: Likewise.
      	* tree-mudflap.c: Likewise.
      	* tree-outof-ssa.c: Likewise.
      	* tree-parloops.c: Likewise.
      	* tree-predcom.c: Likewise.
      	* tree-pretty-print.c: Likewise.
      	* tree-scalar-evolution.c: Likewise.
      	* tree-ssa-live.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-phiprop.c: Likewise.
      	* tree-ssa-pre.c: Likewise.
      	* tree-ssa-reassoc.c: Likewise.
      	* tree-ssa-sccvn.c: Likewise.
      	* tree-ssa-structalias.c: Likewise.
      	* tree-ssa.c: Likewise.
      	* tree-vect-data-refs.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-vrp.c: Likewise.
      	* tree.c: Likewise.
      	* value-prof.c: Likewise.
      	* var-tracking.c: Likewise.
      	* varasm.c: Likewise.
      	* vmsdbgout.c: Likewise.
      
      gcc/ada/
      	* gcc-interface/decl.c: Use FOR_EACH_VEC_ELT.
      	* gcc-interface/trans.c: Likewise.
      	* gcc-interface/utils.c: Likewise.
      
      gcc/c-family/
      	* c-common.c: Use FOR_EACH_VEC_ELT.
      	* c-gimplify.c: Likewise.
      	* c-pragma.c: Likewise.
      
      gcc/cp/
      	* call.c: Use FOR_EACH_VEC_ELT.
      	* class.c: Likewise.
      	* decl.c: Likewise.
      	* decl2.c: Likewise.
      	* error.c: Likewise.
      	* except.c: Likewise.
      	* mangle.c: Likewise.
      	* method.c: Likewise.
      	* name-lookup.c: Likewise.
      	* parser.c: Likewise.
      	* pt.c: Likewise.
      	* repo.c: Likewise.
      	* semantics.c: Likewise.
      	* typeck2.c: Likewise.
      
      gcc/fortran/
      	* trans-openmp.c: Use FOR_EACH_VEC_ELT.
      
      gcc/java/
      	* class.c: Use FOR_EACH_VEC_ELT.
      	* expr.c: Likewise.
      	* jcf-parse.c: Likewise.
      	* resource.c: Likewise.
      
      gcc/lto/
      	* lto.c: Use FOR_EACH_VEC_ELT.
      
      From-SVN: r163401
      Nathan Froyd committed