David Malcolm [Mon, 9 Dec 2013 21:29:15 +0000 (21:29 +0000)]
Eliminate FOR_ALL_BB macro.
gcc/
* basic-block.h (FOR_ALL_BB): Eliminate macro.
* cfg.c (alloc_aux_for_blocks, clear_aux_for_blocks): Replace
uses of FOR_ALL_BB with FOR_ALL_BB_FN, making uses of cfun explicit.
* cfganal.c (inverted_post_order_compute): Likewise.
* cfgcleanup.c (try_optimize_cfg): Likewise.
* cfgexpand.c (add_scope_conflicts): Likewise.
* cfghooks.c (dump_flow_info, account_profile_record): Likewise.
* cfgrtl.c (relink_block_chain): Likewise.
* dce.c (mark_artificial_uses): Likewise.
* df-core.c (df_set_blocks, df_compute_cfg_image, df_dump): Likewise.
* df-problems.c (df_lr_verify_solution_start,
df_lr_verify_solution_end, df_lr_verify_transfer_functions,
df_live_verify_solution_start, df_live_verify_solution_end,
df_live_set_all_dirty, df_live_verify_transfer_functions,
df_md_local_comput): Likewise.
* df-scan.c (df_scan_free_internal, df_scan_alloc)
df_reorganize_refs_by_insn, df_scan_verify): Likewise.
* dominance.c (compute_dom_fast_query, calculate_dominance_info,
free_dominance_info): Likewise.
* dse.c (dse_step1, dse_step3, dse_step4, dse_step6): Likewise.
* graph.c (draw_cfg_edges): Likewise.
* graphite-scop-detection.c (print_graphite_scop_statistics,
dot_all_scops_1): Likewise.
* graphite.c (print_global_statistics,
print_graphite_scop_statistics): Likewise.
* ira.c (do_reload): Likewise.
* loop-init.c (loop_optimizer_finalize): Likewise.
* lto-streamer-in.c (input_function): Likewise.
* lto-streamer-out.c (output_function): Likewise.
* mcf.c (adjust_cfg_counts): Likewise.
* predict.c (estimate_loops): Likewise.
* sched-rgn.c (haifa_find_rgns): Likewise.
* tree-cfg.c (split_critical_edges): Likewise.
* tree-dfa.c (renumber_gimple_stmt_uids): Likewise.
* tree-loop-distribution.c (tree_loop_distribution): Likewise.
* tree-ssa-pre.c (compute_antic, insert, init_pre): Likewise.
* tree-ssa-propagate.c (ssa_prop_init): Likewise.
* var-tracking.c (vt_initialize, vt_finalize): Likewise.
* vtable-verify.c (vtable_verify_main): Likewise.
* web.c (web_main): Likewise.
From-SVN: r205830
David Malcolm [Mon, 9 Dec 2013 21:16:25 +0000 (21:16 +0000)]
Eliminate FOR_EACH_BB_REVERSE macro.
gcc/
* basic-block.h (FOR_EACH_BB_REVERSE): Eliminate macro.
* cfghooks.c (verify_flow_info): Replace uses of FOR_EACH_BB_REVERSE
with FOR_EACH_BB_REVERSE_FN, making uses of cfun explicit.
* cfgrtl.c (print_rtl_with_bb, rtl_verify_edges,
rtl_verify_bb_insns, rtl_verify_bb_pointers,
rtl_verify_bb_insn_chain, rtl_verify_fallthru): Likewise.
* config/ia64/ia64.c (emit_predicate_relation_info): Likewise.
* config/sh/sh.c (sh_md_init_global): Likewise.
* config/sh/sh_optimize_sett_clrt.cc
(sh_optimize_sett_clrt::execute): Likewise.
* dce.c (reset_unmarked_insns_debug_uses, delete_unmarked_insns):
Likewise.
* dominance.c (calc_dfs_tree): Likewise.
* final.c (final): Likewise.
* function.c (thread_prologue_and_epilogue_insns): Likewise.
* gcse.c (compute_code_hoist_vbeinout): Likewise.
* ira.c (update_equiv_regs, build_insn_chain): Likewise.
* lcm.c (compute_antinout_edge): Likewise.
* mode-switching.c (optimize_mode_switching): Likewise.
* postreload.c (reload_combine): Likewise.
* recog.c (split_all_insns, peephole2_optimize): Likewise.
* tree-ssa-live.c (live_worklist): Likewise.
From-SVN: r205829
David Malcolm [Mon, 9 Dec 2013 21:06:06 +0000 (21:06 +0000)]
Eliminate FOR_EACH_BB macro.
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 [Mon, 9 Dec 2013 20:44:49 +0000 (20:44 +0000)]
Eliminate last_basic_block macro.
* basic-block.h (last_basic_block): Eliminate macro.
* asan.c (transform_statements): Eliminate use of last_basic_block
in favor of last_basic_block_for_fn, in order to make use of cfun
explicit.
* bb-reorder.c (copy_bb, reorder_basic_blocks): Likewise.
* bt-load.c (compute_defs_uses_and_gen, compute_kill, compute_out,
link_btr_uses, build_btr_def_use_webs, migrate_btr_defs): Likewise.
* cfg.c (compact_blocks): Likewise.
* cfganal.c (mark_dfs_back_edges,
control_dependences::control_dependences, post_order_compute,
pre_and_rev_post_order_compute_fn, dfs_enumerate_from, compute_idf,
single_pred_before_succ_order): Likewise.
* cfgbuild.c (make_edges): Likewise.
* cfgexpand.c (add_scope_conflicts, gimple_expand_cfg): Likewise.
* cfghooks.c (verify_flow_info): Likewise.
* cfgloop.c (verify_loop_structure): Likewise.
* cfgloopanal.c (just_once_each_iteration_p,
mark_irreducible_loops): Likewise.
* cfgloopmanip.c (fix_bb_placements, remove_path,
update_dominators_in_loop): Likewise.
* cfgrtl.c (create_basic_block_structure, rtl_create_basic_block,
break_superblocks, rtl_flow_call_edges_add): Likewise.
* config/epiphany/resolve-sw-modes.c (resolve_sw_modes): Likewise.
* config/frv/frv.c (frv_optimize_membar): Likewise.
* config/mips/mips.c (r10k_insert_cache_barriers): Likewise.
* config/spu/spu.c (spu_machine_dependent_reorg): Likewise.
* cprop.c (compute_local_properties, find_implicit_sets,
bypass_conditional_jumps, one_cprop_pass): Likewise.
* cse.c (cse_main): Likewise.
* df-core.c (rest_of_handle_df_initialize, df_worklist_dataflow,
df_analyze, df_grow_bb_info, df_compact_blocks): Likewise.
* df-problems.c (df_lr_verify_solution_start,
df_live_verify_solution_start, df_md_local_compute): Likewise.
* dominance.c (init_dom_info, calc_dfs_tree_nonrec, calc_dfs_tree,
calc_idoms): Likewise.
* domwalk.c (dom_walker::walk): Likewise.
* dse.c (dse_step0, dse_step3): Likewise.
* function.c (epilogue_done): Likewise.
* gcse.c (alloc_gcse_mem, compute_local_properties,
prune_insertions_deletions, compute_pre_data,
pre_expr_reaches_here_p, one_pre_gcse_pass,
compute_code_hoist_vbeinout, should_hoist_expr_to_dom, hoist_code,
one_code_hoisting_pass): Likewise.
* graph.c (draw_cfg_nodes_no_loops): Likewise.
* graphite-sese-to-poly.c (build_scop_bbs): Likewise.
* haifa-sched.c (unlink_bb_notes): Likewise.
* ipa-split.c (execute_split_functions): Likewise.
* ira-build.c (create_loop_tree_nodes,
remove_unnecessary_regions): Likewise.
* ira-emit.c (ira_emit): Likewise.
* ira.c (find_moveable_pseudos, ira): Likewise.
* lcm.c (compute_antinout_edge, compute_laterin,
compute_insert_delete, pre_edge_lcm, compute_available,
compute_nearerout, compute_rev_insert_delete,
pre_edge_rev_lcm): Likewise.
* loop-unroll.c (opt_info_start_duplication,
apply_opt_in_copies): Likewise.
* lower-subreg.c (decompose_multiword_subregs): Likewise.
* lra-lives.c (lra_create_live_ranges): Likewise.
* lra.c (lra): Likewise.
* mode-switching.c (optimize_mode_switching): Likewise.
* recog.c (split_all_insns): Likewise.
* regcprop.c (copyprop_hardreg_forward): Likewise.
* regrename.c (regrename_analyze): Likewise.
* reload1.c (reload): Likewise.
* resource.c (init_resource_info): Likewise.
* sched-rgn.c (haifa_find_rgns, extend_rgns, compute_trg_info,
realloc_bb_state_array, schedule_region, extend_regions): Likewise.
* sel-sched-ir.c (sel_extend_global_bb_info, extend_region_bb_info,
recompute_rev_top_order, sel_init_pipelining,
make_regions_from_the_rest): Likewise.
* store-motion.c (remove_reachable_equiv_notes,build_store_vectors)
Likewise.
* tracer.c (tail_duplicate): Likewise.
* trans-mem.c (tm_region_init, get_bb_regions_instrumented): Likewise.
* tree-cfg.c (create_bb, cleanup_dead_labels, gimple_dump_cfg,
gimple_flow_call_edges_add): Likewise.
* tree-cfgcleanup.c (split_bbs_on_noreturn_calls,
cleanup_tree_cfg_1): Likewise.
* tree-complex.c (tree_lower_complex): Likewise.
* tree-inline.c (copy_cfg_body): Likewise.
* tree-into-ssa.c (mark_phi_for_rewrite, rewrite_into_ssa,
prepare_def_site_for, update_ssa): Likewise.
* tree-ssa-dce.c (tree_dce_init, perform_tree_ssa_dce): Likewise.
* tree-ssa-dom.c (record_edge_info): Likewise.
* tree-ssa-live.c (new_tree_live_info, live_worklist): Likewise.
* tree-ssa-loop-im.c (fill_always_executed_in_1): Likewise.
* tree-ssa-loop-manip.c (copy_phi_node_args
gimple_duplicate_loop_to_header_edge): Likewise.
* tree-ssa-pre.c (compute_antic): Likewise.
* tree-ssa-propagate.c (ssa_prop_init): Likewise.
* tree-ssa-reassoc.c (init_reassoc): Likewise.
* tree-ssa-sccvn.c (init_scc_vn): Likewise.
* tree-ssa-tail-merge.c (init_worklist): Likewise.
* tree-ssa-uncprop.c (associate_equivalences_with_edges): Likewise.
* tree-stdarg.c (reachable_at_most_once): Likewise.
* tree-vrp.c (find_assert_locations): Likewise.
* var-tracking.c (vt_find_locations): Likewise.
From-SVN: r205826
David Malcolm [Mon, 9 Dec 2013 20:38:21 +0000 (20:38 +0000)]
Eliminate profile_status macro.
gcc/
* basic-block.h (profile_status): Eliminate macro.
* cfgbuild.c (find_many_sub_basic_blocks): Eliminate use of
profile_status macro in favor of profile_status_for_fn, making
use of cfun explicit.
* cfghooks.c (account_profile_record): Likewise.
* cfgloopanal.c (single_likely_exit):
* cfgrtl.c (rtl_verify_edges, rtl_account_profile_record): Likewise.
* graphite.c (graphite_finalize):
* internal-fn.c (ubsan_expand_si_overflow_addsub_check,
ubsan_expand_si_overflow_neg_check,
ubsan_expand_si_overflow_mul_check): Likewise.
* ipa-split.c (consider_split, execute_split_functions):
* loop-unroll.c (decide_peel_simple):
* optabs.c (emit_cmp_and_jump_insn_1):
* predict.c (maybe_hot_edge_p, probably_never_executed,
predictable_edge_p, probability_reliable_p, gimple_predict_edge,
tree_estimate_probability_driver, estimate_bb_frequencies,
compute_function_frequency, rebuild_frequencies): Likewise.
* profile.c (compute_branch_probabilities): Likewise.
* tree-cfg.c (gimple_account_profile_record): Likewise.
* tree-inline.c (optimize_inline_calls): Likewise.
From-SVN: r205825
David Malcolm [Mon, 9 Dec 2013 20:28:31 +0000 (20:28 +0000)]
Eliminate label_to_block_map macro.
gcc/
* basic-block.h (label_to_block_map): Eliminate macro.
* gimple.c (gimple_set_bb): Replace uses of label_to_block_map
with uses of label_to_block_map_for_fn, making uses of cfun be
explicit.
* tree-cfg.c (delete_tree_cfg_annotations): Likewise.
(verify_gimple_label): Likewise.
From-SVN: r205824
David Malcolm [Mon, 9 Dec 2013 20:17:32 +0000 (20:17 +0000)]
Eliminate basic_block_info macro.
gcc/
* basic-block.h (basic_block_info): Eliminate macro.
* cfgrtl.c (rtl_create_basic_block): Replace uses of
basic_block_info with basic_block_info_for_fn, making uses
of cfun be explicit.
* tree-cfg.c (build_gimple_cfg, create_bb): Likewise.
From-SVN: r205823
David Malcolm [Mon, 9 Dec 2013 20:09:29 +0000 (20:09 +0000)]
Eliminate BASIC_BLOCK macro.
gcc/
* basic-block.h (BASIC_BLOCK): Eliminate macro.
* alias.c (init_alias_analysis): Eliminate BASIC_BLOCK macro in
favor of uses of BASIC_BLOCK_FOR_FN, making uses of cfun explicit.
* bt-load.c (compute_defs_uses_and_gen, compute_out, link_btr_uses,
block_at_edge_of_live_range_p, migrate_btr_defs): Likewise.
* caller-save.c (insert_one_insn): Likewise.
* cfg.c (debug_bb, get_bb_original, get_bb_copy): Likewise.
* cfgexpand.c (add_scope_conflicts): Likewise.
* cfghooks.c (verify_flow_info): Likewise.
* cfgloop.c (flow_loops_find): Likewise.
* cfgrtl.c (rtl_flow_call_edges_add): Likewise.
* config/mips/mips.c (r10k_insert_cache_barriers): Likewise.
* config/s390/s390.c (s390_optimize_nonescaping_tx): Likewise.
* config/spu/spu.c (spu_machine_dependent_reorg): Likewise.
* cse.c (cse_main): Likewise.
* dce.c (fast_dce): Likewise.
* df-core.c (df_set_blocks, df_worklist_propagate_forward,
df_worklist_propagate_backward, df_worklist_dataflow_doublequeue,
df_bb_replace, df_dump_region): Likewise.
* df-problems.c (df_rd_bb_local_compute, df_lr_bb_local_compute,
df_live_bb_local_compute, df_chain_remove_problem)
df_chain_create_bb, df_word_lr_bb_local_compute, df_note_bb_compute,
df_md_bb_local_compute, df_md_local_compute,
df_md_transfer_function): Likewise.
* df-scan.c (df_scan_blocks, df_reorganize_refs_by_reg_by_insn,
df_reorganize_refs_by_insn, df_bb_refs_collect,
df_record_entry_block_defs, df_update_entry_block_defs,
df_record_exit_block_uses): Likewise.
* dominance.c (nearest_common_dominator_for_set): Likewise.
* gcse.c (hoist_code): Likewise.
* graph.c (draw_cfg_nodes_no_loops): Likewise.
* ipa-inline-analysis.c (param_change_prob,
estimate_function_body_sizes): Likewise.
* ipa-split.c (dominated_by_forbidden): Likewise.
* loop-unroll.c (apply_opt_in_copies): Likewise.
* lower-subreg.c (decompose_multiword_subregs): Likewise.
* lra-lives.c (lra_create_live_ranges): Likewise.
* predict.c (propagate_freq): Likewise.
* regrename.c (regrename_analyze): Likewise.
* regstat.c (regstat_bb_compute_ri,
regstat_bb_compute_calls_crossed): Likewise.
* resource.c (mark_target_live_regs): Likewise.
* sched-ebb.c (ebb_fix_recovery_cfg): Likewise.
* sched-int.h (EBB_FIRST_BB, EBB_LAST_BB): Likewise.
* sched-rgn.c (debug_region, dump_region_dot, too_large,
haifa_find_rgns, extend_rgns, compute_dom_prob_ps, update_live,
propagate_deps, sched_is_disabled_for_current_region_p): Likewise.
* sched-vis.c (debug_bb_n_slim): Likewise.
* sel-sched-ir.c (sel_finish_global_and_expr, verify_backedges,
purge_empty_blocks, sel_remove_loop_preheader): Likewise.
* sel-sched.c (remove_insns_that_need_bookkeeping)
(current_region_empty_p, sel_region_init,
simplify_changed_insns): Likewise.
* trans-mem.c (execute_tm_mark, execute_tm_edges,
tm_memopt_compute_antic, ipa_tm_scan_irr_function): Likewise.
* tree-cfg.c (make_edges, end_recording_case_labels,
label_to_block_fn, gimple_debug_bb, gimple_flow_call_edges_add,
remove_edge_and_dominated_blocks, remove_edge_and_dominated_blocks,
gimple_purge_all_dead_eh_edges,
gimple_purge_all_dead_abnormal_call_edges): Likewise.
* tree-cfgcleanup.c (fixup_noreturn_call,
split_bbs_on_noreturn_calls, cleanup_tree_cfg_1): Likewise.
* tree-inline.c (copy_cfg_body, fold_marked_statements): Likewise.
* tree-into-ssa.c (set_livein_block, prune_unused_phi_nodes,
insert_phi_nodes_for, insert_updated_phi_nodes_for): Likewise.
* tree-ssa-dom.c (tree_ssa_dominator_optimize): Likewise.
* tree-ssa-live.c (live_worklist): Likewise.
* tree-ssa-loop-manip.c (compute_live_loop_exits,
add_exit_phis_var, find_uses_to_rename, copy_phi_node_args): Likewise.
* tree-ssa-pre.c (compute_antic): Likewise.
* tree-ssa-reassoc.c (update_range_test, optimize_range_tests): Likewise.
* tree-ssa-sink.c (nearest_common_dominator_of_uses): Likewise.
* tree-ssa-tail-merge.c (same_succ_hash, same_succ_def::equal,
same_succ_flush_bbs, update_worklist, set_cluster,
same_phi_alternatives, find_clusters_1, apply_clusters,
update_debug_stmts): Likewise.
* tree-ssa-threadupdate.c (mark_threaded_blocks,
thread_through_all_blocks): Likewise.
* tree-ssa-uncprop.c (associate_equivalences_with_edges): Likewise.
* tree-vrp.c (find_assert_locations): Likewise.
From-SVN: r205822
David Malcolm [Mon, 9 Dec 2013 20:02:33 +0000 (20:02 +0000)]
Eliminate SET_BASIC_BLOCK macro.
gcc/
* basic-block.h (SET_BASIC_BLOCK): Eliminate macro.
* cfg.c (compact_blocks): Replace uses of SET_BASIC_BLOCK
with SET_BASIC_BLOCK_FOR_FN, making use of cfun explicit.
(expunge_block): Likewise.
* cfgrtl.c (create_basic_block_structure): Likewise.
* df-core.c (df_compact_blocks, df_bb_replace): Likewise.
* sel-sched.c (create_block_for_bookkeeping): Likewise.
* tree-cfg.c (create_bb): Likewise.
From-SVN: r205821
David Malcolm [Mon, 9 Dec 2013 19:53:08 +0000 (19:53 +0000)]
Rename profile_status_for_function to profile_status_for_fn.
gcc/
* basic-block.h (profile_status_for_function): Rename to...
(profile_status_for_fn): ...this.
* cfg.c (check_bb_profile): Update for renaming.
* cgraphbuild.c (compute_call_stmt_bb_frequency): Likewise.
* lto-streamer-in.c (input_cfg): Likewise.
* lto-streamer-out.c (output_cfg): Likewise.
* predict.c (maybe_hot_frequency_p, maybe_hot_count_p,
maybe_hot_bb_p, probably_never_executed)
(handle_missing_profiles): Likewise.
* tree-cfg.c (init_empty_tree_cfg_for_function): Likewise.
* tree-inline.c (copy_bb, initialize_cfun): Likewise.
From-SVN: r205820
David Malcolm [Mon, 9 Dec 2013 19:45:47 +0000 (19:45 +0000)]
Rename label_to_block_map_for_function to label_to_block_map_for_fn.
gcc/
* basic-block.h (label_to_block_map_for_function): Rename to...
(label_to_block_map_for_fn): ...this.
* lto-streamer-in.c (input_cfg): Update for renaming.
* tree-cfg.c (init_empty_tree_cfg_for_function): Likewise.
From-SVN: r205818
David Malcolm [Mon, 9 Dec 2013 19:35:13 +0000 (19:35 +0000)]
Rename last_basic_block_for_function to last_basic_block_for_fn.
gcc/
* basic-block.h (last_basic_block_for_function): Rename to...
(last_basic_block_for_fn): ...this.
* ipa-utils.c (ipa_merge_profiles): Update for renaming of
last_basic_block_for_function to last_basic_block_for_fn.
* lto-streamer-in.c (input_cfg): Likewise.
* lto-streamer-out.c (output_cfg): Likewise.
* tree-cfg.c (init_empty_tree_cfg_for_function): Likewise.
* tree-sra.c (propagate_dereference_distances, ipa_early_sra):
Likewise.
From-SVN: r205817
David Malcolm [Mon, 9 Dec 2013 19:28:00 +0000 (19:28 +0000)]
Rename macros (basic_block_info_for_function, BASIC_BLOCK_FOR_FUNCTION,
SET_BASIC_BLOCK_FOR_FUNCTION)
gcc/
* basic-block.h (basic_block_info_for_function): Rename to...
(basic_block_info_for_fn): ...this.
(BASIC_BLOCK_FOR_FUNCTION): Rename to...
(BASIC_BLOCK_FOR_FN): ...this.
(SET_BASIC_BLOCK_FOR_FUNCTION): Rename to...
(SET_BASIC_BLOCK_FOR_FN): ...this.
* gimple-streamer-in.c (input_phi, input_bb): Update for renaming
of BASIC_BLOCK_FOR_FUNCTION to BASIC_BLOCK_FOR_FN.
* ipa-utils.c (ipa_merge_profiles): Likewise.
* lto-streamer-in.c (make_new_block): Update for renaming of
SET_BASIC_BLOCK_FOR_FUNCTION to SET_BASIC_BLOCK_FOR_FN.
(input_cfg): Update for renamings.
* tree-cfg.c (init_empty_tree_cfg_for_function): Likewise.
(dump_function_to_file): Update for renaming of
basic_block_info_for_function to basic_block_info_for_fn.
From-SVN: r205816
Uros Bizjak [Mon, 9 Dec 2013 17:41:40 +0000 (18:41 +0100)]
ChangeLog: Fix ChangeLog entry.
* libatomic/ChangeLog: Fix ChangeLog entry.
* libgcc/ChangeLog: Ditto.
From-SVN: r205812
Uros Bizjak [Mon, 9 Dec 2013 17:37:43 +0000 (18:37 +0100)]
sfp-exceptions.c (__sfp_handle_exceptions): Emit SSE instructions when __TARGET_SSE__ is defined.
libgcc/ChangeLog:
2013-12-09 Uros Bizjak <ubizjak@gmail.com>
* config/i386/sfp-exceptions.c (__sfp_handle_exceptions): Emit SSE
instructions when __TARGET_SSE__ is defined.
libatomic/ChangeLog:
2013-12-09 Uros Bizjak <ubizjak@gmail.com>
* config/x86/fenv.c (__atomic_feraiseexcept): Emit SSE
instructions when __TARGET_SSE__ is defined.
From-SVN: r205811
Renlin Li [Mon, 9 Dec 2013 17:23:50 +0000 (17:23 +0000)]
chi2_quality.cc: Change -DSAMPLES=30000.
libstdc++-v3/
* testsuite/20_util/hash/chi2_quality.cc: Change -DSAMPLES=30000.
From-SVN: r205810
Andreas Schwab [Mon, 9 Dec 2013 15:19:30 +0000 (15:19 +0000)]
Makefile.am (toolexeclib_LTLIBRARIES): Use install/libgcj_bc.la instead of libgcj_bc.la.
* Makefile.am (toolexeclib_LTLIBRARIES) [USE_LIBGCJ_BC]: Use
install/libgcj_bc.la instead of libgcj_bc.la.
(noinst_LTLIBRARIES) [USE_LIBGCJ_BC]: Define.
(install_libgcj_bc_la_SOURCES): Define.
(install/libgcj_bc.la): New rule.
* Makefile.in: Regenerate.
From-SVN: r205809
Richard Biener [Mon, 9 Dec 2013 15:13:07 +0000 (15:13 +0000)]
re PR middle-end/38474 (compile time explosion in dataflow_set_preserve_mem_locs at -O3)
2013-12-09 Richard Biener <rguenther@suse.de>
PR middle-end/38474
* tree-ssa-structalias.c (set_union_with_increment): Remove
unreachable code.
(do_complex_constraint): Call set_union_with_increment with
the solution delta, not the full solution.
(make_transitive_closure_constraints): Merge the two
constraints.
From-SVN: r205808
Richard Earnshaw [Mon, 9 Dec 2013 14:54:00 +0000 (14:54 +0000)]
re PR rtl-optimization/54300 (regcprop incorrectly looks through parallel register swap operation)
PR rtl-optimization/54300
gcc/
PR rtl-optimization/54300
* regcprop.c (copyprop_hardreg_forward_1): Ensure any unused
outputs in a single-set are killed from the value chains.
gcc/testsuite:
PR rtl-optimization/54300
* gcc.target/arm/pr54300.C: New test.
From-SVN: r205807
Martin Jambor [Mon, 9 Dec 2013 14:51:52 +0000 (15:51 +0100)]
pr39834.c: Remove optimization level option.
2013-12-09 Martin Jambor <mjambor@suse.cz>
* gcc.c-torture/compile/pr39834.c: Remove optimization level option.
* gcc.c-torture/compile/pr48929.c: Likewise.
* gcc.c-torture/compile/pr55569.c: Likewise.
* gcc.c-torture/compile/sra-1.c: Likewise.
* gcc.c-torture/compile/pr45085.c: Moved to...
* gcc.dg/tree-ssa/pr45085.c: ...here, added compile dg-do.
From-SVN: r205806
Marek Polacek [Mon, 9 Dec 2013 14:44:03 +0000 (14:44 +0000)]
re PR sanitizer/59415 (ICE segfault in verify_bb_vtables for g++ -S -fvtable-verify=std -fsanitize=null)
PR sanitizer/59415
* vtable-verify.c (verify_bb_vtables): Check the return value
of gimple_call_fn. Use is_gimple_call instead of gimple_code.
testsuite/
* g++.dg/ubsan/pr59415.C: New test.
From-SVN: r205805
Kyrylo Tkachov [Mon, 9 Dec 2013 14:38:50 +0000 (14:38 +0000)]
arm.md (generic_sched): Add cortexa12.
2013-12-09 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/arm.md (generic_sched): Add cortexa12.
(generic_vfp): Likewise.
* config/arm/arm.c (cortexa12_extra_costs): New cost table.
(arm_cortex_a12_tune): New tuning struct.
* config/arm/arm-cores.def: Add cortex-a12.
* config/arm/arm-tables.opt: Regenerate.
* config/arm/arm-tune.md: Likewise.
* config/arm/bpabi.h: Add cortex-a12.
* doc/invoke.texi: Document -mcpu=cortex-a12.
From-SVN: r205804
Francois-Xavier Coudert [Mon, 9 Dec 2013 11:16:16 +0000 (11:16 +0000)]
install.texi (Prerequisites): Explicitly mention C library and its headers for multilib builds.
* doc/install.texi (Prerequisites): Explicitly mention C library
and its headers for multilib builds.
From-SVN: r205802
Paolo Carlini [Mon, 9 Dec 2013 09:50:51 +0000 (09:50 +0000)]
re PR c++/52707 ([C++11] Deleted special member function prevent type being an aggregate)
2013-12-09 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/52707
* g++.dg/cpp0x/deleted2.C: New.
From-SVN: r205801
Kyrylo Tkachov [Mon, 9 Dec 2013 09:12:46 +0000 (09:12 +0000)]
loop-31.c: Update scan pattern.
2013-12-09 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* gcc.dg/tree-ssa/loop-31.c: Update scan pattern.
From-SVN: r205800
Richard Sandiford [Mon, 9 Dec 2013 08:04:57 +0000 (08:04 +0000)]
asan-dg.exp (asan-gtest): Remove expected output from the pass/fail line and add it to the log instead.
gcc/testsuite/
* lib/asan-dg.exp (asan-gtest): Remove expected output from the
pass/fail line and add it to the log instead.
From-SVN: r205799
GCC Administrator [Mon, 9 Dec 2013 00:17:05 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r205798
Jonathan Wakely [Sun, 8 Dec 2013 22:18:19 +0000 (22:18 +0000)]
* testsuite/30_threads/async/async.cc: Fix race condition in test.
From-SVN: r205795
Oleg Endo [Sun, 8 Dec 2013 22:15:59 +0000 (22:15 +0000)]
re PR target/52898 (SH Target: Inefficient DImode comparisons)
PR target/52898
PR target/51697
* common/config/sh/sh-common.c (sh_option_optimization_table): Remove
OPT_mcbranchdi entry.
* config/sh/sh.opt (mcbranchdi, mcmpeqdi): Mark as undocumented and
emit a warning.
* config/sh/sh.c (sh_option_override): Initialize TARGET_CBRANCHDI4
and TARGET_CMPEQDI_T variables.
* doc/invoke.texi (SH options): Undocument -mcbranchdi and -mcmpeqdi.
PR target/52898
PR target/51697
* gcc.target/sh/pr51697.c: New.
From-SVN: r205794
Bruce Korb [Sun, 8 Dec 2013 21:55:46 +0000 (21:55 +0000)]
fenv.h on Ubuntu
plus fix the ordering of the patches:
* inclhack.def: many of the headers found under "bits/" are
often stashed under architecture directories. Apply fixes
to those, too. Also, re-ordered misordered fixes.
* tests/base/linux/vt.h: 80 columns in .def file limitation
* tests/base/iso/math_c99.h: adjust ordering
* tests/base/rtldef/string.h: likewise
* tests/base/bits/fenv.h: likewise
* tests/base/pthread.h: likewise
From-SVN: r205793
Uros Bizjak [Sun, 8 Dec 2013 21:45:08 +0000 (22:45 +0100)]
macro-fusion-1.c: Cleanup sched2 rtl dump.
* gcc.dg/macro-fusion-1.c: Cleanup sched2 rtl dump.
* gcc.dg/macro-fusion-2.c: Ditto.
* gcc.dg/vect/vect-simd-clone-10a.c: Cleanup vect tree dump.
* gcc.dg/vect/vect-simd-clone-12a.c: Ditto.
From-SVN: r205792
Tobias Burnus [Sun, 8 Dec 2013 21:34:18 +0000 (22:34 +0100)]
re PR fortran/58099 ([F03] over-zealous procedure-pointer error checking)
2013-12-08 Tobias Burnus <burnus@net-b.de>
Janus Weil <janus@gcc.gnu.org>
PR fortran/58099
PR fortran/58676
PR fortran/41724
* resolve.c (gfc_resolve_intrinsic): Set elemental/pure.
(resolve_fl_procedure): Reject pure dummy procedures/procedure
pointers.
(gfc_explicit_interface_required): Don't require a
match of ELEMENTAL for intrinsics.
2013-12-08 Tobias Burnus <burnus@net-b.de>
PR fortran/58099
PR fortran/58676
PR fortran/41724
* gfortran.dg/elemental_subroutine_8.f90: New.
* gfortran.dg/proc_decl_9.f90: Add ELEMENTAL to make valid.
* gfortran.dg/proc_ptr_11.f90: Ditto.
* gfortran.dg/proc_ptr_result_8.f90: Ditto.
* gfortran.dg/proc_ptr_32.f90: Update dg-error.
* gfortran.dg/proc_ptr_33.f90: Ditto.
* gfortran.dg/proc_ptr_result_1.f90: Add abstract interface
which is not elemental.
* gfortran.dg/proc_ptr_result_7.f90: Ditto.
Co-Authored-By: Janus Weil <janus@gcc.gnu.org>
From-SVN: r205791
Paolo Carlini [Sun, 8 Dec 2013 09:44:48 +0000 (09:44 +0000)]
explicit_instantiation.cc: New.
2013-12-08 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/20_util/add_const/requirements/explicit_instantiation.cc:
New.
* testsuite/20_util/add_const/value.cc: Likewise.
* testsuite/20_util/add_cv/requirements/explicit_instantiation.cc:
Likewise.
* testsuite/20_util/add_cv/value.cc: Likewise.
* testsuite/20_util/add_pointer/requirements/explicit_instantiation.cc:
Likewise.
* testsuite/20_util/add_pointer/value.cc: Likewise.
* testsuite/20_util/add_volatile/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/add_volatile/value.cc: Likewise.
* testsuite/20_util/alignment_of/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/alignment_of/requirements/typedefs.cc: Likewise.
* testsuite/20_util/alignment_of/value.cc: Likewise.
* testsuite/20_util/extent/requirements/explicit_instantiation.cc:
Likewise.
* testsuite/20_util/extent/requirements/typedefs.cc: Likewise.
* testsuite/20_util/extent/value.cc: Likewise.
* testsuite/20_util/has_virtual_destructor/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/has_virtual_destructor/requirements/
typedefs.cc: Likewise.
* testsuite/20_util/has_virtual_destructor/value.cc: Likewise.
* testsuite/20_util/is_abstract/requirements/explicit_instantiation.cc:
Likewise.
* testsuite/20_util/is_abstract/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_abstract/value.cc: Likewise.
* testsuite/20_util/is_arithmetic/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_arithmetic/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_arithmetic/value.cc: Likewise.
* testsuite/20_util/is_array/requirements/explicit_instantiation.cc:
Likewise.
* testsuite/20_util/is_array/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_array/value.cc: Likewise.
* testsuite/20_util/is_base_of/requirements/explicit_instantiation.cc:
Likewise.
* testsuite/20_util/is_base_of/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_base_of/value.cc: Likewise.
* testsuite/20_util/is_class/requirements/explicit_instantiation.cc:
Likewise.
* testsuite/20_util/is_class/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_class/value.cc: Likewise.
* testsuite/20_util/is_const/requirements/explicit_instantiation.cc:
Likewise.
* testsuite/20_util/is_const/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_const/value.cc: Likewise.
* testsuite/20_util/is_empty/requirements/explicit_instantiation.cc:
Likewise.
* testsuite/20_util/is_empty/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_empty/value.cc: Likewise.
* testsuite/20_util/is_enum/requirements/explicit_instantiation.cc:
Likewise.
* testsuite/20_util/is_enum/requirements/typedefs.cc
* testsuite/20_util/is_enum/value.cc: Likewise.
* testsuite/20_util/is_pointer/requirements/explicit_instantiation.cc
* testsuite/20_util/is_pointer/value.cc: Likewise.
* testsuite/20_util/is_polymorphic/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_polymorphic/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_polymorphic/value.cc: Likewise.
* testsuite/20_util/is_same/requirements/explicit_instantiation.cc
* testsuite/20_util/is_same/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_same/value.cc: Likewise.
* testsuite/20_util/is_union/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_union/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_union/value.cc: Likewise.
* testsuite/20_util/is_void/requirements/explicit_instantiation.cc
* testsuite/20_util/is_void/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_void/value.cc: Likewise.
* testsuite/20_util/is_volatile/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_volatile/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_volatile/value.cc: Likewise.
* testsuite/20_util/rank/requirements/explicit_instantiation.cc:
Likewise.
* testsuite/20_util/rank/requirements/typedefs.cc: Likewise.
* testsuite/20_util/rank/value.cc: Likewise.
* testsuite/20_util/remove_all_extents/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/remove_all_extents/value.cc: Likewise.
* testsuite/20_util/remove_const/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/remove_const/value.cc: Likewise.
* testsuite/20_util/remove_cv/requirements/explicit_instantiation.cc:
Likewise.
* testsuite/20_util/remove_cv/value.cc: Likewise.
* testsuite/20_util/remove_extent/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/remove_extent/value.cc: Likewise.
* testsuite/20_util/remove_pointer/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/remove_pointer/value.cc: Likewise.
* testsuite/20_util/remove_volatile/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/remove_volatile/value.cc: Likewise.
From-SVN: r205789
GCC Administrator [Sun, 8 Dec 2013 00:16:42 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r205788
Janus Weil [Sat, 7 Dec 2013 19:27:19 +0000 (20:27 +0100)]
re PR fortran/59414 ([OOP] ICE in in gfc_conv_expr_descriptor on ALLOCATE inside SELECT TYPE)
2013-12-07 Janus Weil <janus@gcc.gnu.org>
PR fortran/59414
* resolve.c (resolve_specific_f0): Handle CLASS-valued functions.
2013-12-07 Janus Weil <janus@gcc.gnu.org>
PR fortran/59414
* gfortran.dg/class_result_2.f90: New.
From-SVN: r205785
Maxim Kuvyrkov [Sat, 7 Dec 2013 08:58:37 +0000 (08:58 +0000)]
* config/linux.h: Fix typo in a comment.
From-SVN: r205782
Maxim Kuvyrkov [Sat, 7 Dec 2013 08:47:33 +0000 (08:47 +0000)]
Cleanup libc selection and Android support.
* config.gcc (*linux*): Split libc selection from Android support.
Add libc selection to all *linux* targets. Add Android support to
architectures that support it.
(arm*-*-linux-*, i[34567]86-*-linux*, x86_64-*-linux*,)
(mips*-*-linux*): Add Android support.
From-SVN: r205781
Maxim Kuvyrkov [Sat, 7 Dec 2013 08:47:21 +0000 (08:47 +0000)]
Cleanup definitions of libc-related target hooks.
* config/bfin/uclinux.h, config/c6x/uclinux-elf.h,
* config/lm32/uclinux-elf.h, config/m68k/uclinux.h,
* config/moxie/uclinux.h (TARGET_LIBC_HAS_FUNCTION): Move definitions
to linux.h.
* config/linux-android.h (TARGET_HAS_IFUNC_P): Move definition
to linux.h.
* config/linux.h (TARGET_LIBC_HAS_FUNCTION, TARGET_HAS_IFUNC_P):
Define appropriately for Linux and uClinux targets.
From-SVN: r205780
Maxim Kuvyrkov [Sat, 7 Dec 2013 08:47:09 +0000 (08:47 +0000)]
Robustify check for IFUNC support.
* config/linux.c (linux_has_ifunc_p): Use correct test.
From-SVN: r205779
Maxim Kuvyrkov [Sat, 7 Dec 2013 08:46:58 +0000 (08:46 +0000)]
Rename functions relating to libc support on Linux targets.
* config/linux.c (linux_android_has_ifunc_p): Rename to
linux_has_ifunc_p.
(linux_android_libc_has_function): Rename to linux_libc_has_function.
* config/linux-protos.h (linux_android_has_ifunc_p,)
(linux_android_libc_has_function): Update declarations.
* config/linux.h, config/linux-android.h, config/alpha/linux.h,
* config/rs6000/linux.h, config/rs6000/linux64.h: Update.
From-SVN: r205778
Maxim Kuvyrkov [Sat, 7 Dec 2013 08:46:47 +0000 (08:46 +0000)]
Rename files for libc selection on Linux targets.
* linux-android.c: Rename to linux.c.
* t-linux-android: Rename to t-linux. Update references
to linux-android.c
* config.gcc: Update references to t-linux-android and linux-android.o.
From-SVN: r205777
Jakub Jelinek [Sat, 7 Dec 2013 08:10:02 +0000 (09:10 +0100)]
* ssp.c (fail): Avoid -Wformat-security warning.
From-SVN: r205775
Alan Modra [Sat, 7 Dec 2013 04:35:59 +0000 (15:05 +1030)]
rs6000.md (bswapdi2_32bit): Remove ?? from r->r alternative.
* config/rs6000/rs6000.md (bswapdi2_32bit): Remove ?? from r->r
alternative.
From-SVN: r205773
Ralf Corsepius [Sat, 7 Dec 2013 03:23:38 +0000 (04:23 +0100)]
config.gcc (microblaze*-*-rtems*): Add TARGET_BIG_ENDIAN_DEFAULT.
2013-12-07 Ralf Corsépius <ralf.corsepius@rtems.org>
* config.gcc (microblaze*-*-rtems*): Add TARGET_BIG_ENDIAN_DEFAULT.
From-SVN: r205771
GCC Administrator [Sat, 7 Dec 2013 00:16:48 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r205770
Paolo Carlini [Fri, 6 Dec 2013 23:08:41 +0000 (23:08 +0000)]
testsuite_tr1.h (test_category, [...]): constexpr in c++11 mode.
2013-12-06 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/util/testsuite_tr1.h (test_category, test_property,
test_relationship): constexpr in c++11 mode.
* testsuite/20_util/add_lvalue_reference/value.cc: Use static_assert
and change to dg-do compile testcase.
* testsuite/20_util/add_rvalue_reference/value.cc: Likewise.
* testsuite/20_util/aligned_storage/value.cc: Likewise.
* testsuite/20_util/has_trivial_copy_assign/value.cc: Likewise.
* testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
* testsuite/20_util/has_trivial_default_constructor/value.cc: Likewise.
* testsuite/20_util/is_compound/value.cc: Likewise.
* testsuite/20_util/is_constructible/value.cc: Likewise.
* testsuite/20_util/is_convertible/value.cc: Likewise.
* testsuite/20_util/is_copy_assignable/value.cc: Likewise.
* testsuite/20_util/is_copy_constructible/value.cc: Likewise.
* testsuite/20_util/is_floating_point/value.cc: Likewise.
* testsuite/20_util/is_function/value.cc: Likewise.
* testsuite/20_util/is_fundamental/value.cc: Likewise.
* testsuite/20_util/is_integral/value.cc: Likewise.
* testsuite/20_util/is_literal_type/value.cc: Likewise.
* testsuite/20_util/is_lvalue_reference/value.cc: Likewise.
* testsuite/20_util/is_member_function_pointer/value.cc: Likewise.
* testsuite/20_util/is_member_object_pointer/value.cc: Likewise.
* testsuite/20_util/is_member_pointer/value.cc: Likewise.
* testsuite/20_util/is_move_assignable/value.cc: Likewise.
* testsuite/20_util/is_move_constructible/value.cc: Likewise.
* testsuite/20_util/is_nothrow_assignable/value.cc: Likewise.
* testsuite/20_util/is_nothrow_constructible/value.cc: Likewise.
* testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
* testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
* testsuite/20_util/is_nothrow_default_constructible/value.cc: Likewise.
* testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
* testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.
* testsuite/20_util/is_null_pointer/value.cc: Likewise.
* testsuite/20_util/is_object/value.cc: Likewise.
* testsuite/20_util/is_pod/value.cc: Likewise.
* testsuite/20_util/is_reference/value.cc: Likewise.
* testsuite/20_util/is_rvalue_reference/value.cc: Likewise.
* testsuite/20_util/is_scalar/value.cc: Likewise.
* testsuite/20_util/is_signed/value.cc: Likewise.
* testsuite/20_util/is_standard_layout/value.cc: Likewise.
* testsuite/20_util/is_trivial/value.cc: Likewise.
* testsuite/20_util/is_trivially_destructible/value.cc: Likewise.
* testsuite/20_util/is_unsigned/value.cc: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
* testsuite/20_util/remove_reference/value.cc: Likewise.
From-SVN: r205766
Vladimir Makarov [Fri, 6 Dec 2013 22:10:22 +0000 (22:10 +0000)]
rs600.md (*bswapdi2_64bit): Remove ?? from the constraint.
2013-12-06 Vladimir Makarov <vmakarov@redhat.com>
* config/rs6000/rs600.md (*bswapdi2_64bit): Remove ?? from the
constraint.
From-SVN: r205765
Caroline Tice [Fri, 6 Dec 2013 21:22:14 +0000 (13:22 -0800)]
Fix two small problems...
Fix two small problems: Make the libvtv function
decls globally visible, and update all uses of the
verified vtable poitner with the verification results,
rather than just hte first use.
From-SVN: r205764
Andrew Pinski [Fri, 6 Dec 2013 21:08:33 +0000 (21:08 +0000)]
re PR target/59092 (__builtin_trap calls abort for aarch64-linux-gnu)
2013-12-06 Andrew Pinski <apinski@cavium.com>
PR target/59092
* config/aarch64/aarch64.md (trap): New pattern.
From-SVN: r205763
Jakub Jelinek [Fri, 6 Dec 2013 21:00:49 +0000 (22:00 +0100)]
re PR tree-optimization/59388 (ICE on valid code at -O1 and above on x86_64-linux-gnu)
PR tree-optimization/59388
* tree-ssa-reassoc.c (update_range_test): If op == range->exp,
gimplify tem after stmt rather than before it.
* gcc.c-torture/execute/pr59388.c: New test.
From-SVN: r205761
Jakub Jelinek [Fri, 6 Dec 2013 20:38:15 +0000 (21:38 +0100)]
tree-data-ref.c (struct data_ref_loc_d): Replace pos field with ref.
* tree-data-ref.c (struct data_ref_loc_d): Replace pos field with ref.
(get_references_in_stmt): Don't record operand addresses, but
operands themselves.
(find_data_references_in_stmt, graphite_find_data_references_in_stmt):
Adjust for the pos -> ref change.
From-SVN: r205760
Dominique d'Humieres [Fri, 6 Dec 2013 19:26:26 +0000 (20:26 +0100)]
re PR testsuite/59043 (FAIL: (gcc|++).dg/pubtypes* scan-assembler long.*Length of Public Type Names Info)
2013-12-06 Dominique d'Humieres <dominiq@lps.ens.fr>
PR testsuite/59043
* g++.dg/pubtypes.C: Adjust the regular expression.
* gcc.dg/pubtypes-1.c: Likewise.
* gcc.dg/pubtypes-2.c: Likewise.
* gcc.dg/pubtypes-3.c: Likewise.
* gcc.dg/pubtypes-4.c: Likewise.
From-SVN: r205758
Oleg Endo [Fri, 6 Dec 2013 19:23:34 +0000 (19:23 +0000)]
MAINTAINERS: Add myself as sh maintainer.
* MAINTAINERS: Add myself as sh maintainer.
From-SVN: r205757
Ian Lance Taylor [Fri, 6 Dec 2013 18:26:27 +0000 (18:26 +0000)]
re PR go/59408 (Many Go tests FAIL with notesleep not on g0)
PR go/59408
runtime: Don't require g != m->g0 in sema notesleep.
From-SVN: r205756
Tejas Belagod [Fri, 6 Dec 2013 17:48:12 +0000 (17:48 +0000)]
Fix dg options to vect-nop-move.c.
2013-12-06 Tejas Belagod <tejas.belagod@arm.com>
testsuite/
* gcc.dg/vect/vect-nop-move.c: Fix dg options.
From-SVN: r205755
H.J. Lu [Fri, 6 Dec 2013 17:36:22 +0000 (17:36 +0000)]
Change -mtune=ia to -mtune=intel
* config.gcc: Change --with-cpu=ia to --with-cpu=intel.
* config/i386/i386.c (cpu_names): Replace "ia" with "intel".
(processor_alias_table): Likewise.
(ix86_option_override_internal): Likewise.
* config/i386/i386.h (target_cpu_default): Replace
TARGET_CPU_DEFAULT_ia with TARGET_CPU_DEFAULT_intel.
* doc/invoke.texi: Replace -mtune=ia with -mtune=intel.
From-SVN: r205754
Uros Bizjak [Fri, 6 Dec 2013 17:16:52 +0000 (18:16 +0100)]
re PR target/59405 (Incorrect FP<->MMX transition during call/ret)
PR target/59405
* config/i386/i386.c (type_natural_mode): Properly handle
size 8 for !TARGET_64BIT.
testsuite/ChangeLog:
PR target/59405
* gcc.target/i386/pr59405.c: New test.
From-SVN: r205753
Ralf Corsepius [Fri, 6 Dec 2013 17:09:57 +0000 (18:09 +0100)]
config.host (microblaze-*-rtems*): New.
2013-12-06 Ralf Corsépius <ralf.corsepius@rtems.org>
* config.host (microblaze-*-rtems*): New.
From-SVN: r205751
Trevor Saunders [Fri, 6 Dec 2013 16:56:59 +0000 (16:56 +0000)]
remove an unneeded vec.release () to unbreak lto bootstrap
From-SVN: r205750
Ian Bolton [Fri, 6 Dec 2013 15:51:49 +0000 (15:51 +0000)]
[ARM] Add __builtin_trap support for A32
Co-Authored-By: Mark Mitchell <mark@codesourcery.com>
From-SVN: r205749
Jakub Jelinek [Fri, 6 Dec 2013 14:48:17 +0000 (15:48 +0100)]
elf.c (ET_DYN): Undefine and define again.
* elf.c (ET_DYN): Undefine and define again.
(elf_add): Add exe argument, if true and ehdr.e_type is ET_DYN,
return early -1 without closing the descriptor.
(struct phdr_data): Add exe_descriptor.
(phdr_callback): If pd->exe_descriptor is not -1, for very first
call if dlpi_name is NULL just call elf_add with the exe_descriptor,
otherwise backtrace_close the exe_descriptor if not -1. Adjust
call to elf_add.
(backtrace_initialize): Adjust call to elf_add. If it returns
-1, set pd.exe_descriptor to descriptor, otherwise set it to -1.
From-SVN: r205748
Bernd Edlinger [Fri, 6 Dec 2013 14:23:00 +0000 (14:23 +0000)]
expr.c (expand_assignment): Update bitregion_start and bitregion_end.
2013-12-06 Bernd Edlinger <bernd.edlinger@hotmail.de>
* expr.c (expand_assignment): Update bitregion_start and
bitregion_end.
From-SVN: r205745
H.J. Lu [Fri, 6 Dec 2013 11:48:24 +0000 (11:48 +0000)]
Use int64 on time and clock for x32
* sanitizer_common/sanitizer_platform_limits_posix.h
(__sanitizer_shmid_ds): Use u64 on time fields for x32.
(__sanitizer_clock_t): Use long long for x32.
From-SVN: r205737
H.J. Lu [Fri, 6 Dec 2013 11:44:55 +0000 (11:44 +0000)]
Include <sys/stat.h> if __x86_64__ is defined
* sanitizer_common/sanitizer_platform_limits_linux.cc: Include
<sys/stat.h>, instead of <asm/stat.h>, if __x86_64__ is defined.
(struct___old_kernel_stat_sz): Don't check if __x86_64__ is defined.
From-SVN: r205736
Eric Botcazou [Fri, 6 Dec 2013 11:31:56 +0000 (11:31 +0000)]
re PR target/59316 (gcc.dg/atomic/c11-atomic-exec-5.c FAILs on Solaris/SPARC)
PR target/59316
* config/sparc/sparc.h (SPARC_LOW_FE_EXCEPT_VALUES): Define.
* config/sparc/sol2.h (SPARC_LOW_FE_EXCEPT_VALUES): Redefine.
* config/sparc/sparc.c (TARGET_INIT_BUILTINS): Move around.
(TARGET_BUILTIN_DECL): Define.
(TARGET_ATOMIC_ASSIGN_EXPAND_FENV): Likewise.
(sparc32_initialize_trampoline): Adjust call to gen_flush.
(enum sparc_builtins): New enumeral type.
(sparc_builtins): New static array.
(sparc_builtins_icode): Likewise.
(def_builtin): Accept a separate icode and save the result.
(def_builtin_const): Likewise.
(sparc_fpu_init_builtins): New function.
(sparc_vis_init_builtins): Pass the builtin code.
(sparc_init_builtins): Call it if TARGET_FPU.
(sparc_builtin_decl): New function.
(sparc_expand_builtin): Deal with SPARC_BUILTIN_{LD,ST}FSR.
(sparc_handle_vis_mul8x16): Use the builtin code.
(sparc_fold_builtin): Likewise. Deal with SPARC_BUILTIN_{LD,ST}FSR
and SPARC_BUILTIN_PDISTN.
(compound_expr): New helper function.
(sparc_atomic_assign_expand_fenv): New function.
* config/sparc/sparc.md (unspecv): Reorder values, add UNSPECV_LDFSR
and UNSPECV_STFSR.
(flush, flushdi): Merge into single pattern.
(ldfsr): New instruction.
(stfsr): Likewise.
From-SVN: r205735
Oleg Endo [Fri, 6 Dec 2013 10:40:53 +0000 (10:40 +0000)]
asan.c: Remove struct tags when referring to class varpool_node.
* asan.c: Remove struct tags when referring to class varpool_node.
* cgraph.h: Likewise.
* cgraphbuild.c: Likewise.
* cgraphunit.c: Likewise.
* dbxout.c: Likewise.
* dwarf2out.c: Likewise.
* gimple-fold.c: Likewise.
* ipa-devirt.c: Likewise.
* ipa-ref-inline.h: Likewise.
* ipa-ref.h: Likewise.
* ipa-reference.c: Likewise.
* ipa-utils.c: Likewise.
* ipa.c: Likewise.
* lto-cgraph.c: Likewise.
* lto-streamer-out.c: Likewise.
* lto-streamer.h: Likewise.
* passes.c: Likewise.
* toplev.c: Likewise.
* tree-eh.c: Likewise.
* tree-emutls.c: Likewise.
* tree-pass.h: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-vectorizer.c: Likewise.
* tree.c: Likewise.
* varasm.c: Likewise.
* varpool.c: Likewise.
* cp/decl2.c: Remove struct tags when referring to class varpool_node.
* lto/lto.c: Remove struct tags when referring to class varpool_node.
* lto/lto-partition.c: Likewise.
* lto/lto-symtab.c: Likewise.
From-SVN: r205733
Oleg Endo [Fri, 6 Dec 2013 10:27:20 +0000 (10:27 +0000)]
cgraphunit.c: Remove struct tags when referring to class ipa_opt_pass_d or class opt_pass.
* cgraphunit.c: Remove struct tags when referring to class
ipa_opt_pass_d or class opt_pass.
* function.h: Likewise.
* lto-cgraph.c: Likewise.
* pass_manager.h: Likewise.
* passes.c: Likewise.
* tree-pass.h: Likewise.
From-SVN: r205732
Rainer Orth [Fri, 6 Dec 2013 10:04:05 +0000 (10:04 +0000)]
Provide _M_2_SQRTPI if missing.
* intrinsics/erfc_scaled.c (_M_2_SQRTPI): Define if missing.
From-SVN: r205731
Richard Biener [Fri, 6 Dec 2013 09:23:07 +0000 (09:23 +0000)]
re PR tree-optimization/59058 (wrong code at -O3 on x86_64-linux-gnu (affecting gcc 4.6 to trunk))
2013-12-06 Richard Biener <rguenther@suse.de>
PR tree-optimization/59058
* tree-vectorizer.h (struct _loop_vec_info): Add num_itersm1
member.
(LOOP_VINFO_NITERSM1): New macro.
* tree-vect-loop-manip.c (slpeel_tree_peel_loop_to_edge): Express
the vector loop entry test in terms of scalar latch executions.
(vect_do_peeling_for_alignment): Update LOOP_VINFO_NITERSM1.
* tree-vect-loop.c (vect_get_loop_niters): Also return the
number of latch executions.
(new_loop_vec_info): Initialize LOOP_VINFO_NITERSM1.
(vect_analyze_loop_form): Likewise.
(vect_generate_tmps_on_preheader): Compute the number of
vectorized iterations differently.
* gcc.dg/torture/pr59058.c: New testcase.
From-SVN: r205730
Richard Biener [Fri, 6 Dec 2013 08:28:35 +0000 (08:28 +0000)]
inclhack.def (suse_linux_vt_cxx): New fix for linux/vt.h being not compatible with C++.
2013-12-06 Richard Biener <rguenther@suse.de>
* inclhack.def (suse_linux_vt_cxx): New fix for linux/vt.h
being not compatible with C++.
* tests/base/linux/vt.h: New test.
From-SVN: r205729
Jan-Benedict Glaw [Fri, 6 Dec 2013 04:34:34 +0000 (04:34 +0000)]
score.c (score_force_temporary): Delete function.
2013-12-05 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* config/score/score.c (score_force_temporary): Delete function.
(score_split_symbol): Ditto.
* config/score/score.h (ASM_OUTPUT_ADDR_DIFF_ELT): Add extra
parentheses to silence ambiguity warning and reindent.
From-SVN: r205727
GCC Administrator [Fri, 6 Dec 2013 00:16:53 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r205726
Paolo Carlini [Thu, 5 Dec 2013 23:17:57 +0000 (23:17 +0000)]
pr15774-1.C: Adjust expected message.
2013-12-05 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/warn/pr15774-1.C: Adjust expected message.
From-SVN: r205722
Marek Polacek [Thu, 5 Dec 2013 22:51:11 +0000 (22:51 +0000)]
invoke.texi: Document -fsanitize=signed-integer-overflow.
2013-12-05 Marek Polacek <polacek@redhat.com>
* doc/invoke.texi: Document -fsanitize=signed-integer-overflow.
From-SVN: r205721
Jason Merrill [Thu, 5 Dec 2013 22:46:36 +0000 (17:46 -0500)]
re PR c++/59044 (Internal compiler error triggers when accessing a typedef in a specialized member class)
PR c++/59044
PR c++/59052
* pt.c (most_specialized_class): Use the partially instantiated
template for deduction. Drop the TMPL parameter.
From-SVN: r205720
H.J. Lu [Thu, 5 Dec 2013 20:47:13 +0000 (20:47 +0000)]
Add -march=ia to x86 backend
* config.gcc: Support --with-cpu=ia.
* config/i386/i386.c (cpu_names): Add "ia".
(processor_alias_table): Likewise.
(ix86_option_override_internal): Disallow -march=ia.
* config/i386/i386.h (target_cpu_default): Add
TARGET_CPU_DEFAULT_ia.
* doc/invoke.texi: Document -mtune=ia.
From-SVN: r205719
Vladimir Makarov [Thu, 5 Dec 2013 19:39:39 +0000 (19:39 +0000)]
re PR rtl-optimization/59317 ([LRA,MIPS] ICE: in check_rtl, at lra.c (insn does not satisfy constraints))
2013-12-05 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/59317
* lra-constraints.c (in_class_p): Don't ignore insn with constant
as a source.
2013-12-05 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/59317
* testsuite/gcc.target/mips/pr59317.c: New.
From-SVN: r205718
Ian Lance Taylor [Thu, 5 Dec 2013 18:32:02 +0000 (18:32 +0000)]
alloc.c (backtrace_vector_finish): Add error_callback and data parameters.
* alloc.c (backtrace_vector_finish): Add error_callback and data
parameters. Call backtrace_vector_release. Return address base.
* mmap.c (backtrace_vector_finish): Add error_callback and data
parameters. Return address base.
* dwarf.c (read_function_info): Get new address base from
backtrace_vector_finish.
* internal.h (backtrace_vector_finish): Update declaration.
From-SVN: r205716
Martin Jambor [Thu, 5 Dec 2013 18:07:08 +0000 (19:07 +0100)]
re PR ipa/58253 (IPA-SRA creates calls with different arguments that the callee accepts)
2013-12-05 Martin Jambor <mjambor@suse.cz>
PR ipa/58253
* ipa-prop.c (ipa_modify_formal_parameters): Create decls of
non-BLKmode in their naturally aligned type.
From-SVN: r205715
Marek Polacek [Thu, 5 Dec 2013 18:03:44 +0000 (18:03 +0000)]
re PR sanitizer/59333 (ICE with long long and -m32 -fsanitize=undefined)
PR sanitizer/59333
PR sanitizer/59397
* ubsan.c: Include rtl.h and expr.h.
(ubsan_encode_value): Add new parameter. If expanding, assign
a stack slot for DECL_RTL of the temporary and call expand_assignment.
Handle BOOLEAN_TYPE and ENUMERAL_TYPE.
(ubsan_build_overflow_builtin): Adjust ubsan_encode_value call.
* ubsan.h (ubsan_encode_value): Adjust declaration.
* internal-fn.c (ubsan_expand_si_overflow_addsub_check): Move
ubsan_build_overflow_builtin above expand_normal call. Surround this call
with push_temp_slots and pop_temp_slots.
(ubsan_expand_si_overflow_neg_check): Likewise.
(ubsan_expand_si_overflow_mul_check): Likewise.
testsuite/
* c-c++-common/ubsan/pr59333.c: New test.
* c-c++-common/ubsan/pr59397.c: New test.
From-SVN: r205714
Yufeng Zhang [Thu, 5 Dec 2013 17:28:08 +0000 (17:28 +0000)]
gimple-ssa-strength-reduction.c (find_basis_for_candidate): Guard the get_alternative_base call with flag_expensive_optimizations.
gcc/
* gimple-ssa-strength-reduction.c (find_basis_for_candidate): Guard
the get_alternative_base call with flag_expensive_optimizations.
(alloc_cand_and_find_basis): Likewise.
From-SVN: r205713
Tejas Belagod [Thu, 5 Dec 2013 17:24:52 +0000 (17:24 +0000)]
Eliminate redundant vec_select moves.
gcc/
* rtlanal.c (set_noop_p): Return nonzero in case of redundant vec_select for
overlapping register lanes.
testsuite/
* config/gcc.dg/vect/vect-nop-move.c: New.
From-SVN: r205712
Ian Lance Taylor [Thu, 5 Dec 2013 16:39:53 +0000 (16:39 +0000)]
Revert this change; no longer required.
2013-11-06 Ian Lance Taylor <iant@google.com>
* go-lang.c (go_langhook_post_options): If
-fisolate-erroneous-paths was turned on by an optimization option,
turn it off.
From-SVN: r205711
H.J. Lu [Thu, 5 Dec 2013 14:41:38 +0000 (14:41 +0000)]
Add -lm to link_sanitizer_common
* configure.ac (link_sanitizer_common): Add -lm.
* configure: Regenerated.
From-SVN: r205710
Kirill Yukhin [Thu, 5 Dec 2013 12:20:19 +0000 (12:20 +0000)]
i386.c (ix86_expand_builtin): Generate reg for readflags built-in when optimizing.
* config/i386/i386.c (ix86_expand_builtin): Generate
reg for readflags built-in when optimizing.
* config/i386/i386.md (*pushfl<mode>): Rename to ...
(pushfl<mode>2): This. Fix iterator.
(*popfl<mode>): Rename to ...
(*popfl<mode>1): This. Fix iterator.
From-SVN: r205707
Marek Polacek [Thu, 5 Dec 2013 12:05:43 +0000 (12:05 +0000)]
c-common.c (c_sizeof_or_alignof_type): Move a declaration into [ADJUST_FIELD_ALIGN].
2013-12-05 Marek Polacek <polacek@redhat.com>
c-family/
* c-common.c (c_sizeof_or_alignof_type): Move a declaration into
[ADJUST_FIELD_ALIGN].
From-SVN: r205705
Max Ostapenko [Thu, 5 Dec 2013 11:35:09 +0000 (13:35 +0200)]
atomic_stack.c: New test.
2013-12-05 Max Ostapenko <m.ostapenko@partner.samsung.com>
* c-c++-common/tsan/atomic_stack.c: New test.
* c-c++-common/tsan/fd_pipe_race.c: New test.
* c-c++-common/tsan/free_race.c: New test.
* c-c++-common/tsan/mutexset1.c: New test.
* c-c++-common/tsan/race_on_barrier.c: New test.
* c-c++-common/tsan/sleep_sync.c: New test.
* c-c++-common/tsan/thread_leak.c: New test.
* c-c++-common/tsan/thread_leak1.c: New test.
* c-c++-common/tsan/thread_leak2.c: New test.
* c-c++-common/tsan/tiny_race.c: New test.
* c-c++-common/tsan/tls_race.c: New test.
* c-c++-common/tsan/write_in_reader_lock.c: New test.
* lib/tsan-dg.exp: New file.
* gcc.dg/tsan/tsan.exp: New file.
* g++.dg/tsan/tsan.exp: New file.
* g++.dg/dg.exp: Prune tsan subdirectory.
From-SVN: r205704
Kirill Yukhin [Thu, 5 Dec 2013 11:23:39 +0000 (11:23 +0000)]
i386.c (IX86_BUILTIN_READ_FLAGS): New.
ChangeLog/
* config/i386/i386.c(IX86_BUILTIN_READ_FLAGS): New.
(IX86_BUILTIN_WRITE_FLAGS): Ditto.
(ix86_init_mmx_sse_builtins): Define
__builtin_ia32_writeeflags_u32, __builtin_ia32_writeeflags_u64,
__builtin_ia32_readeflags_u32, __builtin_ia32_readeflags_u64.
(ix86_expand_builtin): Expand them.
* config/i386/ia32intrin.h (__readeflags): New.
(__writeeflags): Ditto.
* gcc/config/i386/i386.md (*pushfl<mode>): Ditto.
(*popfl<mode>1): Ditto.
testsuite/ChangeLog/
* gcc.target/i386/readeflags-1.c: New.
* gcc.target/i386/writeeflags-1.c: Ditto.
From-SVN: r205703
Jakub Jelinek [Thu, 5 Dec 2013 11:06:10 +0000 (12:06 +0100)]
Add forgotten file.
From-SVN: r205701
Kostya Serebryany [Thu, 5 Dec 2013 10:28:59 +0000 (10:28 +0000)]
libsanitizer merge from upstream r196489
From-SVN: r205700
Yury Gribov [Thu, 5 Dec 2013 10:00:47 +0000 (10:00 +0000)]
re PR sanitizer/59369 (c-c++-common/asan/pr59063-[1,2].c fails on darwin)
2013-12-05 Yury Gribov <y.gribov@samsung.com>
PR sanitizer/59369
* c-c++-common/asan/pr59063-1.c: Disable on non-Linux platforms.
* c-c++-common/asan/pr59063-2.c: Likewise.
From-SVN: r205699
Yury Gribov [Thu, 5 Dec 2013 09:56:03 +0000 (09:56 +0000)]
re PR sanitizer/59368 (libsanitizer spec file installed in the wrong place)
2013-12-05 Yury Gribov <y.gribov@samsung.com>
PR sanitizer/59368
* Makefile.am (gcc_version): Added gcc_version.
* Makefile.in: Regenerate.
From-SVN: r205698
Paolo Carlini [Thu, 5 Dec 2013 09:51:11 +0000 (09:51 +0000)]
decl.c (duplicate_decls): Replace pairs of errors and permerrors with error + inform (permerror + inform...
/cp
2013-12-05 Paolo Carlini <paolo.carlini@oracle.com>
* decl.c (duplicate_decls): Replace pairs of errors and permerrors
with error + inform (permerror + inform, respectively).
/testsuite
2013-12-05 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/cpp0x/constexpr-46336.C: Adjust expected messages.
* g++.dg/cpp0x/defaulted2.C: Likewise.
* g++.dg/cpp1y/auto-fn8.C: Likewise.
* g++.dg/gomp/udr-3.C: Likewise.
* g++.dg/lookup/extern-c-redecl5.C: Likewise.
* g++.dg/lookup/linkage1.C: Likewise.
* g++.dg/overload/new1.C: Likewise.
* g++.dg/parse/friend5.C: Likewise.
* g++.dg/parse/namespace-alias-1.C: Likewise.
* g++.dg/parse/namespace10.C: Likewise.
* g++.dg/parse/redef2.C: Likewise.
* g++.dg/template/friend44.C: Likewise.
* g++.old-deja/g++.brendan/crash42.C: Likewise.
* g++.old-deja/g++.brendan/crash52.C: Likewise.
* g++.old-deja/g++.brendan/crash55.C: Likewise.
* g++.old-deja/g++.jason/overload21.C: Likewise.
* g++.old-deja/g++.jason/overload5.C: Likewise.
* g++.old-deja/g++.jason/redecl1.C: Likewise.
* g++.old-deja/g++.law/arm8.C: Likewise.
* g++.old-deja/g++.other/main1.C: Likewise.
From-SVN: r205697
Richard Biener [Thu, 5 Dec 2013 09:20:51 +0000 (09:20 +0000)]
re PR tree-optimization/56787 (Vectorization fails because of CLOBBER statements)
2013-12-05 Richard Biener <rguenther@suse.de>
PR tree-optimization/56787
* gcc.dg/vect/pr56787.c: Adjust to not require vector float
division.
From-SVN: r205696
Kostya Serebryany [Thu, 5 Dec 2013 09:18:38 +0000 (09:18 +0000)]
libsanitizer merge from upstream r196090
From-SVN: r205695
Richard Biener [Thu, 5 Dec 2013 09:12:29 +0000 (09:12 +0000)]
re PR tree-optimization/59374 (-ftree-slp-vectorize breaks unique_ptr's move constructor)
2013-12-05 Richard Biener <rguenther@suse.de>
PR tree-optimization/59374
* tree-vect-data-refs.c (vect_slp_analyze_data_ref_dependence):
Commonize known and unknown dependence case fixing the allowed
read-write dependence case and dropping code that should not
matter.
* gcc.dg/torture/pr59374-1.c: New testcase.
* gcc.dg/torture/pr59374-2.c: Likewise.
From-SVN: r205694
Kirill Yukhin [Thu, 5 Dec 2013 07:54:43 +0000 (07:54 +0000)]
ia64.md (prologue_allocate_stack): Block auto- generation of predicated version.
ChangeLog/
* config/ia64/ia64.md (prologue_allocate_stack): Block auto-
generation of predicated version.
(epilogue_deallocate_stack): Ditto.
(prologue_allocate_stack_pr): Add explicit predicated version.
(epilogue_deallocate_stack_pr): Ditto.
* config/ia64/ia64.c (ia64_single_set): Use explicit versions.
testsuite/ChangeLog/
* gcc.target/ia64/pr52731.c: New.
From-SVN: r205692
Alan Modra [Thu, 5 Dec 2013 07:11:17 +0000 (17:41 +1030)]
* configure.ac (BUILD_CXXFLAGS) Don't use ALL_CXXFLAGS for
build != host.
<recursive call for build != host>: Clear GMPINC. Don't bother
saving CFLAGS.
From-SVN: r205690
Jeff Law [Thu, 5 Dec 2013 03:18:18 +0000 (20:18 -0700)]
common.opt: Split up -fisolate-erroneous-paths into -fisolate-erroneous-paths-dereference...
* common.opt: Split up -fisolate-erroneous-paths into
-fisolate-erroneous-paths-dereference and
-fisolate-erroneous-paths-attribute.
* invoke.texi: Corresponding changes.
* gimple.c (infer_nonnull_range): Add and use new arguments
to control what kind of statements can be used to infer a
non-null range.
* gimple.h (infer_nonnull_range): Update prototype.
* tree-vrp.c (infer_value_range): Corresponding changes.
* opts.c (default_options_table): Update due to option split.
* gimple-ssa-isolate-paths.c: Fix trailing whitespace.
(find_implicit_erroneous_behaviour): Pass additional arguments
to infer_nonnull_range.
(find_explicit_erroneous_behaviour): Similarly.
(gate_isolate_erroneous_paths): Check both of the new
options.
testsuite/
* gcc.dg/pr38984.c: Use -fno-isolate-erroneous-paths-dereference.
* gcc.dg/tree-ssa/isolate-2.c: Explicitly turn on
-fisolate-erroneous-paths-attribute.
* gcc.dg/tree-ssa/isolate-4.c: Likewise.
From-SVN: r205689
GCC Administrator [Thu, 5 Dec 2013 00:17:06 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r205688