| 2014-11-19 David Malcolm <dmalcolm@redhat.com> |
| |
| * gimple.h (struct gimple_statement_structure): Remove stray |
| newline. |
| |
| 2014-11-19 David Malcolm <dmalcolm@redhat.com> |
| |
| * gimple.c (gimple_build_assign_with_ops): Strengthen return type |
| of new overload, from gimple to gassign *. |
| |
| 2014-11-18 David Malcolm <dmalcolm@redhat.com> |
| |
| * cgraphbuild.c (pass_build_cgraph_edges::execute): Fix linebreak |
| at assignment statement. |
| * gimple-ssa-isolate-paths.c (find_implicit_erroneous_behaviour): |
| Likewise. |
| * gimple-ssa-strength-reduction.c (replace_one_candidate): Likewise. |
| * gimple-walk.c (walk_gimple_stmt): Likewise. |
| * gimple.c (gimple_build_return): Likewise. |
| (gimple_build_call_1): Likewise. |
| (gimple_build_call_internal_1): Likewise. |
| (gimple_build_label): Likewise. |
| (gimple_build_goto): Likewise. |
| (gimple_build_eh_filter): Likewise. |
| (gimple_build_eh_must_not_throw): Likewise. |
| (gimple_build_resx): Likewise. |
| (gimple_build_switch_nlabels): Likewise. |
| (gimple_build_eh_dispatch): Likewise. |
| (gimple_build_debug_bind_stat): Likewise. |
| (gimple_build_debug_source_bind_stat): Likewise. |
| (gimple_build_omp_critical): Likewise. |
| (gimple_build_omp_parallel): Likewise. |
| (gimple_build_omp_task): Likewise. |
| (gimple_build_omp_continue): Likewise. |
| (gimple_build_omp_sections): Likewise. |
| (gimple_build_omp_single): Likewise. |
| (gimple_build_omp_target): Likewise. |
| (gimple_build_omp_teams): Likewise. |
| (gimple_build_omp_atomic_load): Likewise. |
| (gimple_build_omp_atomic_store): Likewise. |
| (gimple_build_transaction): Likewise. |
| (gimple_copy): Likewise. |
| * gimple.h (gimple_call_fntype): Likewise. |
| (gimple_eh_filter_types): Likewise. |
| (gimple_eh_filter_types_ptr): Likewise. |
| (gimple_eh_filter_failure_ptr |
| (gimple_phi_capacity): Likewise. |
| (gimple_phi_num_args): Likewise. |
| (gimple_phi_result): Likewise. |
| (gimple_omp_for_clauses): Likewise. |
| (gimple_omp_for_clauses_ptr): Likewise. |
| (gimple_omp_for_set_clauses): Likewise. |
| (gimple_omp_for_collapse): Likewise. |
| (gimple_omp_for_index): Likewise. |
| (gimple_omp_for_index_ptr): Likewise. |
| (gimple_omp_for_set_index): Likewise. |
| (gimple_omp_for_initial): Likewise. |
| (gimple_omp_for_initial_ptr): Likewise. |
| (gimple_omp_for_set_initial): Likewise. |
| (gimple_omp_for_final): Likewise. |
| (gimple_omp_for_final_ptr): Likewise. |
| (gimple_omp_for_set_final): Likewise. |
| (gimple_omp_for_incr): Likewise. |
| (gimple_omp_for_incr_ptr): Likewise. |
| (gimple_omp_for_set_incr): Likewise. |
| (gimple_omp_for_pre_body_ptr): Likewise. |
| (gimple_omp_for_set_pre_body): Likewise. |
| (gimple_omp_parallel_clauses): Likewise. |
| (gimple_omp_task_clauses): Likewise. |
| (gimple_omp_task_clauses_ptr): Likewise. |
| (gimple_omp_task_set_clauses): Likewise. |
| (gimple_omp_task_child_fn): Likewise. |
| (gimple_omp_task_child_fn_ptr): Likewise. |
| (gimple_omp_task_set_child_fn): Likewise. |
| (gimple_omp_task_data_arg): Likewise. |
| (gimple_omp_task_data_arg_ptr): Likewise. |
| (gimple_omp_task_set_data_arg): Likewise. |
| (gimple_omp_taskreg_clauses): Likewise. |
| (gimple_omp_taskreg_clauses_ptr): Likewise. |
| (gimple_omp_taskreg_set_clauses): Likewise. |
| (gimple_omp_taskreg_child_fn): Likewise. |
| (gimple_omp_taskreg_child_fn_ptr): Likewise. |
| (gimple_omp_taskreg_set_child_fn): Likewise. |
| (gimple_omp_taskreg_data_arg): Likewise. |
| (gimple_omp_taskreg_data_arg_ptr): Likewise. |
| (gimple_omp_taskreg_set_data_arg): Likewise. |
| (gimple_omp_task_copy_fn): Likewise. |
| (gimple_omp_task_copy_fn_ptr): Likewise. |
| (gimple_omp_task_set_copy_fn): Likewise. |
| (gimple_omp_task_arg_size): Likewise. |
| (gimple_omp_task_arg_size_ptr): Likewise. |
| (gimple_omp_task_set_arg_size): Likewise. |
| (gimple_omp_task_arg_align): Likewise. |
| (gimple_omp_task_arg_align_ptr): Likewise. |
| (gimple_omp_task_set_arg_align): Likewise. |
| (gimple_omp_single_clauses): Likewise. |
| (gimple_omp_single_clauses_ptr): Likewise. |
| (gimple_omp_target_clauses): Likewise. |
| (gimple_omp_target_clauses_ptr): Likewise. |
| (gimple_omp_teams_clauses): Likewise. |
| (gimple_omp_teams_clauses_ptr): Likewise. |
| (gimple_omp_sections_clauses): Likewise. |
| (gimple_omp_sections_clauses_ptr): Likewise. |
| (gimple_omp_sections_set_clauses): Likewise. |
| (gimple_omp_sections_control): Likewise. |
| (gimple_omp_sections_control_ptr): Likewise. |
| (gimple_omp_sections_set_control): Likewise. |
| (gimple_omp_for_set_cond): Likewise. |
| (gimple_omp_for_cond): Likewise. |
| * graphite-sese-to-poly.c (follow_ssa_with_commutative_ops): Likewise. |
| (detect_commutative_reduction_assign): Likewise. |
| * ipa-split.c (verify_non_ssa_vars): Likewise. |
| (split_function): Likewise. |
| * omp-low.c (check_omp_nesting_restrictions): Likewise. |
| (remove_exit_barrier): Likewise. |
| (expand_omp_for_generic): Likewise. |
| (expand_omp_for_static_nochunk): Likewise. |
| (expand_omp_for_static_chunk): Likewise. |
| (expand_omp_atomic |
| (lower_omp_for): Likewise. |
| (lower_omp_taskreg): Likewise. |
| * predict.c (tree_estimate_probability_bb): Likewise. |
| * trans-mem.c (propagate_tm_flags_out): Likewise. |
| (execute_tm_mark): Likewise. |
| * tree-cfg.c (make_edges): Likewise. |
| * tree-inline.c (remap_gimple_stmt): Likewise. |
| (estimate_num_insns): Likewise. |
| * tree-sra.c (init_subtree_with_zero): Likewise. |
| (sra_modify_expr): Likewise. |
| * tree-ssa-forwprop.c (pass_forwprop::execute): Likewise. |
| * tree-ssa-loop-ivopts.c (remove_unused_ivs): Likewise. |
| * tree-ssa-math-opts.c (build_and_insert_cast): Likewise. |
| (pass_cse_sincos::execute): Likewise. |
| * tree-ssa-pre.c (do_regular_insertion): Likewise. |
| (eliminate_insert): Likewise. |
| * tree-ssa-reassoc.c (update_ops): Likewise. |
| * tree-ssa-tail-merge.c (same_succ_hash): Likewise. |
| * tree-tailcall.c (static): Likewise. |
| * tree-vrp.c (simplify_truth_ops_using_ranges): Likewise. |
| |
| 2014-11-14 David Malcolm <dmalcolm@redhat.com> |
| |
| * cgraph.c (cgraph_edge::redirect_call_stmt_to_callee): |
| Strengthen locals "dbndret" and "ibndret" from gimple to gcall *. |
| * gimple-iterator.c (gsi_for_phi): New function. |
| * gimple-iterator.h (gsi_for_phi): New prototype. |
| * internal-fn.c (expand_ADD_OVERFLOW): Strengthen param "stmt" |
| from gimple to gcall *. |
| (expand_SUB_OVERFLOW): Likewise. |
| (expand_MUL_OVERFLOW): Likewise. |
| * ipa-icf-gimple.c (func_checker::compare_bb): Add checked casts |
| within case GIMPLE_CALL. |
| (func_checker::compare_gimple_call): Strengthen params from gimple |
| to gcall *. |
| * ipa-icf-gimple.h (func_checker::compare_gimple_call): Likewise. |
| * sanopt.c (sanopt_optimize_walker): Replace check for GIMPLE_ASM |
| with a dyn_cast, introducing local "asm_stmt" and using it in |
| place of "stmt" for typesafety. |
| * tree-chkp.c (chkp_recompute_phi_bounds): Strengthen locals |
| "bounds_phi" and "ptr_phi" from gimple to gphi *. |
| (chkp_add_bounds_to_ret_stmt): Strengthen local "ret" from gimple |
| to greturn *. |
| (chkp_add_bounds_to_call_stmt): Strengthen locals "call" and |
| "new_call" from gimple to gcall *. |
| (chkp_build_returned_bound): Likewise for param "call". |
| (chkp_retbnd_call_by_val): Likewise for return type. |
| (chkp_get_bounds_by_definition): Strengthen param "iter" from |
| gimple_stmt_iterator * to gphi_iterator *. Add a checked cast |
| within case GIMPLE_CALL. Use gsi_for_phi rather than |
| gsi_for_stmt. |
| (chkp_find_bounds_1): Strengthen local "phi_iter" from |
| gimple_stmt_iterator to gphi_iterator. Replace check for |
| GIMPLE_PHI with a dyn_cast, introducing local "def_phi" and using |
| in place of "def_stmt" for typesafety. |
| (chkp_copy_bounds_for_assign): Add checked cast. |
| (chkp_instrument_function): Within case GIMPLE_RETURN, add local |
| greturn * "r" from a checked cast and use in place of "s" for |
| typesafety. |
| * tree-chkp.h (chkp_retbnd_call_by_val): Strengthen return type |
| from gimple to gcall *. |
| * tree-inline.c (copy_bb): Update for renaming of field |
| "gimple_call" to "call_stmt" on the gimple-classes branch. |
| (expand_call_inline): Strengthen local "retbnc" from gimple to |
| gcall *. |
| * tree-ssa-forwprop.c (pass_forwprop::execute): Replace check for |
| GIMPLE_COND with a dyn_cast, introducing local "cond" and using |
| in place of "stmt" for typesafety. |
| * value-prof.c (gimple_ic): Strengthen local "iretbnd_stmt" from |
| gimple to gcall *. Weaken top-level local "psi" from |
| gphi_iterator back to gimple_stmt_iterator, reintroducing the |
| name as a phi_iterator within the for loop that needs it. |
| |
| 2014-10-28 David Malcolm <dmalcolm@redhat.com> |
| |
| * auto-profile.c (autofdo::function_instance::find_icall_target_map): |
| Strengthen param "stmt" from gimple to gcall *. |
| (autofdo::autofdo_source_profile::update_inlined_ind_target): |
| Likewise. |
| (autofdo::afdo_indirect_call): Rename local gimple "stmt" to "gs", |
| reintroducing "stmt" as a gcall * via a dyn_cast once we've |
| established that we have a GIMPLE_CALL. |
| (autofdo::afdo_set_bb_count): Use a gphi_iterator for the phi |
| iteration, renaming it from "gsi" to "gpi", strengthening |
| local "phi" from gimple to gphi *. |
| (autofdo::afdo_propagate_circuit): Rename local gimple "phi_stmt" |
| to "def_stmt". Reintroduce "phi_stmt" as a gphi * via a dyn_cast |
| once we know we have a GIMPLE_PHI. |
| (autofdo::afdo_vpt_for_early_inline): Strengthen local "stmt" from |
| gimple to gcall *, using a dyn_cast. |
| * gimple-fold.c (replace_stmt_with_simplification): Replace check |
| against GIMPLE_COND with a dyn_cast <gcond *>, introducing local |
| "cond_stmt". Use "cond_stmt" in place of "stmt" for typesafety. |
| * gimple-iterator.h (gsi_next_nonvirtual_phi): Strengthen param |
| from gimple_stmt_iterator * to gphi_iterator *, and local "phi" |
| from gimple to gphi *. |
| * ipa-icf-gimple.c (ipa_icf_gimple::func_checker::parse_labels): |
| Replace check against GIMPLE_LABEL with a dyn_cast <glabel *>, |
| introducing local "label_stmt". Use it in place of "stmt" for |
| typesafety. |
| (ipa_icf_gimple::func_checker::compare_bb): Add checked casts |
| to appropriate gimple subclasses when invoking comparison methods |
| within the cases for GIMPLE_SWITCH, GIMPLE_RESX, GIMPLE_LABEL, |
| GIMPLE_RETURN, GIMPLE_ASM. |
| (ipa_icf_gimple::func_checker::compare_gimple_label): Strengthen |
| both params from gimple to const glabel *. |
| (ipa_icf_gimple::func_checker::compare_gimple_switch): Strengthen |
| both params from gimple to const gswitch *. |
| (ipa_icf_gimple::func_checker::compare_gimple_return): Strengthen |
| both params from gimple to const greturn *. |
| (ipa_icf_gimple::func_checker::compare_gimple_resx): Strengthen |
| both params from gimple to const gresx *. |
| (ipa_icf_gimple::func_checker::compare_gimple_asm): Strengthen |
| both params from gimple to const gasm *. |
| * ipa-icf-gimple.h (ipa_icf_gimple::func_checker::compare_gimple_label): |
| Strengthen both params from gimple to const glabel *. |
| (ipa_icf_gimple::func_checker::compare_gimple_switch): Strengthen |
| both params from gimple to const gswitch *. |
| (ipa_icf_gimple::func_checker::compare_gimple_return): Strengthen |
| both params from gimple to const greturn *. |
| (ipa_icf_gimple::func_checker::compare_gimple_resx): Strengthen |
| both params from gimple to const gresx *. |
| (ipa_icf_gimple::func_checker::compare_gimple_asm): Strengthen |
| both params from gimple to const gasm *. |
| * ipa-icf.c (ipa_icf_gimple::sem_function::compare_phi_node): |
| Strengthen locals "si1" and "si2" from gimple_stmt_iterator to |
| gphi_iterator, and locals "phi1" and "phi2" from gimple to gphi *. |
| * tree-ssa-forwprop.c (fold_all_stmts): Replace check against |
| GIMPLE_COND with a dyn_cast <gcond *>, introducing local |
| "cond_stmt". Use "cond_stmt" in place of "stmt" for typesafety. |
| * tree-ssa-reassoc.c (branch_fixup): Strengthen local "phi" from |
| gimple to gphi *. |
| |
| 2014-10-27 David Malcolm <dmalcolm@redhat.com> |
| |
| * doc/gimple.texi (Class hierarchy of GIMPLE statements): Update |
| to reflect the new gimple subclasses and the renamings of existing |
| classes. |
| |
| 2014-10-27 David Malcolm <dmalcolm@redhat.com> |
| |
| * gimple.h (struct gdebug): Remove out-of-date references to |
| typedefs. |
| (struct ggoto): Likewise. |
| (struct glabel): Likewise. |
| |
| 2014-10-27 David Malcolm <dmalcolm@redhat.com> |
| |
| Patch autogenerated by rename_gimple_subclasses.py from |
| https://github.com/davidmalcolm/gcc-refactoring-scripts |
| revision 7d754b63ff2bf47226a67b2c0af5d74b54d4709f |
| |
| * asan.c (get_mem_ref_of_assignment): Rename gimple subclass types. |
| (instrument_strlen_call): Likewise. |
| (instrument_builtin_call): Likewise. |
| (has_mem_ref_been_instrumented): Likewise. |
| (has_stmt_been_instrumented_p): Likewise. |
| (create_cond_insert_point): Likewise. |
| (asan_expand_check_ifn): Likewise. |
| * builtins.c (validate_arg): Likewise. |
| (do_mpc_arg2): Likewise. |
| * builtins.h (validate_gimple_arglist): Likewise. |
| (fold_call_stmt): Likewise. |
| * cfgexpand.c (mark_transaction_restart_calls): Likewise. |
| (expand_gimple_stmt): Likewise. |
| (expand_asm_operands): Likewise. |
| (label_rtx_for_bb): Likewise. |
| (expand_gimple_stmt_1): Likewise. |
| (maybe_cleanup_end_of_block): Likewise. |
| (expand_gimple_basic_block): Likewise. |
| * cfgloop.c (find_subloop_latch_edge_by_ivs): Likewise. |
| * cfgloopmanip.c (create_empty_if_region_on_edge): Likewise. |
| (create_empty_loop_on_edge): Likewise. |
| * cgraph.c (cgraph_add_edge_to_call_site_hash): Likewise. |
| (cgraph_allocate_init_indirect_info): Likewise. |
| (cgraph_set_edge_callee): Likewise. |
| (cgraph_update_edges_for_call_stmt_node): Likewise. |
| * cgraph.h (set_call_stmt_including_clones): Likewise. |
| (create_indirect_edge): Likewise. |
| (create_edge_including_clones): Likewise. |
| (set_call_stmt): Likewise. |
| (redirect_call_stmt_to_callee): Likewise. |
| (rebuild_references): Likewise. |
| (create_edge): Likewise. |
| * cgraphbuild.c (mark_store): Likewise. |
| (record_references_in_initializer): Likewise. |
| * cgraphclones.c (function): Likewise. |
| (clone_function_name): Likewise. |
| * cgraphunit.c (thunk_adjust): Likewise. |
| * coretypes.h: Likewise. |
| * expr.h (expand_normal): Likewise. |
| * gimple-builder.c (get_expr_type): Likewise. |
| (build_assign): Likewise. |
| (build_type_cast): Likewise. |
| * gimple-builder.h (build_assign): Likewise. |
| (build_type_cast): Likewise. |
| * gimple-fold.c (gimple_fold_builtin_snprintf_chk): Likewise. |
| (gimple_fold_builtin_sprintf_chk): Likewise. |
| (gimple_fold_builtin_snprintf): Likewise. |
| (gimple_fold_builtin): Likewise. |
| (gimple_fold_call): Likewise. |
| (gimple_fold_stmt_to_constant_1): Likewise. |
| (fold_gimple_assign): Likewise. |
| (fold_stmt_1): Likewise. |
| * gimple-iterator.c (gsi_commit_one_edge_insert): Likewise. |
| (gsi_start_phis): Likewise. |
| * gimple-iterator.h (gsi_commit_one_edge_insert): Likewise. |
| (gimple_phi_iterator::phi): Likewise. |
| * gimple-low.c (lower_try_catch): Likewise. |
| (gimple_try_catch_may_fallthru): Likewise. |
| (lower_gimple_bind): Likewise. |
| (gimple_stmt_may_fallthru): Likewise. |
| (struct return_statements_t): Likewise. |
| (lower_gimple_return): Likewise. |
| (lower_stmt): Likewise. |
| * gimple-pretty-print.c (dump_gimple_omp_target): Likewise. |
| (dump_gimple_omp_single): Likewise. |
| (dump_gimple_omp_continue): Likewise. |
| (dump_gimple_omp_teams): Likewise. |
| (dump_gimple_omp_parallel): Likewise. |
| (dump_gimple_phi): Likewise. |
| (dump_gimple_debug): Likewise. |
| (dump_gimple_omp_block): Likewise. |
| (dump_gimple_omp_for): Likewise. |
| (dump_gimple_omp_atomic_load): Likewise. |
| (dump_gimple_omp_task): Likewise. |
| (dump_gimple_bind): Likewise. |
| (dump_ssaname_info): Likewise. |
| (dump_phi_nodes): Likewise. |
| (gimple_dump_bb_for_graph): Likewise. |
| (dump_gimple_resx): Likewise. |
| (dump_gimple_eh_else): Likewise. |
| (dump_gimple_eh_must_not_throw): Likewise. |
| (dump_gimple_eh_filter): Likewise. |
| (dump_gimple_catch): Likewise. |
| (dump_gimple_try): Likewise. |
| (dump_gimple_goto): Likewise. |
| (dump_gimple_assign): Likewise. |
| (dump_gimple_omp_return): Likewise. |
| (dump_gimple_return): Likewise. |
| (pp_points_to_solution): Likewise. |
| (dump_gimple_transaction): Likewise. |
| (dump_gimple_fmt): Likewise. |
| (dump_unary_rhs): Likewise. |
| (dump_binary_rhs): Likewise. |
| (dump_ternary_rhs): Likewise. |
| (dump_gimple_call): Likewise. |
| (dump_gimple_cond): Likewise. |
| (pp_cfg_jump): Likewise. |
| (dump_gimple_label): Likewise. |
| (dump_gimple_eh_dispatch): Likewise. |
| (dump_gimple_switch): Likewise. |
| (pp_gimple_stmt_1): Likewise. |
| * gimple-ssa-isolate-paths.c (isolate_path): Likewise. |
| (find_implicit_erroneous_behaviour): Likewise. |
| (find_explicit_erroneous_behaviour): Likewise. |
| (insert_trap_and_remove_trailing_statements): Likewise. |
| * gimple-ssa-strength-reduction.c (slsr_process_copy): Likewise. |
| (add_cand_for_stmt): Likewise. |
| (create_phi_basis): Likewise. |
| (ncd_for_two_cands): Likewise. |
| (ncd_with_phi): Likewise. |
| (ncd_of_cand_and_phis): Likewise. |
| (replace_mult_candidate): Likewise. |
| (create_add_on_incoming_edge): Likewise. |
| (insert_initializers): Likewise. |
| (introduce_cast_before_cand): Likewise. |
| (replace_one_candidate): Likewise. |
| * gimple-streamer-in.c (input_phi): Likewise. |
| (input_gimple_stmt): Likewise. |
| * gimple-streamer-out.c (output_phi): Likewise. |
| (output_bb): Likewise. |
| (output_gimple_stmt): Likewise. |
| * gimple-walk.c (walk_gimple_stmt): Likewise. |
| (walk_gimple_seq): Likewise. |
| (walk_gimple_op): Likewise. |
| (walk_stmt_load_store_addr_ops): Likewise. |
| * gimple.c (gimple_build_omp_target): Likewise. |
| (gimple_build_omp_sections_switch): Likewise. |
| (gimple_build_omp_single): Likewise. |
| (gimple_build_omp_return): Likewise. |
| (gimple_build_omp_sections): Likewise. |
| (gimple_build_omp_task): Likewise. |
| (gimple_build_omp_parallel): Likewise. |
| (gimple_build_omp_for): Likewise. |
| (gimple_build_omp_critical): Likewise. |
| (gimple_build_omp_taskgroup): Likewise. |
| (gimple_build_omp_continue): Likewise. |
| (gimple_build_omp_teams): Likewise. |
| (gimple_build_omp_atomic_load): Likewise. |
| (gimple_build_try): Likewise. |
| (gimple_build_wce): Likewise. |
| (gimple_build_eh_else): Likewise. |
| (gimple_build_eh_must_not_throw): Likewise. |
| (gimple_build_eh_filter): Likewise. |
| (gimple_build_catch): Likewise. |
| (gimple_build_nop): Likewise. |
| (empty_stmt_p): Likewise. |
| (gimple_build_with_ops_stat): Likewise. |
| (infer_nonnull_range): Likewise. |
| (gimple_build_omp_atomic_store): Likewise. |
| (gimple_build_transaction): Likewise. |
| (gimple_copy): Likewise. |
| (gimple_call_flags): Likewise. |
| (gimple_call_fnspec): Likewise. |
| (gimple_call_arg_flags): Likewise. |
| (gimple_build_return): Likewise. |
| (gimple_call_reset_alias_info): Likewise. |
| (gimple_build_call_1): Likewise. |
| (gimple_build_call_vec): Likewise. |
| (gimple_build_call): Likewise. |
| (gimple_build_call_valist): Likewise. |
| (gimple_build_call_internal_1): Likewise. |
| (gimple_build_call_internal): Likewise. |
| (gimple_build_call_internal_vec): Likewise. |
| (canonicalize_cond_expr_cond): Likewise. |
| (gimple_call_copy_skip_args): Likewise. |
| (gimple_has_side_effects): Likewise. |
| (gimple_call_builtin_p): Likewise. |
| (gimple_build_bind): Likewise. |
| (gimple_build_asm_vec): Likewise. |
| (gimple_could_trap_p_1): Likewise. |
| (gimple_build_asm_1): Likewise. |
| (gimple_build_call_from_tree): Likewise. |
| (gimple_build_assign_stat): Likewise. |
| (gimple_build_resx): Likewise. |
| (gimple_build_switch_nlabels): Likewise. |
| (gimple_build_switch): Likewise. |
| (gimple_cond_set_condition_from_tree): Likewise. |
| (gimple_set_bb): Likewise. |
| (gimple_build_label): Likewise. |
| (gimple_build_goto): Likewise. |
| (gimple_build_eh_dispatch): Likewise. |
| (gimple_build_debug_bind_stat): Likewise. |
| (gimple_build_debug_source_bind_stat): Likewise. |
| (gimple_build_assign_with_ops): Likewise. |
| (gimple_build_cond): Likewise. |
| (gimple_build_cond_from_tree): Likewise. |
| * gimple.h (gimple_build_omp_target): Likewise. |
| (gimple_omp_teams_clauses): Likewise. |
| (gimple_omp_teams_clauses_ptr): Likewise. |
| (gimple_omp_target_set_kind): Likewise. |
| (gimple_omp_target_set_child_fn): Likewise. |
| (gimple_build_omp_single): Likewise. |
| (gimple_omp_target_kind): Likewise. |
| (gimple_omp_target_child_fn): Likewise. |
| (gimple_omp_target_child_fn_ptr): Likewise. |
| (gimple_omp_target_data_arg): Likewise. |
| (gimple_omp_target_data_arg_ptr): Likewise. |
| (gimple_omp_target_clauses): Likewise. |
| (gimple_omp_target_clauses_ptr): Likewise. |
| (gimple_build_omp_sections_switch): Likewise. |
| (gimple_omp_single_clauses): Likewise. |
| (gimple_omp_single_clauses_ptr): Likewise. |
| (gimple_build_omp_return): Likewise. |
| (gimple_omp_sections_clauses): Likewise. |
| (gimple_omp_sections_clauses_ptr): Likewise. |
| (gimple_omp_sections_set_clauses): Likewise. |
| (gimple_omp_sections_control): Likewise. |
| (gimple_omp_sections_control_ptr): Likewise. |
| (gimple_omp_sections_set_control): Likewise. |
| (gimple_build_omp_parallel): Likewise. |
| (gimple_omp_task_clauses): Likewise. |
| (gimple_omp_task_clauses_ptr): Likewise. |
| (gimple_omp_task_set_clauses): Likewise. |
| (gimple_omp_task_child_fn): Likewise. |
| (gimple_omp_task_child_fn_ptr): Likewise. |
| (gimple_omp_task_set_child_fn): Likewise. |
| (gimple_omp_task_data_arg): Likewise. |
| (gimple_omp_task_data_arg_ptr): Likewise. |
| (gimple_omp_task_set_data_arg): Likewise. |
| (gimple_omp_task_copy_fn): Likewise. |
| (gimple_omp_task_copy_fn_ptr): Likewise. |
| (gimple_omp_task_set_copy_fn): Likewise. |
| (gimple_omp_task_arg_size): Likewise. |
| (gimple_omp_task_arg_size_ptr): Likewise. |
| (gimple_omp_task_set_arg_size): Likewise. |
| (gimple_omp_task_arg_align): Likewise. |
| (gimple_omp_task_arg_align_ptr): Likewise. |
| (gimple_omp_task_set_arg_align): Likewise. |
| (gimple_omp_parallel_set_clauses): Likewise. |
| (gimple_omp_parallel_set_child_fn): Likewise. |
| (gimple_build_omp_for): Likewise. |
| (gimple_omp_parallel_clauses_ptr): Likewise. |
| (gimple_omp_parallel_child_fn): Likewise. |
| (gimple_omp_parallel_child_fn_ptr): Likewise. |
| (gimple_omp_parallel_data_arg): Likewise. |
| (gimple_omp_parallel_data_arg_ptr): Likewise. |
| (gimple_omp_parallel_clauses): Likewise. |
| (gimple_build_omp_critical): Likewise. |
| (gimple_omp_for_kind): Likewise. |
| (gimple_omp_for_combined_p): Likewise. |
| (gimple_omp_for_combined_into_p): Likewise. |
| (gimple_omp_for_clauses): Likewise. |
| (gimple_omp_for_clauses_ptr): Likewise. |
| (gimple_omp_for_set_clauses): Likewise. |
| (gimple_omp_for_collapse): Likewise. |
| (gimple_omp_for_index): Likewise. |
| (gimple_omp_for_index_ptr): Likewise. |
| (gimple_omp_for_set_index): Likewise. |
| (gimple_omp_for_initial): Likewise. |
| (gimple_omp_for_initial_ptr): Likewise. |
| (gimple_omp_for_set_initial): Likewise. |
| (gimple_omp_for_final): Likewise. |
| (gimple_omp_for_final_ptr): Likewise. |
| (gimple_omp_for_set_final): Likewise. |
| (gimple_omp_for_incr): Likewise. |
| (gimple_omp_for_incr_ptr): Likewise. |
| (gimple_omp_for_set_incr): Likewise. |
| (gimple_omp_for_pre_body_ptr): Likewise. |
| (gimple_omp_for_set_pre_body): Likewise. |
| (gimple_omp_for_set_cond): Likewise. |
| (gimple_omp_set_body): Likewise. |
| (gimple_build_debug_source_bind_stat): Likewise. |
| (gimple_omp_critical_name): Likewise. |
| (gimple_omp_critical_name_ptr): Likewise. |
| (gimple_omp_atomic_load_rhs_ptr): Likewise. |
| (gimple_omp_continue_set_control_def): Likewise. |
| (gimple_build_omp_taskgroup): Likewise. |
| (gimple_omp_continue_control_def): Likewise. |
| (gimple_omp_continue_control_def_ptr): Likewise. |
| (gimple_omp_continue_control_use): Likewise. |
| (gimple_omp_continue_control_use_ptr): Likewise. |
| (gimple_omp_atomic_store_set_val): Likewise. |
| (gimple_build_omp_atomic_load): Likewise. |
| (gimple_omp_for_cond): Likewise. |
| (gimple_omp_atomic_store_val): Likewise. |
| (gimple_omp_atomic_load_set_lhs): Likewise. |
| (gimple_omp_atomic_load_set_rhs): Likewise. |
| (gimple_build_omp_teams): Likewise. |
| (gimple_omp_atomic_store_val_ptr): Likewise. |
| (gimple_omp_atomic_load_lhs): Likewise. |
| (gimple_omp_atomic_load_lhs_ptr): Likewise. |
| (gimple_omp_atomic_load_rhs): Likewise. |
| (gimple_try_kind): Likewise. |
| (gimple_try_cleanup): Likewise. |
| (gimple_try_set_catch_is_cleanup): Likewise. |
| (gimple_try_set_eval): Likewise. |
| (gimple_build_eh_else): Likewise. |
| (gimple_try_eval_ptr): Likewise. |
| (gimple_try_cleanup_ptr): Likewise. |
| (gimple_phi_capacity): Likewise. |
| (gimple_phi_num_args): Likewise. |
| (gimple_phi_result): Likewise. |
| (gimple_phi_result_ptr): Likewise. |
| (gimple_phi_arg): Likewise. |
| (gimple_phi_arg_def): Likewise. |
| (gimple_phi_arg_def_ptr): Likewise. |
| (gimple_phi_arg_edge): Likewise. |
| (gimple_phi_arg_location): Likewise. |
| (gimple_phi_arg_location_from_edge): Likewise. |
| (gimple_phi_arg_set_location): Likewise. |
| (gimple_resx_set_region): Likewise. |
| (gimple_build_switch): Likewise. |
| (gimple_eh_dispatch_region): Likewise. |
| (gimple_phi_arg_has_location): Likewise. |
| (gimple_build_wce): Likewise. |
| (gimple_resx_region): Likewise. |
| (gimple_build_eh_must_not_throw): Likewise. |
| (gimple_eh_must_not_throw_set_fndecl): Likewise. |
| (gimple_eh_else_n_body_ptr): Likewise. |
| (gimple_eh_else_n_body): Likewise. |
| (gimple_eh_else_e_body_ptr): Likewise. |
| (gimple_eh_else_e_body): Likewise. |
| (gimple_eh_else_set_n_body): Likewise. |
| (gimple_build_eh_filter): Likewise. |
| (gimple_eh_filter_set_failure): Likewise. |
| (gimple_eh_must_not_throw_fndecl): Likewise. |
| (gimple_build_catch): Likewise. |
| (gimple_eh_filter_failure): Likewise. |
| (gimple_eh_filter_set_types): Likewise. |
| (gimple_eh_filter_types): Likewise. |
| (gimple_eh_filter_types_ptr): Likewise. |
| (gimple_eh_filter_failure_ptr): Likewise. |
| (gimple_asm_input_p): Likewise. |
| (gimple_build_asm_vec): Likewise. |
| (gimple_catch_types): Likewise. |
| (gimple_catch_types_ptr): Likewise. |
| (gimple_catch_handler_ptr): Likewise. |
| (gimple_catch_handler): Likewise. |
| (gimple_catch_set_types): Likewise. |
| (gimple_statement_catch): Likewise. |
| (gimple_goto_set_dest): Likewise. |
| (gimple_bind_add_seq): Likewise. |
| (gimple_build_nop): Likewise. |
| (gimple_seq_first_stmt): Likewise. |
| (gimple_seq_first_stmt_as_a_bind): Likewise. |
| (gimple_bind_vars): Likewise. |
| (gimple_bind_set_vars): Likewise. |
| (gimple_bind_append_vars): Likewise. |
| (gimple_bind_body_ptr): Likewise. |
| (gimple_bind_body): Likewise. |
| (gimple_bind_set_body): Likewise. |
| (gimple_bind_add_stmt): Likewise. |
| (gimple_bind_block): Likewise. |
| (gimple_transaction_set_subcode): Likewise. |
| (gimple_return_retval_ptr): Likewise. |
| (gimple_alloc_stat): Likewise. |
| (gimple_return_retval): Likewise. |
| (gimple_transaction_body): Likewise. |
| (gimple_transaction_label_ptr): Likewise. |
| (gimple_build_omp_atomic_store): Likewise. |
| (gimple_omp_continue_set_control_use): Likewise. |
| (gimple_transaction_body_ptr): Likewise. |
| (gimple_transaction_label): Likewise. |
| (gimple_transaction_subcode): Likewise. |
| (gimple_transaction_set_body): Likewise. |
| (gimple_transaction_set_label): Likewise. |
| (gimple_call_arg_flags): Likewise. |
| (gimple_call_return_flags): Likewise. |
| (gimple_call_fndecl): Likewise. |
| (gimple_call_chain): Likewise. |
| (gimple_expr_type): Likewise. |
| (gimple_call_reset_alias_info): Likewise. |
| (gimple_build_call_vec): Likewise. |
| (gimple_build_call): Likewise. |
| (gimple_build_call_valist): Likewise. |
| (gimple_build_call_internal): Likewise. |
| (gimple_build_call_internal_vec): Likewise. |
| (canonicalize_cond_expr_cond): Likewise. |
| (gimple_call_copy_skip_args): Likewise. |
| (gimple_call_fn_ptr): Likewise. |
| (gimple_call_set_fndecl): Likewise. |
| (gimple_call_chain_ptr): Likewise. |
| (gimple_call_set_arg): Likewise. |
| (gimple_call_set_tail): Likewise. |
| (gimple_call_tail_p): Likewise. |
| (gimple_call_set_return_slot_opt): Likewise. |
| (gimple_call_return_slot_opt_p): Likewise. |
| (gimple_call_set_from_thunk): Likewise. |
| (gimple_call_from_thunk_p): Likewise. |
| (gimple_call_set_va_arg_pack): Likewise. |
| (gimple_call_noreturn_p): Likewise. |
| (gimple_call_set_nothrow): Likewise. |
| (gimple_call_nothrow_p): Likewise. |
| (gimple_call_set_alloca_for_var): Likewise. |
| (gimple_call_alloca_for_var_p): Likewise. |
| (gimple_call_copy_flags): Likewise. |
| (gimple_call_use_set): Likewise. |
| (gimple_statement_call): Likewise. |
| (gimple_call_internal_fn): Likewise. |
| (gimple_call_fntype): Likewise. |
| (gimple_asm_clobbers_memory_p): Likewise. |
| (gimple_bind_set_block): Likewise. |
| (gimple_asm_ninputs): Likewise. |
| (gimple_asm_noutputs): Likewise. |
| (gimple_asm_nclobbers): Likewise. |
| (gimple_asm_nlabels): Likewise. |
| (gimple_asm_input_op): Likewise. |
| (gimple_asm_set_input_op): Likewise. |
| (gimple_asm_output_op): Likewise. |
| (gimple_asm_set_output_op): Likewise. |
| (gimple_asm_set_clobber_op): Likewise. |
| (gimple_asm_set_label_op): Likewise. |
| (gimple_asm_string): Likewise. |
| (gimple_asm_set_input): Likewise. |
| (gimple_build_bind): Likewise. |
| (gimple_asm_input_op_ptr): Likewise. |
| (gimple_asm_output_op_ptr): Likewise. |
| (gimple_asm_clobber_op): Likewise. |
| (gimple_asm_label_op): Likewise. |
| (gimple_asm_volatile_p): Likewise. |
| (gimple_asm_set_volatile): Likewise. |
| (gimple_assign_set_rhs_with_ops): Likewise. |
| (gimple_build_call_from_tree): Likewise. |
| (gimple_build_assign_stat): Likewise. |
| (gimple_eh_dispatch_set_region): Likewise. |
| (gimple_switch_set_num_labels): Likewise. |
| (gimple_switch_index): Likewise. |
| (gimple_switch_set_index): Likewise. |
| (gimple_switch_set_label): Likewise. |
| (gimple_build_resx): Likewise. |
| (gimple_build_switch_nlabels): Likewise. |
| (gimple_switch_num_labels): Likewise. |
| (gimple_switch_index_ptr): Likewise. |
| (gimple_switch_label): Likewise. |
| (gimple_switch_default_label): Likewise. |
| (gimple_cond_set_condition): Likewise. |
| (gimple_label_label): Likewise. |
| (gimple_build_label): Likewise. |
| (gimple_goto_dest): Likewise. |
| (gimple_build_eh_dispatch): Likewise. |
| (gimple_build_debug_bind_stat): Likewise. |
| (gimple_cond_lhs): Likewise. |
| (gimple_cond_rhs): Likewise. |
| (gimple_cond_set_rhs): Likewise. |
| (gimple_cond_set_false_label): Likewise. |
| (gimple_cond_make_true): Likewise. |
| (gimple_cond_true_p): Likewise. |
| (gimple_build_assign_with_ops): Likewise. |
| (gimple_build_cond): Likewise. |
| (gimple_cond_set_condition_from_tree): Likewise. |
| (gimple_cond_code): Likewise. |
| (gimple_cond_lhs_ptr): Likewise. |
| (gimple_cond_rhs_ptr): Likewise. |
| (gimple_cond_true_label): Likewise. |
| (gimple_cond_set_true_label): Likewise. |
| (gimple_cond_false_label): Likewise. |
| (gimple_cond_make_false): Likewise. |
| (gimple_cond_false_p): Likewise. |
| (gimple_statement_cond): Likewise. |
| (is_a_helper <gimple_statement_cond *>): Likewise. |
| * gimplify-me.c (gimple_regimplify_operands): Likewise. |
| * gimplify.c (gimplify_omp_target_update): Likewise. |
| (gimplify_omp_for): Likewise. |
| (gimplify_omp_atomic): Likewise. |
| (gimplify_cleanup_point_expr): Likewise. |
| (struct gimplify_ctx): Likewise. |
| (pop_gimplify_context): Likewise. |
| (gimple_pop_bind_expr): Likewise. |
| (gimple_current_bind_expr): Likewise. |
| (declare_vars): Likewise. |
| (gimplify_one_sizepos): Likewise. |
| (gimplify_body): Likewise. |
| (gimplify_return_expr): Likewise. |
| (gimplify_transaction): Likewise. |
| (voidify_wrapper_expr): Likewise. |
| (gimplify_bind_expr): Likewise. |
| (gimplify_call_expr): Likewise. |
| (gimplify_modify_expr_to_memcpy): Likewise. |
| (gimplify_modify_expr_to_memset): Likewise. |
| (gimplify_modify_expr): Likewise. |
| (gimplify_expr): Likewise. |
| (gimplify_function_tree): Likewise. |
| (gimplify_asm_expr): Likewise. |
| (gimplify_init_constructor): Likewise. |
| (gimple_push_cleanup): Likewise. |
| (gimplify_switch_expr): Likewise. |
| (gimplify_case_label_expr): Likewise. |
| (gimplify_cond_expr): Likewise. |
| * gimplify.h (pop_gimplify_context): Likewise. |
| (gimple_current_bind_expr): Likewise. |
| (gimplify_one_sizepos): Likewise. |
| * graphite-scop-detection.c (limit_scops): Likewise. |
| (same_close_phi_node): Likewise. |
| (make_close_phi_nodes_unique): Likewise. |
| (canonicalize_loop_closed_ssa): Likewise. |
| * graphite-sese-to-poly.c (phi_arg_in_outermost_loop): Likewise. |
| (simple_copy_phi_p): Likewise. |
| (gsi_for_phi_node): Likewise. |
| (rewrite_close_phi_out_of_ssa): Likewise. |
| (rewrite_cross_bb_scalar_deps): Likewise. |
| (rewrite_commutative_reductions_out_of_ssa_loop): Likewise. |
| (tree_int_to_gmp): Likewise. |
| (reduction_phi_p): Likewise. |
| (build_scop_drs): Likewise. |
| (rewrite_phi_out_of_ssa): Likewise. |
| (rewrite_degenerate_phi): Likewise. |
| (rewrite_reductions_out_of_ssa): Likewise. |
| (is_reduction_operation_p): Likewise. |
| (phi_contains_arg): Likewise. |
| (follow_ssa_with_commutative_ops): Likewise. |
| (detect_commutative_reduction_arg): Likewise. |
| (detect_commutative_reduction_assign): Likewise. |
| (follow_inital_value_to_phi): Likewise. |
| (edge_initial_value_for_loop_phi): Likewise. |
| (used_outside_reduction): Likewise. |
| (detect_commutative_reduction): Likewise. |
| (dr_indices_valid_in_loop): Likewise. |
| (translate_scalar_reduction_to_array): Likewise. |
| (scop_ivs_can_be_represented): Likewise. |
| (remove_simple_copy_phi): Likewise. |
| (remove_invariant_phi): Likewise. |
| (insert_out_of_ssa_copy): Likewise. |
| (translate_scalar_reduction_to_array_for_stmt): Likewise. |
| (create_pw_aff_from_tree): Likewise. |
| (add_conditions_to_domain): Likewise. |
| (add_conditions_to_constraints): Likewise. |
| (single_pred_cond_non_loop_exit): Likewise. |
| * gsstruct.def: Likewise. |
| * internal-fn.c (get_multi_vector_move): Likewise. |
| (expand_LOAD_LANES): Likewise. |
| (expand_STORE_LANES): Likewise. |
| (expand_ANNOTATE): Likewise. |
| (expand_GOMP_SIMD_LANE): Likewise. |
| (expand_GOMP_SIMD_VF): Likewise. |
| (expand_GOMP_SIMD_LAST_LANE): Likewise. |
| (expand_UBSAN_NULL): Likewise. |
| (expand_UBSAN_BOUNDS): Likewise. |
| (expand_UBSAN_OBJECT_SIZE): Likewise. |
| (expand_ASAN_CHECK): Likewise. |
| (ubsan_expand_si_overflow_addsub_check): Likewise. |
| (ubsan_expand_si_overflow_neg_check): Likewise. |
| (ubsan_expand_si_overflow_mul_check): Likewise. |
| (expand_UBSAN_CHECK_ADD): Likewise. |
| (expand_UBSAN_CHECK_SUB): Likewise. |
| (expand_UBSAN_CHECK_MUL): Likewise. |
| (expand_LOOP_VECTORIZED): Likewise. |
| (expand_MASK_LOAD): Likewise. |
| (expand_MASK_STORE): Likewise. |
| (expand_ABNORMAL_DISPATCHER): Likewise. |
| (expand_BUILTIN_EXPECT): Likewise. |
| * internal-fn.h (internal_fn_fnspec): Likewise. |
| * ipa-inline-analysis.c (estimate_function_body_sizes): Likewise. |
| (phi_result_unknown_predicate): Likewise. |
| (set_switch_stmt_execution_predicate): Likewise. |
| * ipa-prop.c (param_type_may_change_p): Likewise. |
| (detect_type_change_from_memory_writes): Likewise. |
| (detect_type_change): Likewise. |
| (ipa_load_from_parm_agg): Likewise. |
| (get_ancestor_addr_info): Likewise. |
| (compute_complex_ancestor_jump_func): Likewise. |
| (build_agg_jump_func_from_list): Likewise. |
| (ipa_compute_jump_functions_for_edge): Likewise. |
| (ipa_is_ssa_with_stmt_def): Likewise. |
| (ipa_note_param_call): Likewise. |
| (ipa_analyze_indirect_call_uses): Likewise. |
| (ipa_analyze_virtual_call_uses): Likewise. |
| (ipa_analyze_stmt_uses): Likewise. |
| (ipa_modify_formal_parameters): Likewise. |
| (ipa_modify_call_arguments): Likewise. |
| * ipa-prop.h (ipa_get_agg_replacements_for_node): Likewise. |
| * ipa-pure-const.c (special_builtin_state): Likewise. |
| (check_stmt): Likewise. |
| * ipa-split.c (consider_split): Likewise. |
| (visit_bb): Likewise. |
| (find_return_bb): Likewise. |
| (find_retval): Likewise. |
| (split_function): Likewise. |
| (verify_non_ssa_vars): Likewise. |
| (check_forbidden_calls): Likewise. |
| * lto-streamer-in.c (fixup_call_stmt_edges_1): Likewise. |
| * lto-streamer-out.c (output_function): Likewise. |
| * omp-low.c (scan_omp_target): Likewise. |
| (scan_omp_single): Likewise. |
| (expand_omp_target): Likewise. |
| (scan_omp_sections): Likewise. |
| (lower_omp_single_simple): Likewise. |
| (scan_omp_for): Likewise. |
| (new_omp_context): Likewise. |
| (delete_omp_context): Likewise. |
| (scan_omp_task): Likewise. |
| (expand_cilk_for_call): Likewise. |
| (task_copyfn_remap_type): Likewise. |
| (gimple_build_cond_empty): Likewise. |
| (remove_exit_barrier): Likewise. |
| (expand_omp_taskreg): Likewise. |
| (expand_cilk_for): Likewise. |
| (struct omp_for_data): Likewise. |
| (is_combined_parallel): Likewise. |
| (workshare_safe_to_combine_p): Likewise. |
| (get_ws_args_for): Likewise. |
| (scan_omp_parallel): Likewise. |
| (finish_taskreg_scan): Likewise. |
| (expand_omp_for): Likewise. |
| (check_omp_nesting_restrictions): Likewise. |
| (expand_omp_sections): Likewise. |
| (expand_omp_atomic): Likewise. |
| (expand_parallel_call): Likewise. |
| (finalize_task_copyfn): Likewise. |
| (scan_omp_1_stmt): Likewise. |
| (lower_omp_sections): Likewise. |
| (lower_omp_single): Likewise. |
| (lower_omp_master): Likewise. |
| (lower_omp_critical): Likewise. |
| (lower_omp_for): Likewise. |
| (lower_omp_taskreg): Likewise. |
| (lower_omp_target): Likewise. |
| (lower_omp_teams): Likewise. |
| (ipa_simd_modify_function_body): Likewise. |
| (build_omp_barrier): Likewise. |
| (lower_omp_taskgroup): Likewise. |
| (lower_omp_ordered): Likewise. |
| (simd_clone_adjust): Likewise. |
| (lower_rec_input_clauses): Likewise. |
| (expand_omp_for_init_vars): Likewise. |
| (expand_omp_atomic_pipeline): Likewise. |
| (expand_omp_atomic_mutex): Likewise. |
| (diagnose_sb_1): Likewise. |
| (lower_lastprivate_clauses): Likewise. |
| (lower_send_shared_vars): Likewise. |
| (expand_omp_for_init_counts): Likewise. |
| (expand_omp_for_generic): Likewise. |
| (expand_omp_for_static_nochunk): Likewise. |
| (expand_omp_for_static_chunk): Likewise. |
| (expand_omp_simd): Likewise. |
| (lower_omp_1): Likewise. |
| (diagnose_sb_2): Likewise. |
| * predict.c (apply_return_prediction): Likewise. |
| (tree_estimate_probability_bb): Likewise. |
| (get_base_value): Likewise. |
| (predict_iv_comparison): Likewise. |
| (predict_extra_loop_exits): Likewise. |
| (predict_loops): Likewise. |
| * sese.c (sese_build_liveouts_bb): Likewise. |
| (sese_add_exit_phis_edge): Likewise. |
| (set_ifsese_condition): Likewise. |
| * ssa-iterators.h (for): Likewise. |
| (num_ssa_operands): Likewise. |
| (single_phi_def): Likewise. |
| (op_iter_init_phiuse): Likewise. |
| (link_use_stmts_after): Likewise. |
| (op_iter_init): Likewise. |
| * stmt.c (reset_out_edges_aux): Likewise. |
| (compute_cases_per_edge): Likewise. |
| * trans-mem.c (diagnose_tm_1): Likewise. |
| (lower_transaction): Likewise. |
| (tm_region_init): Likewise. |
| (generate_tm_state): Likewise. |
| (make_pass_lower_tm): Likewise. |
| (transaction_subcode_ior): Likewise. |
| (build_tm_load): Likewise. |
| (build_tm_store): Likewise. |
| (expand_transaction): Likewise. |
| (expand_block_edges): Likewise. |
| (dump_tm_memopt_transform): Likewise. |
| (tm_memopt_transform_blocks): Likewise. |
| (ipa_tm_insert_irr_call): Likewise. |
| (ipa_tm_transform_calls_redirect): Likewise. |
| (expand_call_tm): Likewise. |
| (ipa_tm_insert_gettmclone_call): Likewise. |
| * tree-call-cdce.c (check_target_format): Likewise. |
| (check_pow): Likewise. |
| (check_builtin_call): Likewise. |
| (gen_conditions_for_pow_int_base): Likewise. |
| (get_no_error_domain): Likewise. |
| (gen_shrink_wrap_conditions): Likewise. |
| (shrink_wrap_one_built_in_call): Likewise. |
| (shrink_wrap_conditional_dead_built_in_calls): Likewise. |
| (gen_one_condition): Likewise. |
| * tree-cfg.c (replace_uses_by): Likewise. |
| (reinstall_phi_args): Likewise. |
| (verify_gimple_in_cfg): Likewise. |
| (gimple_make_forwarder_block): Likewise. |
| (gimple_duplicate_bb): Likewise. |
| (add_phi_args_after_copy_edge): Likewise. |
| (gimple_duplicate_sese_tail): Likewise. |
| (gimple_lv_adjust_loop_header_phi): Likewise. |
| (move_stmt_r): Likewise. |
| (do_warn_unused_result): Likewise. |
| (verify_gimple_assign): Likewise. |
| (extract_true_false_edges_from_block): Likewise. |
| (verify_gimple_transaction): Likewise. |
| (verify_gimple_in_seq_2): Likewise. |
| (single_noncomplex_succ): Likewise. |
| (valid_fixed_convert_types_p): Likewise. |
| (make_gimple_asm_edges): Likewise. |
| (is_ctrl_altering_stmt): Likewise. |
| (need_fake_edge_p): Likewise. |
| (verify_gimple_comparison): Likewise. |
| (verify_gimple_assign_unary): Likewise. |
| (verify_gimple_assign_binary): Likewise. |
| (verify_gimple_assign_ternary): Likewise. |
| (verify_gimple_assign_single): Likewise. |
| (make_gimple_switch_edges): Likewise. |
| (find_case_label_for_value): Likewise. |
| (end_recording_case_labels): Likewise. |
| (get_cases_for_edge): Likewise. |
| (group_case_labels): Likewise. |
| (find_taken_edge): Likewise. |
| (find_taken_edge_cond_expr): Likewise. |
| (find_taken_edge_switch_expr): Likewise. |
| (verify_gimple_goto): Likewise. |
| (gimple_redirect_edge_and_branch): Likewise. |
| (make_edges): Likewise. |
| (gimple_can_merge_blocks_p): Likewise. |
| (gimple_merge_blocks): Likewise. |
| (remove_bb): Likewise. |
| (stmt_starts_bb_p): Likewise. |
| (verify_gimple_debug): Likewise. |
| (gimple_verify_flow_info): Likewise. |
| (gimple_block_label): Likewise. |
| (move_block_to_fn): Likewise. |
| (verify_gimple_return): Likewise. |
| (fold_cond_expr_cond): Likewise. |
| (make_cond_expr_edges): Likewise. |
| (cleanup_dead_labels): Likewise. |
| (verify_gimple_label): Likewise. |
| (verify_gimple_stmt): Likewise. |
| * tree-cfg.h (notice_special_calls): Likewise. |
| (group_case_labels_stmt): Likewise. |
| * tree-cfgcleanup.c (phi_alternatives_equal): Likewise. |
| (cleanup_control_expr_graph): Likewise. |
| (tree_forwarder_block_p): Likewise. |
| (remove_forwarder_block): Likewise. |
| (remove_forwarder_block_with_phi): Likewise. |
| * tree-complex.c (init_dont_simulate_again): Likewise. |
| (complex_visit_stmt): Likewise. |
| (update_phi_components): Likewise. |
| (expand_complex_move): Likewise. |
| (expand_complex_libcall): Likewise. |
| (expand_complex_asm): Likewise. |
| (expand_complex_comparison): Likewise. |
| * tree-data-ref.c (get_references_in_stmt): Likewise. |
| * tree-dfa.c (collect_dfa_stats): Likewise. |
| (dump_dfa_stats): Likewise. |
| * tree-eh.c (lookup_stmt_eh_lp): Likewise. |
| (record_in_finally_tree): Likewise. |
| (collect_finally_tree_1): Likewise. |
| (outside_finally_tree): Likewise. |
| (eh_region_may_contain_throw): Likewise. |
| (lower_try_finally_dup_block): Likewise. |
| (cleanup_is_dead_in): Likewise. |
| (lower_try_finally): Likewise. |
| (lower_eh_filter): Likewise. |
| (same_handler_p): Likewise. |
| (cleanup_empty_eh_merge_phis): Likewise. |
| (emit_eh_dispatch): Likewise. |
| (make_pass_lower_eh): Likewise. |
| (redirect_eh_edge): Likewise. |
| (sink_clobbers): Likewise. |
| (lower_eh_dispatch): Likewise. |
| (verify_eh_edges): Likewise. |
| (emit_resx): Likewise. |
| (make_pass_refactor_eh): Likewise. |
| (lower_resx): Likewise. |
| (mark_reachable_handlers): Likewise. |
| (lower_try_finally_fallthru_label): Likewise. |
| (get_eh_else): Likewise. |
| (lower_try_finally_nofallthru): Likewise. |
| (lower_try_finally_copy): Likewise. |
| (lower_try_finally_switch): Likewise. |
| (decide_copy_try_finally): Likewise. |
| (honor_protect_cleanup_actions): Likewise. |
| (lower_eh_must_not_throw): Likewise. |
| (replace_goto_queue_1): Likewise. |
| (lower_catch): Likewise. |
| (refactor_eh_r): Likewise. |
| (stmt_could_throw_p): Likewise. |
| (lower_eh_constructs_2): Likewise. |
| (collect_finally_tree): Likewise. |
| (emit_post_landing_pad): Likewise. |
| (lower_try_finally_onedest): Likewise. |
| (unsplit_eh): Likewise. |
| (cleanup_empty_eh_unsplit): Likewise. |
| (do_goto_redirection): Likewise. |
| (maybe_record_in_goto_queue): Likewise. |
| * tree-eh.h (make_eh_dispatch_edges): Likewise. |
| (redirect_eh_dispatch_edge): Likewise. |
| (verify_eh_dispatch_edge): Likewise. |
| * tree-emutls.c (lower_emutls_function_body): Likewise. |
| (lower_emutls_stmt): Likewise. |
| (gen_emutls_addr): Likewise. |
| * tree-if-conv.c (if_convertible_loop_p_1): Likewise. |
| (bb_with_exit_edge_p): Likewise. |
| (convert_scalar_cond_reduction): Likewise. |
| (predicate_all_scalar_phis): Likewise. |
| * tree-inline.c (update_ssa_across_abnormal_edges): Likewise. |
| (copy_phis_for_bb): Likewise. |
| (copy_edges_for_bb): Likewise. |
| (remap_gimple_seq): Likewise. |
| (replace_locals_stmt): Likewise. |
| (copy_bb): Likewise. |
| (inline_forbidden_p_stmt): Likewise. |
| (expand_call_inline): Likewise. |
| (estimate_num_insns): Likewise. |
| (mark_local_labels_stmt): Likewise. |
| (remap_gimple_stmt): Likewise. |
| (maybe_move_debug_stmts_to_successors): Likewise. |
| (copy_cfg_body): Likewise. |
| (copy_debug_stmts): Likewise. |
| * tree-inline.h (void): Likewise. |
| * tree-into-ssa.c (node): Likewise. |
| (find_def_blocks_for): Likewise. |
| (mark_phi_for_rewrite): Likewise. |
| (insert_phi_nodes_for): Likewise. |
| (rewrite_add_phi_arguments): Likewise. |
| (rewrite_update_phi_arguments): Likewise. |
| (mark_use_interesting): Likewise. |
| (prepare_block_for_update): Likewise. |
| (prepare_use_sites_for): Likewise. |
| (delete_update_ssa): Likewise. |
| (mark_virtual_operand_for_renaming): Likewise. |
| * tree-into-ssa.h (mark_virtual_phi_result_for_renaming): Likewise. |
| * tree-loop-distribution.c (stmts_from_loop): Likewise. |
| (destroy_loop): Likewise. |
| (distribute_loop): Likewise. |
| (generate_loops_for_partition): Likewise. |
| * tree-nested.c (walk_function): Likewise. |
| (convert_nonlocal_reference_stmt): Likewise. |
| (convert_local_reference_stmt): Likewise. |
| (finalize_nesting_tree_1): Likewise. |
| (get_chain_field): Likewise. |
| (convert_nl_goto_reference): Likewise. |
| (convert_tramp_reference_op): Likewise. |
| (convert_gimple_call): Likewise. |
| (convert_nl_goto_receiver): Likewise. |
| * tree-nrv.c (finalize_nrv_r): Likewise. |
| (make_pass_nrv): Likewise. |
| (dest_safe_for_nrv_p): Likewise. |
| * tree-object-size.c (pass_through_call): Likewise. |
| (addr_object_size): Likewise. |
| (alloc_object_size): Likewise. |
| (expr_object_size): Likewise. |
| (collect_object_sizes_for): Likewise. |
| (check_for_plus_in_loops_1): Likewise. |
| (fini_object_sizes): Likewise. |
| * tree-outof-ssa.c (eliminate_build): Likewise. |
| (eliminate_phi): Likewise. |
| (remove_gimple_phi_args): Likewise. |
| (eliminate_useless_phis): Likewise. |
| (rewrite_trees): Likewise. |
| (insert_backedge_copies): Likewise. |
| * tree-parloops.c (printf): Likewise. |
| (create_phi_for_local_result): Likewise. |
| (loop_has_vector_phi_nodes): Likewise. |
| (gather_scalar_reductions): Likewise. |
| (try_create_reduction_list): Likewise. |
| (take_address_of): Likewise. |
| (transform_to_exit_first_loop): Likewise. |
| (create_parallel_loop): Likewise. |
| * tree-phinodes.c (remove_phi_args): Likewise. |
| (phinodes_print_statistics): Likewise. |
| (release_phi_node): Likewise. |
| (reserve_phi_args_for_new_edge): Likewise. |
| (add_phi_node_to_bb): Likewise. |
| (create_phi_node): Likewise. |
| (add_phi_arg): Likewise. |
| (remove_phi_nodes): Likewise. |
| (allocate_phi_node): Likewise. |
| (ideal_phi_node_len): Likewise. |
| (make_phi_node): Likewise. |
| (resize_phi_node): Likewise. |
| * tree-phinodes.h (add_phi_node_to_bb): Likewise. |
| (add_phi_arg): Likewise. |
| (degenerate_phi_result): Likewise. |
| * tree-predcom.c (valid_initializer_p): Likewise. |
| (find_looparound_phi): Likewise. |
| (add_looparound_copies): Likewise. |
| (initialize_root_vars): Likewise. |
| (eliminate_temp_copies): Likewise. |
| (replace_ref_with): Likewise. |
| (initialize_root_vars_lm): Likewise. |
| (reassociate_to_the_same_stmt): Likewise. |
| * tree-profile.c (gimple_gen_interval_profiler): Likewise. |
| (gimple_gen_pow2_profiler): Likewise. |
| (gimple_gen_one_value_profiler): Likewise. |
| (gimple_gen_time_profiler): Likewise. |
| (gimple_gen_average_profiler): Likewise. |
| (gimple_gen_ior_profiler): Likewise. |
| (gimple_gen_edge_profiler): Likewise. |
| (gimple_gen_ic_profiler): Likewise. |
| (gimple_gen_ic_func_profiler): Likewise. |
| * tree-scalar-evolution.c (follow_ssa_edge_binary): Likewise. |
| (follow_ssa_edge_expr): Likewise. |
| (follow_ssa_edge_in_rhs): Likewise. |
| (backedge_phi_arg_p): Likewise. |
| (follow_ssa_edge_in_condition_phi_branch): Likewise. |
| (follow_ssa_edge_in_condition_phi): Likewise. |
| (follow_ssa_edge_inner_loop_phi): Likewise. |
| (follow_ssa_edge): Likewise. |
| (simplify_peeled_chrec): Likewise. |
| (analyze_evolution_in_loop): Likewise. |
| (analyze_initial_condition): Likewise. |
| (interpret_loop_phi): Likewise. |
| (analyze_scalar_evolution_1): Likewise. |
| (loop_closed_phi_def): Likewise. |
| (scev_const_prop): Likewise. |
| (add_to_evolution): Likewise. |
| (get_loop_exit_condition): Likewise. |
| * tree-scalar-evolution.h (number_of_latch_executions): Likewise. |
| * tree-sra.c (replace_removed_params_ssa_names): Likewise. |
| (convert_callers): Likewise. |
| (scan_function): Likewise. |
| (sra_modify_function_body): Likewise. |
| (ipa_sra_modify_function_body): Likewise. |
| (build_ref_for_offset): Likewise. |
| (generate_subtree_copies): Likewise. |
| (init_subtree_with_zero): Likewise. |
| (sra_modify_expr): Likewise. |
| (load_assign_lhs_subreplacements): Likewise. |
| (sra_modify_assign): Likewise. |
| (sra_ipa_reset_debug_stmts): Likewise. |
| * tree-ssa-alias.c (refs_output_dependent_p): Likewise. |
| (ref_maybe_used_by_call_p_1): Likewise. |
| (ref_maybe_used_by_stmt_p): Likewise. |
| (call_may_clobber_ref_p_1): Likewise. |
| (stmt_may_clobber_ref_p_1): Likewise. |
| * tree-ssa-alias.h (call_may_clobber_ref_p): Likewise. |
| (call_may_clobber_ref_p_1): Likewise. |
| * tree-ssa-ccp.c (ccp_initialize): Likewise. |
| (ccp_lattice_meet): Likewise. |
| (insert_clobber_before_stack_restore): Likewise. |
| (ccp_fold): Likewise. |
| (evaluate_stmt): Likewise. |
| (ccp_fold_stmt): Likewise. |
| (optimize_unreachable): Likewise. |
| * tree-ssa-coalesce.c (build_ssa_conflict_graph): Likewise. |
| (coalesce_partitions): Likewise. |
| (create_outofssa_var_map): Likewise. |
| * tree-ssa-copy.c (copy_prop_visit_stmt): Likewise. |
| (init_copy_prop): Likewise. |
| * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Likewise. |
| * tree-ssa-dce.c (remove_dead_phis): Likewise. |
| (forward_edge_to_pdom): Likewise. |
| (eliminate_unnecessary_stmts): Likewise. |
| (propagate_necessity): Likewise. |
| (remove_dead_stmt): Likewise. |
| * tree-ssa-dom.c (record_equivalences_from_phis): Likewise. |
| (cprop_into_successor_phis): Likewise. |
| (get_rhs_or_phi_arg): Likewise. |
| (eliminate_degenerate_phis_1): Likewise. |
| (struct hashable_expr): Likewise. |
| (add_hashable_expr): Likewise. |
| (print_expr_hash_elt): Likewise. |
| (record_equivalences_from_stmt): Likewise. |
| (initialize_hash_element): Likewise. |
| (record_edge_info): Likewise. |
| (eliminate_redundant_computations): Likewise. |
| (propagate_rhs_into_lhs): Likewise. |
| (free_all_edge_infos): Likewise. |
| (make_pass_dominator): Likewise. |
| (optimize_stmt): Likewise. |
| * tree-ssa-forwprop.c (remove_prop_source_from_use): Likewise. |
| (simplify_bitwise_binary): Likewise. |
| (simplify_rotate): Likewise. |
| (simplify_not_neg_expr): Likewise. |
| (simplify_gimple_switch_label_vec): Likewise. |
| (forward_propagate_into_comparison): Likewise. |
| (simplify_mult): Likewise. |
| * tree-ssa-ifcombine.c (same_phi_args_p): Likewise. |
| (get_name_for_bit_test): Likewise. |
| (recognize_single_bit_test): Likewise. |
| (ifcombine_ifandif): Likewise. |
| * tree-ssa-live.c (remove_unused_locals): Likewise. |
| (set_var_live_on_entry): Likewise. |
| (calculate_live_on_exit): Likewise. |
| (verify_live_on_entry): Likewise. |
| * tree-ssa-loop-im.c (mem_ref_in_stmt): Likewise. |
| (determine_max_movement): Likewise. |
| (execute_sm_if_changed): Likewise. |
| (rewrite_reciprocal): Likewise. |
| (execute_sm): Likewise. |
| (rewrite_bittest): Likewise. |
| * tree-ssa-loop-ivcanon.c (propagate_constants_for_unrolling): |
| Likewise. |
| (unloop_loops): Likewise. |
| (tree_estimate_loop_size): Likewise. |
| (create_canonical_iv): Likewise. |
| (remove_exits_and_undefined_stmts): Likewise. |
| (remove_redundant_iv_tests): Likewise. |
| (try_unroll_loop_completely): Likewise. |
| * tree-ssa-loop-ivopts.c (get_iv): Likewise. |
| (find_bivs): Likewise. |
| (mark_bivs): Likewise. |
| (find_interesting_uses_outside): Likewise. |
| (determine_set_costs): Likewise. |
| (rewrite_use_nonlinear_expr): Likewise. |
| (remove_unused_ivs): Likewise. |
| (extract_cond_operands): Likewise. |
| (rewrite_use_compare): Likewise. |
| * tree-ssa-loop-manip.c (tree_unroll_loop): Likewise. |
| (rewrite_all_phi_nodes_with_iv): Likewise. |
| (add_exit_phi): Likewise. |
| (find_uses_to_rename_bb): Likewise. |
| (verify_loop_closed_ssa): Likewise. |
| (split_loop_exit_edge): Likewise. |
| (create_iv): Likewise. |
| (rewrite_phi_with_iv): Likewise. |
| (tree_transform_and_unroll_loop): Likewise. |
| (canonicalize_loop_ivs): Likewise. |
| * tree-ssa-loop-niter.c (determine_value_range): Likewise. |
| (finite_loop_p): Likewise. |
| (chain_of_csts_start): Likewise. |
| (get_base_for): Likewise. |
| (loop_niter_by_eval): Likewise. |
| (number_of_iterations_exit): Likewise. |
| * tree-ssa-loop-prefetch.c (issue_prefetch_ref): Likewise. |
| (emit_mfence_after_loop): Likewise. |
| * tree-ssa-loop-unswitch.c (tree_may_unswitch_on): Likewise. |
| (tree_unswitch_single_loop): Likewise. |
| * tree-ssa-math-opts.c (execute_cse_reciprocals_1): Likewise. |
| (build_and_insert_call): Likewise. |
| (insert_reciprocals): Likewise. |
| (powi_as_mults_1): Likewise. |
| (powi_as_mults): Likewise. |
| (build_and_insert_binop): Likewise. |
| (build_and_insert_cast): Likewise. |
| (gimple_expand_builtin_cabs): Likewise. |
| (convert_mult_to_fma): Likewise. |
| * tree-ssa-operands.c (get_tmr_operands): Likewise. |
| (maybe_add_call_vops): Likewise. |
| (parse_ssa_operands): Likewise. |
| * tree-ssa-phiopt.c (tree_ssa_cs_elim): Likewise. |
| (single_non_singleton_phi_for_edges): Likewise. |
| (tree_ssa_phiopt_worker): Likewise. |
| (replace_phi_edge_with_variable): Likewise. |
| (hoist_adjacent_loads): Likewise. |
| (conditional_replacement): Likewise. |
| (abs_replacement): Likewise. |
| (cond_store_replacement): Likewise. |
| (cond_if_else_store_replacement_1): Likewise. |
| (minmax_replacement): Likewise. |
| * tree-ssa-phiprop.c (propagate_with_phi): Likewise. |
| (phivn_valid_p): Likewise. |
| (phiprop_insert_phi): Likewise. |
| * tree-ssa-pre.c (insert_into_preds_of_block): Likewise. |
| (compute_avail): Likewise. |
| (create_expression_by_pieces): Likewise. |
| (do_regular_insertion): Likewise. |
| (eliminate_insert): Likewise. |
| * tree-ssa-propagate.c (simulate_stmt): Likewise. |
| (replace_uses_in): Likewise. |
| (replace_phi_args_in): Likewise. |
| (update_gimple_call): Likewise. |
| (update_call_from_tree): Likewise. |
| (may_propagate_copy_into_stmt): Likewise. |
| (propagate_tree_value_into_stmt): Likewise. |
| * tree-ssa-propagate.h (prop_simulate_again_p): Likewise. |
| * tree-ssa-reassoc.c (suitable_cond_bb): Likewise. |
| (is_phi_for_stmt): Likewise. |
| (build_and_add_sum): Likewise. |
| (update_ops): Likewise. |
| (get_reassociation_width): Likewise. |
| (reassociate_bb): Likewise. |
| (maybe_optimize_range_tests): Likewise. |
| * tree-ssa-sccvn.c (DFS): Likewise. |
| (ao_ref_init_from_vn_reference): Likewise. |
| (valueize_shared_reference_ops_from_ref): Likewise. |
| (vn_reference_lookup_3): Likewise. |
| (vn_reference_lookup): Likewise. |
| (visit_nary_op): Likewise. |
| (simplify_binary_expression): Likewise. |
| (simplify_unary_expression): Likewise. |
| (visit_use): Likewise. |
| (set_hashtable_value_ids): Likewise. |
| * tree-ssa-sccvn.h (vn_constant_eq_with_type): Likewise. |
| * tree-ssa-sink.c (find_bb_for_arg): Likewise. |
| (nearest_common_dominator_of_uses): Likewise. |
| (statement_sink_location): Likewise. |
| * tree-ssa-strlen.c (do_invalidate): Likewise. |
| * tree-ssa-structalias.c (new_var_info): Likewise. |
| (get_call_vi): Likewise. |
| (lookup_call_use_vi): Likewise. |
| (lookup_call_clobber_vi): Likewise. |
| (get_call_use_vi): Likewise. |
| (get_function_part_constraint): Likewise. |
| (handle_rhs_call): Likewise. |
| (handle_lhs_call): Likewise. |
| (handle_const_call): Likewise. |
| (handle_pure_call): Likewise. |
| (get_fi_for_callee): Likewise. |
| (find_func_aliases_for_builtin_call): Likewise. |
| (find_func_clobbers): Likewise. |
| (compute_points_to_sets): Likewise. |
| (ipa_pta_execute): Likewise. |
| (find_func_aliases): Likewise. |
| * tree-ssa-tail-merge.c (same_succ_hash): Likewise. |
| (release_last_vdef): Likewise. |
| (same_phi_alternatives_1): Likewise. |
| (find_clusters): Likewise. |
| (vop_phi): Likewise. |
| (replace_block_by): Likewise. |
| * tree-ssa-ter.c (ter_is_replaceable_p): Likewise. |
| * tree-ssa-threadedge.c (record_temporary_equivalences_from_phis): |
| Likewise. |
| (record_temporary_equivalences_from_stmts_at_dest): Likewise. |
| (simplify_control_stmt_condition): Likewise. |
| (dummy_simplify): Likewise. |
| (propagate_threaded_block_debug_into): Likewise. |
| (thread_around_empty_blocks): Likewise. |
| (thread_through_normal_block): Likewise. |
| * tree-ssa-threadedge.h (thread_across_edge): Likewise. |
| * tree-ssa-threadupdate.c (copy_phi_arg_into_existing_phi): Likewise. |
| (get_value_locus_in_path): Likewise. |
| (copy_phi_args): Likewise. |
| (phi_args_equal_on_edges): Likewise. |
| * tree-ssa-uncprop.c (associate_equivalences_with_edges): Likewise. |
| * tree-ssa-uninit.c (can_skip_redundant_opnd): Likewise. |
| (find_predicates): Likewise. |
| (collect_phi_def_edges): Likewise. |
| (find_matching_predicate_in_rest_chains): Likewise. |
| (prune_uninit_phi_opnds_in_unrealizable_paths): Likewise. |
| (use_pred_not_overlap_with_undef_path_pred): Likewise. |
| (normalize_preds): Likewise. |
| (is_use_properly_guarded): Likewise. |
| (find_uninit_use): Likewise. |
| (gate_warn_uninitialized): Likewise. |
| * tree-ssa.c (ssa_redirect_edge): Likewise. |
| (flush_pending_stmts): Likewise. |
| (verify_use): Likewise. |
| (verify_ssa): Likewise. |
| (execute_update_addresses_taken): Likewise. |
| (insert_debug_temp_for_var_def): Likewise. |
| * tree-stdarg.c (check_all_va_list_escapes): Likewise. |
| * tree-switch-conversion.c (check_final_bb): Likewise. |
| (build_constructors): Likewise. |
| (build_arrays): Likewise. |
| (gen_def_assigns): Likewise. |
| (case_bit_test_cmp): Likewise. |
| (emit_case_bit_tests): Likewise. |
| (gather_default_values): Likewise. |
| (constructor_contains_same_values_p): Likewise. |
| (array_value_type): Likewise. |
| (build_one_array): Likewise. |
| (fix_phi_nodes): Likewise. |
| (process_switch): Likewise. |
| (hoist_edge_and_branch_if_true): Likewise. |
| (gen_inbound_check): Likewise. |
| * tree-tailcall.c (add_successor_phi_arg): Likewise. |
| (propagate_through_phis): Likewise. |
| (eliminate_tail_call): Likewise. |
| (create_tailcall_accumulator): Likewise. |
| (tree_optimize_tail_calls_1): Likewise. |
| (adjust_return_value): Likewise. |
| (optimize_tail_call): Likewise. |
| (independent_of_stmt_p): Likewise. |
| (find_tail_calls): Likewise. |
| (adjust_return_value_with_ops): Likewise. |
| (update_accumulator_with_ops): Likewise. |
| * tree-vect-data-refs.c (bump_vector_ptr): Likewise. |
| (vect_setup_realignment): Likewise. |
| * tree-vect-generic.c (expand_vector_condition): Likewise. |
| (optimize_vector_constructor): Likewise. |
| (lower_vec_perm): Likewise. |
| (expand_vector_operations_1): Likewise. |
| * tree-vect-loop-manip.c (rename_variables_in_bb): Likewise. |
| (vect_can_advance_ivs_p): Likewise. |
| (slpeel_update_phi_nodes_for_guard1): Likewise. |
| (slpeel_update_phi_nodes_for_guard2): Likewise. |
| (slpeel_tree_duplicate_loop_to_edge_cfg): Likewise. |
| (slpeel_tree_peel_loop_to_edge): Likewise. |
| (vect_update_ivs_after_vectorizer): Likewise. |
| (vect_loop_versioning): Likewise. |
| (slpeel_make_loop_iterate_ntimes): Likewise. |
| (slpeel_add_loop_guard): Likewise. |
| (slpeel_can_duplicate_loop_p): Likewise. |
| (set_prologue_iterations): Likewise. |
| * tree-vect-loop.c (vect_determine_vectorization_factor): Likewise. |
| (vect_analyze_scalar_cycles_1): Likewise. |
| (vect_analyze_loop_operations): Likewise. |
| (get_initial_def_for_induction): Likewise. |
| (vectorizable_reduction): Likewise. |
| (vect_transform_loop): Likewise. |
| (vect_create_epilog_for_reduction): Likewise. |
| (vect_analyze_scalar_cycles): Likewise. |
| (vect_analyze_loop_form): Likewise. |
| * tree-vect-patterns.c (vect_recog_pow_pattern): Likewise. |
| * tree-vect-slp.c (vect_build_slp_tree_1): Likewise. |
| * tree-vect-stmts.c (vectorizable_simd_clone_call): Likewise. |
| (vectorizable_load): Likewise. |
| (vect_finish_stmt_generation): Likewise. |
| (vectorizable_call): Likewise. |
| (vectorizable_condition): Likewise. |
| * tree-vectorizer.h (unlimited_cost_model): Likewise. |
| * tree-vrp.c (find_assert_locations): Likewise. |
| (vrp_initialize): Likewise. |
| (vrp_meet): Likewise. |
| (extract_range_from_unary_expr): Likewise. |
| (extract_range_basic): Likewise. |
| (build_assert_expr_for): Likewise. |
| (vrp_visit_assignment_or_call): Likewise. |
| (simplify_truth_ops_using_ranges): Likewise. |
| (simplify_float_conversion_using_ranges): Likewise. |
| (live_on_edge): Likewise. |
| (compare_case_labels): Likewise. |
| (vrp_visit_cond_stmt): Likewise. |
| (find_case_label_index): Likewise. |
| (find_case_label_range): Likewise. |
| (find_case_label_ranges): Likewise. |
| (simplify_cond_using_ranges): Likewise. |
| (register_edge_assert_for): Likewise. |
| (find_assert_locations_1): Likewise. |
| (vrp_evaluate_conditional): Likewise. |
| (vrp_visit_stmt): Likewise. |
| (range_fits_type_p): Likewise. |
| (simplify_stmt_using_ranges): Likewise. |
| (fold_predicate_in): Likewise. |
| (simplify_stmt_for_jump_threading): Likewise. |
| (identify_jump_threads): Likewise. |
| * tree.c (find_decls_types_in_node): Likewise. |
| * ubsan.c (instrument_nonnull_return): Likewise. |
| (instrument_mem_ref): Likewise. |
| * value-prof.c (find_func_by_profile_id): Likewise. |
| (check_ic_target): Likewise. |
| (gimple_ic_transform): Likewise. |
| (interesting_stringop_to_profile_p): Likewise. |
| (gimple_stringops_transform): Likewise. |
| (gimple_stringops_values_to_profile): Likewise. |
| (gimple_value_profile_transformations): Likewise. |
| (gimple_divmod_fixed_value_transform): Likewise. |
| (gimple_mod_pow2_value_transform): Likewise. |
| (gimple_mod_subtract_transform): Likewise. |
| (gimple_divmod_fixed_value): Likewise. |
| (gimple_mod_pow2): Likewise. |
| (gimple_mod_subtract): Likewise. |
| (gimple_ic): Likewise. |
| (gimple_stringop_fixed_value): Likewise. |
| * value-prof.h (stringop_block_profile): Likewise. |
| (gimple_ic): Likewise. |
| * vtable-verify.c (verify_bb_vtables): Likewise. |
| |
| 2014-10-27 David Malcolm <dmalcolm@redhat.com> |
| |
| * coretypes.h (gimple_cond): Drop this typedef. |
| (const_gimple_cond): Likewise. |
| (gimple_debug): Likewise. |
| (const_gimple_debug): Likewise. |
| (gimple_goto): Likewise. |
| (const_gimple_goto): Likewise. |
| (gimple_label): Likewise. |
| (const_gimple_label): Likewise. |
| (gimple_switch): Likewise. |
| (const_gimple_switch): Likewise. |
| (gimple_assign): Likewise. |
| (const_gimple_assign): Likewise. |
| (gimple_asm): Likewise. |
| (const_gimple_asm): Likewise. |
| (gimple_call): Likewise. |
| (const_gimple_call): Likewise. |
| (gimple_transaction): Likewise. |
| (const_gimple_transaction): Likewise. |
| (gimple_return): Likewise. |
| (const_gimple_return): Likewise. |
| (gimple_bind): Likewise. |
| (const_gimple_bind): Likewise. |
| (gimple_catch): Likewise. |
| (const_gimple_catch): Likewise. |
| (gimple_eh_filter): Likewise. |
| (const_gimple_eh_filter): Likewise. |
| (gimple_eh_must_not_throw;): Likewise. |
| (const_gimple_eh_must_not_throw): Likewise. |
| (gimple_eh_else): Likewise. |
| (const_gimple_eh_else): Likewise. |
| (gimple_resx): Likewise. |
| (const_gimple_resx): Likewise. |
| (gimple_eh_dispatch): Likewise. |
| (const_gimple_eh_dispatch): Likewise. |
| (gimple_phi): Likewise. |
| (const_gimple_phi): Likewise. |
| (gimple_try): Likewise. |
| (const_gimple_try): Likewise. |
| (gimple_omp_atomic_load): Likewise. |
| (const_gimple_omp_atomic_load): Likewise. |
| (gimple_omp_atomic_store): Likewise. |
| (const_gimple_omp_atomic_store): Likewise. |
| (gimple_omp_continue): Likewise. |
| (const_gimple_omp_continue): Likewise. |
| (gimple_omp_critical): Likewise. |
| (const_gimple_omp_critical): Likewise. |
| (gimple_omp_for): Likewise. |
| (const_gimple_omp_for): Likewise. |
| (gimple_omp_parallel): Likewise. |
| (const_gimple_omp_parallel): Likewise. |
| (gimple_omp_task): Likewise. |
| (const_gimple_omp_task): Likewise. |
| (gimple_omp_sections): Likewise. |
| (const_gimple_omp_sections): Likewise. |
| (gimple_omp_single): Likewise. |
| (const_gimple_omp_single): Likewise. |
| (gimple_omp_target): Likewise. |
| (const_gimple_omp_target): Likewise. |
| (gimple_omp_teams): Likewise. |
| (const_gimple_omp_teams): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| * tree-inline.h (struct copy_body_data): Rename field |
| "gimple_call" to "call_stmt". |
| |
| * gimplify.c (gimplify_bind_expr): Rename local "gimple_bind" to |
| "bind_stmt". |
| (gimplify_switch_expr): Rename local "gimple_switch" to |
| "switch_stmt". |
| (gimplify_cond_expr): Rename local "gimple_cond" to "cond_stmt". |
| * tree-eh.c (lower_catch): Rename local "gcatch" to "catch_stmt". |
| * tree-inline.c (copy_bb): Update for renaming of field within |
| struct copy_body_data from "gimple_call" to "call_stmt". |
| (copy_cfg_body): Likewise. |
| (copy_debug_stmt): Likewise. |
| (expand_call_inline): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Convert various gimple to gimple_phi within ssa-iterators.h |
| |
| * ssa-iterators.h (FOR_EACH_PHI_OR_STMT_USE): Add checked cast to |
| gimple_phi. |
| (FOR_EACH_PHI_OR_STMT_DEF): Likewise. |
| |
| * ssa-iterators.h (single_phi_def): Require a gimple_phi. |
| (op_iter_init_phiuse): Likewise. |
| (op_iter_init_phidef): Likewise. |
| * tree-ssa-loop-im.c (extract_true_false_args_from_phi): Likewise. |
| |
| * tree-ssa-loop-im.c (link_use_stmts_after): Replace check against |
| GIMPLE_PHI with add a dyn_cast to gimple_phi, using result as needed. |
| (determine_max_movement): Likewise. |
| * tree-ssa-reassoc.c (is_phi_for_stmt): Likewise. |
| * tree-ssa-sccvn.c (start_over:): Likewise. |
| |
| * tree-ssa-loop-im.c |
| (move_computations_dom_walker::before_dom_children): Split iterator |
| into gimple_stmt_iterator and a gimple_phi_iterator so that a local |
| can become a gimple_phi. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Use gimple_phi in many more places. |
| |
| * gimple-ssa-strength-reduction.c (slsr_process_phi): Require a |
| gimple_phi. |
| * ipa-inline-analysis.c (predicate_for_phi_result): Likewise. |
| * tree-emutls.c (lower_emutls_phi_arg): Likewise. |
| * tree-if-conv.c (predicate_scalar_phi): Likewise. |
| * tree-into-ssa.c (mark_virtual_phi_result_for_renaming): Likewise. |
| * tree-into-ssa.h (mark_virtual_phi_result_for_renaming): Likewise. |
| * tree-phinodes.c (degenerate_phi_result): Likewise. |
| * tree-phinodes.h (degenerate_phi_result): Likewise. |
| * tree-ssa.c (verify_use): Likewise. |
| * tree-switch-conversion.c (array_value_type): Likewise. |
| |
| * graphite-scop-detection.c (same_close_phi_node): Require a pair |
| of gimple_phi. |
| (remove_duplicate_close_phi): Require a gimple_phi and a |
| gimple_phi_iterator. |
| (make_close_phi_nodes_unique): Convert a local into a |
| gimple_phi_iterator. |
| |
| * gimple-pretty-print.c (gimple_dump_bb_for_graph): Split iterator |
| into gimple_stmt_iterator and gimple_phi_iterator, converting local |
| from gimple to gimple_phi. |
| * gimple-ssa-strength-reduction.c |
| (find_candidates_dom_walker::before_dom_children): Likewise. |
| * ipa-inline-analysis.c (estimate_function_body_sizes): Likewise. |
| * ipa-split.c (verify_non_ssa_vars): Likewise. |
| (visit_bb): Likewise. |
| (split_function): Likewise. |
| * lto-streamer-out.c (output_function): Likewise. |
| * sese.c (sese_build_liveouts_bb): Likewise. |
| * tree-cfg.c (gimple_can_merge_blocks_p): Likewise. |
| * tree-complex.c (init_dont_simulate_again): Likewise. |
| * tree-dfa.c (collect_dfa_stats): Likewise. |
| * tree-eh.c (sink_clobbers): Likewise. |
| * tree-emutls.c (lower_emutls_function_body): Likewise. |
| * tree-into-ssa.c (rewrite_dom_walker::before_dom_children): |
| Likewise. |
| (rewrite_update_dom_walker::before_dom_children): Likewise. |
| (prepare_block_for_update): Likewise. |
| * tree-loop-distribution.c (stmts_from_loop): Likewise. |
| (generate_loops_for_partition): Likewise. |
| (destroy_loop): Likewise. |
| (tree_loop_distribution): Likewise. |
| * tree-ssa-coalesce.c (build_ssa_conflict_graph): Likewise. |
| * tree-ssa-copy.c (init_copy_prop): Likewise. |
| * tree-ssa-copyrename.c (rename_ssa_copies): Likewise. |
| * tree-ssa-loop-ivcanon.c (propagate_constants_for_unrolling): Likewise. |
| * tree-ssa-loop-manip.c (find_uses_to_rename_bb): Likewise. |
| (verify_loop_closed_ssa): Likewise. |
| * tree-ssa-math-opts.c (execute_cse_reciprocals): Likewise. |
| * tree-ssa-pre.c (compute_avail): Likewise. |
| (eliminate_dom_walker::before_dom_children): Likewise. |
| * tree-ssa-strlen.c (strlen_dom_walker::before_dom_children): 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. |
| * tree-ssa.c (verify_ssa): Likewise. |
| (execute_update_addresses_taken): Likewise. |
| * tree-stdarg.c (check_all_va_list_escapes): Likewise. |
| (execute_optimize_stdarg): Likewise. |
| * tree-switch-conversion.c (build_arrays): Likewise. |
| * tree-vect-loop-manip.c (rename_variables_in_bb): Likewise. |
| * tree-vect-loop.c (vect_determine_vectorization_factor): Likewise. |
| (vect_analyze_loop_operations): Likewise. |
| (vect_transform_loop): Likewise. |
| * tree-vrp.c (find_assert_locations_1): Likewise. |
| (vrp_initialize): Likewise. |
| |
| * graphite-sese-to-poly.c (gsi_for_phi_node): Convert psi to a |
| gimple_phi_iterator. |
| (rewrite_degenerate_phi): Require a gimple_phi_iterator; strengthen |
| local "phi" from gimple to gimple-phi. |
| |
| * ipa-split.c (consider_split): Convert local psi to a |
| gimple_phi_iterator. |
| * tree-cfg.c (gimple_merge_blocks): Likewise. |
| |
| * tree-eh.c (unsplit_eh): Replace reuse of gsi with a new |
| gimple_phi_iterator gpi, using it to convert statement from gimple |
| to a gimple_phi. |
| (cleanup_empty_eh_merge_phis): Strengthen ophi from gimple to |
| gimple_phi. |
| * tree-ssa-dce.c (eliminate_unnecessary_stmts): Replace reuse of |
| gsi with a new gimple_phi_iterator gpi, using it to convert |
| expressions from gimple to gimple_phi; add a checked cast to |
| gimple_phi. |
| |
| * tree-if-conv.c (predicate_all_scalar_phis): Convert local phi_gsi |
| to be a gimple_phi_iterator; convert "phi" to be a gimple_phi. |
| * tree-parloops.c (loop_has_vector_phi_nodes): Convert local to be a |
| gimple_phi_iterator. |
| * tree-ssa-ccp.c (ccp_initialize): Likewise. |
| |
| * tree-scalar-evolution.c (analyze_initial_condition): Add checked cast |
| to a gimple_phi. |
| * tree-ssa.c (insert_debug_temp_for_var_def): Likewise. |
| * tree-ssa-dom.c (get_rhs_or_phi_arg): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Use gimple_call in some places within tree-ssa-dom.c |
| |
| * tree-ssa-dom.c (struct hashable_expr): Strengthen field |
| call.fn_from from gimple to gimple_call. |
| (initialize_hash_element): Replace check against GIMPLE_CALL |
| with dyn_cast<gimple_call> and update gimple_call_ uses to use |
| new gimple_call local, along with fn_from initializer. |
| (iterative_hash_hashable_expr): Strengthen type of local "fn_from" |
| from gimple to gimple_call. |
| (print_expr_hash_elt): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_call_copy_flags and ipa_modify_call_arguments |
| |
| * gimple.h (gimple_call_copy_flags): Require gimple_calls. |
| |
| * ipa-prop.c (ipa_modify_call_arguments): Require a gimple_call. |
| * ipa-prop.h (ipa_modify_call_arguments): Likewise. |
| |
| * tree-inline.c (copy_bb): Replace is_gimple_call with new local |
| and call to dyn_cast<gimple_call>, updating gimple_call_ uses to |
| use the type-checked local. |
| |
| * tree-sra.c (convert_callers): Replace check for GIMPLE_CALL with |
| a dyn_cast. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_assign_nontemporal_move_p |
| |
| * gimple.h (gimple_assign_nontemporal_move_p): Require a |
| const_gimple_assign rather than a const_gimple. |
| |
| * cfgexpand.c (expand_gimple_stmt_1): Add local assign_stmt and |
| checked cast within "case GIMPLE_ASSIGN". |
| |
| * gimple-streamer-out.c (output_gimple_stmt): Add checked cast to |
| gimple_assign. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_call_arg_flags |
| |
| * gimple.h (gimple_call_arg_flags): Require a const_gimple_call |
| rather than a const_gimple. |
| |
| * gimple.c (gimple_call_fnspec): Likewise. |
| (gimple_call_arg_flags): Likewise. |
| |
| * tree-inline.c (remap_gimple_stmt): Use a dyn_cast rather than a |
| is_gimple_call and repeated checked casts. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_call_set_tail and gimple_call_tail_p |
| |
| * gimple.h (gimple_call_set_tail): Require a gimple_call. |
| (gimple_call_tail_p): Likewise. |
| |
| * cfgexpand.c (expand_gimple_tailcall): Likewise. |
| (expand_gimple_basic_block): Convert calls to is_gimple_call to a |
| dyn_cast, introducing a new "call_stmt" local. |
| |
| * trans-mem.c (expand_block_edges): Likewise, for comparison against |
| GIMPLE_CALL. |
| |
| * tree-inline.c (remap_gimple_stmt): Add checked casts to |
| gimple_call in region guarded by is_gimple_call. |
| |
| * tree-tailcall.c (optimize_tail_call): Add checked cast to gimple_call |
| for t->call_gsi. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_call_set_fntype |
| |
| * gimple-fold.c (gimple_fold_builtin_sprintf_chk): Strengthen |
| local "stmt" from gimple to gimple_call. |
| |
| * gimple.h (gimple_call_set_fntype): Require a gimple_call. |
| |
| * omp-low.c (lower_omp_1): Add a new local gimple_call "call_stmt", |
| from a checked cast to gimple_call within the "case GIMPLE_CALL", |
| for the regions where "stmt" is not subsequently overwritten. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_call_set_fn |
| |
| * gimple.h (gimple_call_set_fn): Require a gimple_call. |
| |
| * trans-mem.c (dump_tm_memopt_transform): Likewise. |
| (tm_memopt_transform_blocks): Add checked casts to gimple_call in |
| suites guarded by is_tm_simple_{load|store}, which enforce that |
| the statement must be a GIMPLE_CALL; use this when invoking |
| dump_tm_memopt_transform. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Tweak to gimplify_modify_expr |
| |
| * gimplify.c (gimplify_modify_expr): Introduce local "call_stmt". |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_call_nothrow_p |
| |
| * gimple.h (gimple_call_nothrow_p): Require a gimple_call. |
| |
| * tree-eh.c (stmt_could_throw_p): Add checked cast to gimple_call. |
| |
| * tree-vect-slp.c (vect_build_slp_tree_1): Replace call to |
| is_gimple_call with dyn_cast<gimple_call>, introducing a local. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_call_set_nothrow |
| |
| * gimple.h (gimple_call_set_nothrow): Require a gimple_call. |
| |
| * trans-mem.c (ipa_tm_insert_gettmclone_call): Likewise. |
| (ipa_tm_transform_calls_redirect): Add checked cast to gimple call; this |
| is only called for gsi on a GIMPLE_CALL statement. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize various expressions from gimple to gimple_cond |
| |
| * ipa-split.c (check_forbidden_calls): Replace check against |
| GIMPLE_COND with a dyn_cast<gimple_cond>, introducing a |
| gimple_cond local. |
| * predict.c (predict_extra_loop_exits): Likewise. |
| * tree-vrp.c (fold_predicate_in): Likewise. |
| (simplify_stmt_for_jump_threading): Likewise. |
| |
| * predict.c (is_comparison_with_loop_invariant_p): Require a |
| gimple_cond. |
| (predict_iv_comparison): Add checked cast to gimple_cond once we |
| know the code is GIMPLE_COND. |
| (predict_loops): Change type of "stmt" to gimple_cond, |
| adding checked casts to its assignments (which are both guarded by |
| checks against GIMPLE_COND). |
| |
| * tree-vrp.c (find_conditional_asserts): Require a gimple_cond. |
| (vrp_evaluate_conditional): Likewise. |
| (find_assert_locations_1): Add checked cast to gimple_cond. |
| (vrp_visit_stmt): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_cond_{lhs|rhs}_ptr |
| |
| * gimple.h (gimple_cond_lhs_ptr): Require a const_gimple_cond |
| rather than just a const_gimple_cond. |
| (gimple_cond_rhs_ptr): Likewise. |
| |
| * gimplify-me.c (gimple_regimplify_operands): Add a checked cast |
| to gimple_cond within "case GIMPLE_COND". |
| * omp-low.c (lower_omp_1): Likewise. |
| |
| * omp-low.c (expand_omp_simd): Introduce a new local cond_stmt |
| to express that the conditional is indeed a gimple_cond. |
| |
| * tree-ssa-loop-ivopts.c (extract_cond_operands): Add a checked |
| cast to gimple_cond within a region where the code is known to |
| be GIMPLE_COND. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_cond_set_{lhs|rhs} |
| |
| * gimple.h (gimple_cond_set_lhs): Require a gimple_cond. |
| (gimple_cond_set_rhs): Likewise. |
| |
| * tree-parloops.c (transform_to_exit_first_loop): Convert locals |
| "cond_stmt" and "cond_nit" to gimple_cond, adding checked casts, |
| since the existing code assumes that code is GIMPLE_COND. Convert |
| "stmt" to a gimple_assign. |
| (create_parallel_loop): Likewise for "cond_stmt". |
| |
| * tree-ssa-loop-im.c (rewrite_bittest): Replace check for code |
| GIMPLE_COND with a dyn_cast, adding new local "cond_stmt". |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_cond_set_code |
| |
| * gimple.h (gimple_cond_set_code): Require a gimple_cond. |
| |
| * tree-complex.c (expand_complex_comparison): Add a checked cast to |
| gimple_cond within "case GIMPLE_COND". |
| |
| * tree-ssa-loop-ivcanon.c (create_canonical_iv): Convert local "cond" |
| to a gimple_cond, adding a checked cast. The existing code requires |
| that the last statement before the exit edge have code GIMPLE_COND, |
| though it's not clear to me where this is verified. |
| |
| * tree-ssa-loop-ivopts.c (rewrite_use_compare): Add a checked cast |
| to gimple_cond on "use->stmt". |
| |
| * tree-ssa-loop-manip.c (tree_transform_and_unroll_loop): Convert |
| local "exit_if" to gimple_cond, adding a checked cast. It's not |
| clear to me exactly where the GIMPLE_COND-ness of this is |
| established, but the existing code requires it. |
| (canonicalize_loop_ivs): Similarly for "stmt". |
| |
| * tree-ssa-propagate.c (propagate_tree_value_into_stmt): Replace |
| a check against GIMPLE_COND with a dyn_cast<gimple_cond>. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_cond_{true|false}_label |
| |
| * gimple.h (gimple_cond_true_label): Require a const_gimple_cond |
| rather than just a const_gimple. |
| (gimple_cond_false_label): Likewise. |
| |
| * omp-low.c (diagnose_sb_2): Add checked cast to gimple_cond within |
| case GIMPLE_COND. |
| * tree-eh.c (maybe_record_in_goto_queue): Likewise. |
| |
| * tree-cfg.c (verify_gimple_stmt): Add a checked cast to gimple_cond |
| within "case GIMPLE_COND", splitting it out into... |
| (verify_gimple_label): New. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_switch_index and gimple_switch_index_ptr |
| |
| * gimple.h (gimple_switch_index): Require a const_gimple_switch rather |
| than a plain const_gimple. |
| (gimple_switch_index_ptr): Likewise. |
| |
| * gimplify-me.c (gimple_regimplify_operands): Add checked cast to |
| gimple_switch within "case GIMPLE_SWITCH". |
| * tree-cfgcleanup.c (cleanup_control_expr_graph): Likewise. |
| * tree-ssa-ccp.c (ccp_fold): Likewise. |
| * tree-ssa-dom.c (optimize_stmt): Likewise. |
| |
| * tree-ssa-ccp.c (evaluate_stmt): Add checked cast to |
| gimple_switch within region guarded by check for GIMPLE_SWITCH. |
| * tree-ssa-dom.c (record_edge_info): Likewise. |
| (eliminate_redundant_computations): Likewise. |
| * tree-ssa-loop-ivcanon.c (tree_estimate_loop_size): Likewise. |
| * tree-ssa-threadedge.c (simplify_control_stmt_condition): Likewise. |
| |
| * tree-ssa-dom.c (initialize_hash_element): Replace check for |
| code GIMPLE_SWITCH with a dyn_cast<gimple_switch>. |
| (propagate_rhs_into_lhs): Likewise. |
| * tree-ssa-propagate.c (may_propagate_copy_into_stmt): Likewise. |
| (propagate_tree_value_into_stmt): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_cond_make_{false|true} |
| |
| * gimple.h (gimple_cond_make_false): Require a gimple_cond. |
| (gimple_cond_make_true): Likewise. |
| |
| * tree-cfg.c (fold_cond_expr_cond): Add a checked cast to |
| gimple_cond within region guarded by check for GIMPLE_COND. |
| * tree-ssa-ccp.c (ccp_fold_stmt): Likewise. |
| |
| * tree-loop-distribution.c (generate_loops_for_partition): Replace |
| a check for GIMPLE_COND with a dyn_cast<gimple_cond>. |
| * tree-ssa-ccp.c (optimize_unreachable): Likewise. |
| * tree-ssa-loop-niter.c (number_of_iterations_exit): Likewise. |
| * tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): |
| Likewise. |
| |
| * tree-vrp.c (fold_predicate_in): Add a checked cast to |
| gimple_cond. We must be dealing with a GIMPLE_COND since logic |
| at top of the function ensures we only act on GIMPLE_ASSIGN and |
| GIMPLE_COND statements, and we're now within a "not a GIMPLE_ASSIGN" |
| clause. |
| |
| * tree-ssa-loop-ivcanon.c (remove_exits_and_undefined_stmts): Add |
| checked cast of elt->stmt to gimple_cond. The existing code requires |
| this to be a GIMPLE_COND, though it's not clear to me how this |
| requirement is enforced. |
| (remove_redundant_iv_tests): Likewise. |
| (try_unroll_loop_completely): Likewise, for the last_stmt of the |
| preceding bb along edge_to_cancel. |
| * tree-ssa-reassoc.c (maybe_optimize_range_tests): Likewise, for the |
| last_stmt of bb. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize locals within expand_omp_for_init_counts |
| |
| * omp-low.c (expand_omp_for_init_counts): Eliminate local "stmt" |
| in favor of new locals "cond_stmt" and "assign_stmt" with more |
| concrete types. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Make gimple_cond_set_{true|false}_label require gimple_cond. |
| |
| * gimple.h (gimple_cond_set_true_label): Require a gimple_cond. |
| (gimple_cond_set_false_label): Likewise. |
| |
| * tree-cfg.c (make_cond_expr_edges): Convert "entry" from gimple to |
| a gimple_cond. |
| (cleanup_dead_labels): Introduce a checked cast to a gimple_cond within |
| the GIMPLE_COND case. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize three gimple_return_ accessors |
| |
| * gimple.h (gimple_return_retval_ptr): Require a const_gimple_return |
| rather than a const_gimple. |
| (gimple_return_retval): Likewise. |
| (gimple_return_set_retval): Require a gimple_return. |
| |
| * cfgexpand.c (expand_gimple_stmt_1): Add a checked cast to |
| gimple_return. |
| (expand_gimple_basic_block): Likewise. |
| * tree-complex.c (expand_complex_move): Likewise. |
| (expand_complex_comparison): Likewise. |
| * tree-inline.c (remap_gimple_stmt): Likewise. |
| * tree-sra.c (scan_function): Likewise. |
| (sra_modify_function_body): Likewise. |
| (ipa_sra_modify_function_body): Likewise. |
| * tree-ssa-structalias.c (find_func_aliases): Likewise. |
| |
| * gimple-ssa-isolate-paths.c (isolate_path): Strengthen local |
| "ret" from gimple to gimple_return. |
| (find_implicit_erroneous_behaviour): Replace a check for code |
| GIMPLE_RETURN with a dyn_cast and a new local. |
| (find_explicit_erroneous_behaviour): Likewise. |
| * gimple-walk.c (walk_stmt_load_store_addr_ops): Likewise. |
| * gimple.c (infer_nonnull_range): Likewise. |
| * ipa-split.c (find_return_bb): Likewise. |
| (find_retval): Likewise. |
| (split_function): Likewise. |
| * omp-low.c (ipa_simd_modify_function_body): Likewise. |
| * tree-cfg.c (pass_warn_function_return::execute): Likewise. |
| * tree-nrv.c (tree_nrv): Likewise. |
| * tree-ssa-alias.c (ref_maybe_used_by_stmt_p): Likewise. |
| * tree-ssa-dce.c (propagate_necessity): Likewise. |
| * tree-ssa-structalias.c (find_func_clobbers): Likewise. |
| * tree-tailcall.c (find_tail_calls): Likewise. |
| |
| * predict.c (apply_return_prediction): Rework the search for |
| return_stmt so that the latter can have type gimple_return. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Make gimple_phi_arg_location require a gimple_phi. |
| |
| * gimple.h (gimple_phi_arg_location): Require a gimple_phi. |
| |
| * tree-into-ssa.c (rewrite_update_phi_arguments): Replace a check |
| for code GIMPLE_PHI with a dyn_cast and a new local. |
| * tree-ssa-ter.c (ter_is_replaceable_p): Likewise. |
| |
| * tree-ssa-live.c (remove_unused_locals): Replace a |
| gimple_stmt_iterator with a gimple_phi_iterator, using it to make |
| local "phi" be a gimple_phi. |
| * tree-ssa-phiopt.c (tree_ssa_phiopt_worker): Likewise. |
| |
| * tree-ssa-phiopt.c (conditional_replacement): Require a gimple_phi. |
| (single_non_singleton_phi_for_edges): Return a gimple_phi; update |
| local to be a gimple_phi, adding checked casts since we're working |
| on a sequence of gimple_phi. |
| (conditional_replacement): Require a gimple_phi. |
| |
| * tree-ssa-threadupdate.c (get_value_locus_in_path): Strengthen |
| type of local "def_phi" to gimple_phi by replacing a check of the |
| code for GIMPLE_PHI with a dyn_cast<gimple_phi>. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Make gimple_phi_arg_location_from_edge require a gimple_phi |
| |
| * gimple.h (gimple_phi_arg_location_from_edge): Require a |
| gimple_phi. |
| |
| * tree-parloops.c (create_parallel_loop): Split up local variable |
| "stmt", introducing other locals for the various statements created |
| by this function. Reuse "stmt" within the phi-handling code, and |
| change to type gimple_phi, since this is the only remaining |
| "non-phi" user of gimple_phi_arg_location_from_edge. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize three gimple_try_set_ accessors |
| |
| * gimple.c (gimple_copy): Add checked casts to gimple_try. |
| |
| * gimple.h (gimple_try_set_kind): Require a gimple_try. |
| (gimple_try_set_eval): Likewise. |
| (gimple_try_set_cleanup): Likewise. |
| |
| * tree-eh.c (optimize_double_finally): Require a pair of gimple_try |
| statements. |
| (refactor_eh_r): Convert code comparisons to dynamic casts. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_try_set_catch_is_cleanup |
| |
| * gimple.h (gimple_try_set_catch_is_cleanup): Require a gimple_try. |
| |
| * gimplify.c (gimplify_expr): Convert local "try_" from a gimple |
| to a gimple_try. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_eh_filter_set_types and gimple_eh_filter_set_failure |
| |
| * gimple.h (gimple_eh_filter_set_types): Require a gimple_eh_filter. |
| (gimple_eh_filter_set_failure): Likewise. |
| * gimple.c (gimple_copy): Add checked casts to gimple_eh_filter |
| within GIMPLE_EH_FILTER case. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_label_label |
| |
| * gimple.h (gimple_label_label): Require a const_gimple_label |
| rather than just a const_gimple. |
| |
| * cfgexpand.c (label_rtx_for_bb): Convert local from gimple to |
| gimple_label, replacing a check against GIMPLE_LABEL with a |
| dyn_cast<gimple_label>. |
| * predict.c (tree_estimate_probability_bb): Likewise. |
| * tree-cfg.c (make_edges): Likewise. |
| (cleanup_dead_labels): Likewise (twice). |
| (gimple_can_merge_blocks_p): Likewise. |
| (gimple_block_label): Likewise. |
| * tree-eh.c (unsplit_eh): Likewise. |
| (cleanup_empty_eh_unsplit): Likewise. |
| * tree-inline.c (mark_local_labels_stmt): Likewise. |
| * tree-nested.c (convert_nl_goto_receiver): Likewise. |
| |
| * cfgexpand.c (expand_gimple_stmt_1): Add a checked cast to |
| gimple_label when invoking gimple_label_label in a region where |
| we've checked the code is GIMPLE_LABEL. |
| * gimple-pretty-print.c (pp_cfg_jump): Likewise. |
| * gimple.c (gimple_set_bb): Likewise. |
| * ipa-pure-const.c (check_stmt): Likewise. |
| * omp-low.c (diagnose_sb_1): Likewise. |
| * tree-cfg.c (gimple_verify_flow_info): Likewise. |
| * tree-cfgcleanup.c (tree_forwarder_block_p): Likewise. |
| (remove_forwarder_block): Likewise. |
| * tree-eh.c (collect_finally_tree): Likewise. |
| |
| * ipa-split.c (verify_non_ssa_vars): Replace a check against |
| GIMPLE_LABEL with a dyn_cast<gimple_label>, introducing a |
| gimple_label local. |
| * tree-cfg.c (gimple_can_merge_blocks_p): Likewise. |
| (gimple_merge_blocks): Likewise. |
| (remove_bb): Likewise. |
| (stmt_starts_bb_p): Likewise. |
| (gimple_verify_flow_info): Likewise. |
| (move_block_to_fn): Likewise. |
| * tree-cfgcleanup.c (remove_forwarder_block): Likewise. |
| (remove_forwarder_block_with_phi): Likewise. |
| * tree-ssa-ccp.c (optimize_unreachable): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_call_use_set and gimple_call_clobber_set |
| |
| * gimple.h (gimple_call_use_set): Require a gimple_call. |
| (gimple_call_clobber_set): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize gimple_catch_types |
| |
| * gimple.h (gimple_catch_types): Require a const_gimple_catch |
| rather than a const_gimple. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Make gimple_goto_set_dest require a gimple_goto |
| |
| * gimple.h (gimple_goto_set_dest): Require a gimple_goto. |
| |
| * tree-cfg.c (factor_computed_gotos): Add checked cast to |
| gimple_goto. |
| (cleanup_dead_labels): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Make gimple_label_set_label require a gimple_label |
| |
| * gimple.h (gimple_label_set_label): Require a gimple_label. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize parameter to gimple_call_copy_skip_args |
| |
| * gimple.c (gimple_call_copy_skip_args): Require a gimple_call. |
| * gimple.h (gimple_call_copy_skip_args): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Various gimple to gimple_call conversions in IPA |
| |
| * ipa-prop.c (detect_type_change_from_memory_writes): Require a |
| gimple_call rather than a plain gimple. |
| (detect_type_change): Likewise. |
| (detect_type_change_ssa): Likewise. |
| (compute_complex_assign_jump_func): Likewise. |
| (compute_complex_ancestor_jump_func): Likewise. |
| (compute_known_type_jump_func): Likewise. |
| (determine_locally_known_aggregate_parts): Likewise. |
| (ipa_compute_jump_functions_for_edge): Strengthen local "call" to |
| a gimple_call; add checked cast to gimple_phi. |
| (ipa_note_param_call): Require a gimple_call rather than a plain |
| gimple. |
| (ipa_analyze_indirect_call_uses): Likewise. |
| (ipa_analyze_virtual_call_uses): Likewise. |
| (ipa_analyze_call_uses): Likewise. |
| (ipa_analyze_stmt_uses):Add checked cast to gimple_call. |
| |
| * tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): |
| Replace use of is_gimple_call with dyn_cast<gimple_call> and a |
| new local "call_stmt". |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Use gimple_call for callgraph edges |
| |
| * cgraph.h (cgraph_edge::call_stmt): Strengthen field from plain |
| gimple to a gimple_call. |
| (cgraph_node::set_call_stmt_including_clones): Likewise for param |
| "new_stmt". |
| (cgraph_node::create_edge): Likewise for param "call_stmt". |
| (cgraph_node::create_indirect_edge): Likewise. |
| (cgraph_node::create_edge_including_clones): Likewise for param |
| "stmt". |
| (cgraph_edge::set_call_stmt): Likewise for param "new_stmt". |
| (cgraph_edge::clone): Likewise for param "call_stmt". |
| (symbol_table::create_edge): Likewise. |
| |
| * cgraph.c (cgraph_edge::set_call_stmt): Require a gimple_call |
| rather than a plain gimple. |
| (symbol_table::create_edge): Likewise. |
| (cgraph_node::create_edge): Likewise. |
| (cgraph_node::create_indirect_edge): Likewise. |
| (cgraph_edge::redirect_call_stmt_to_callee): Strengthen local |
| "new_stmt" from gimple to gimple_call. |
| (cgraph_update_edges_for_call_stmt_node): Add checked casts to |
| gimple_call. |
| |
| * cgraphbuild.c (pass_build_cgraph_edges::execute): Replace |
| is_gimple_call with dyn_cast<gimple_call> and new local |
| "call_stmt". |
| (cgraph_edge::rebuild_edges): Likewise. |
| |
| * cgraphclones.c (cgraph_edge::clone): Require a gimple_call |
| rather than a plain gimple. |
| (cgraph_node::set_call_stmt_including_clones): Likewise. |
| (cgraph_node::create_edge_including_clones): Likewise. |
| |
| * lto-streamer-in.c (fixup_call_stmt_edges_1): Add checked casts |
| to gimple_call. |
| |
| * omp-low.c (simd_clone_adjust): Strengthen local "call" from |
| gimple to gimple_call. |
| |
| * trans-mem.c (ipa_tm_insert_irr_call): Likewise for "g". |
| (ipa_tm_insert_gettmclone_call): Likewise; also strengthen "g2" |
| to gimple_assign. |
| |
| * tree-emutls.c (gen_emutls_addr): Strengthen local "x" from |
| gimple to gimple_call. |
| |
| * tree-inline.c (copy_bb): Replace is_gimple_call with |
| dyn_cast<gimple_call> and new local "call_stmt". |
| |
| * value-prof.c (gimple_ic): Require and return a gimple_call, |
| rather than a plain gimple. |
| * value-prof.h (gimple_ic): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Make gimple_call_return_slot_opt_p require a gimple_call. |
| |
| * gimple.h (gimple_call_return_slot_opt_p): Require a gimple_call |
| rather than a plain gimple. |
| |
| * gimple-walk.c (walk_stmt_load_store_addr_ops): Convert usage of |
| is_gimple_call to dyn_cast<gimple_call>, introducing a new local |
| "call_stmt". |
| |
| * trans-mem.c (expand_call_tm): Split local "stmt", strengthening |
| from plain gimple to a gimple_call, and introducing new local |
| gimple_assign "assign_stmt". |
| |
| * tree-inline.c (expand_call_inline): Convert check of code against |
| GIMPLE_CALL to dyn_cast<gimple_call>, introducing a new local |
| "call_stmt". |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| More gimple_phi |
| |
| * gimple.h (gimple_phi_set_result): Require a gimple_phi rather |
| than a plain gimple. |
| (gimple_phi_set_arg): Likewise. |
| |
| * tree-outof-ssa.c (remove_gimple_phi_args): Likewise; add a checked |
| cast to gimple_phi. |
| |
| * tree-sra.c (replace_removed_params_ssa_names): Add a checked |
| cast to gimple_phi. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Make gimple_phi_arg_edge require a gimple_phi |
| |
| * gimple.h (gimple_phi_arg_edge): Require a gimple_phi rather |
| than a plain gimple. |
| |
| * gimple-ssa-strength-reduction.c (ncd_with_phi): Strengthen |
| param "phi" from gimple to gimple_phi. Add a checked cast. |
| (ncd_of_cand_and_phis): Add a checked cast. |
| |
| * graphite-sese-to-poly.c (rewrite_phi_out_of_ssa): Require a |
| gimple_phi_iterator; strengthen local "phi" from gimple to a |
| gimple_phi. |
| (rewrite_cross_bb_scalar_deps): Strengthen local "psi" from |
| a gimple_stmt_iterator to a gimple_phi_iterator. |
| (edge_initial_value_for_loop_phi): Require a gimple phi. |
| (initial_value_for_loop_phi): Likewise. |
| |
| * ipa-split.c (consider_split): Convert "bsi" to a |
| gimple_phi_iterator and "stmt" to a gimple_phi. |
| |
| * predict.c (predict_extra_loop_exits): Convert "phi_stmt" to be |
| a gimple_phi; introduce "lhs_def_stmt" as plain gimple. |
| (apply_return_prediction): Convert "phi" to be a gimple_phi. |
| |
| * tree-cfg.c (replace_uses_by): Add checked cast to gimple_phi. |
| (verify_gimple_in_cfg): Introduce gimple_phi_iterator "gpi" and use |
| it to convert "phi" to a gimple_phi. |
| |
| * tree-eh.c (cleanup_empty_eh_merge_phis): Convert "ngsi", "ogsi" |
| to be gimple_phi_iterators. Convert "ophi", "nphi" to be |
| gimple_phi. |
| |
| * tree-into-ssa.c (prepare_use_sites_for): Add checked cast to |
| gimple_phi. |
| |
| * tree-ssa-coalesce.c (create_outofssa_var_map): Introduce |
| gimple_phi_iterator "gpi" and use it to convert "phi" to a |
| gimple_phi. |
| |
| * tree-ssa-dce.c (propagate_necessity): Introduce local "phi", |
| from checked cast to gimple_phi. |
| |
| * tree-ssa-live.c (set_var_live_on_entry): Add checked cast to |
| gimple_phi. |
| |
| * tree-ssa-propagate.c (replace_phi_args_in): Require a gimple_phi |
| rather than a plain gimple. |
| (substitute_and_fold_dom_walker::before_dom_children): Introduce |
| gimple_phi_iterator "gpi". |
| |
| * tree-ssa-sink.c (find_bb_for_arg): Require a gimple_phi rather |
| than a plain gimple. |
| (nearest_common_dominator_of_uses): Replace check of code against |
| GIMPLE_PHI with a dyn_cast<gimple_phi>, introducing a new local. |
| (statement_sink_location): Add checked cast to gimple_phi. |
| |
| * tree-ssa-uninit.c (compute_uninit_opnds_pos): Require a |
| gimple_phi rather than a plain gimple. |
| (collect_phi_def_edges): Likewise. Add a checked cast. |
| (find_def_preds): Strengthen param "phi" from gimple to |
| gimple_phi. |
| (prune_uninit_phi_opnds_in_unrealizable_paths): Likewise for |
| params "phi" and "flag_def". Strenghen param "visited_phis" from |
| hash_set<gimple> * to hash_set<gimple_phi> *. Convert |
| "flag_arg_def", "phi_arg_def" to gimple_phi using |
| dyn_cast<gimple_phi>. Similarly, introduce new local |
| "opnd_def_phi". |
| (use_pred_not_overlap_with_undef_path_pred): Strengthen param |
| "phi" from gimple to gimple_phi, and param "visited_phis" from |
| hash_set<gimple> * to hash_set<gimple_phi> *. Add a checked cast. |
| (is_use_properly_guarded): Likewise for params. |
| (find_uninit_use): Replace check of code against GIMPLE_PHI with |
| a dyn_cast<gimple_phi>, introducing a new local "use_phi". |
| Strengthen local "visited_phis" from hash_set<gimple> to |
| hash_set<gimple_phi>. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Update GRAPHITE to use more concrete gimple statement classes |
| |
| * graphite-scop-detection.c (canonicalize_loop_closed_ssa): |
| Strengthen local "psi" to be a gimple_phi_iterator and "phi" to |
| a gimple_phi. |
| |
| * graphite-sese-to-poly.c (phi_arg_in_outermost_loop): Require |
| a gimple_phi rathen than a plain gimple. |
| (remove_simple_copy_phi): Require a gimple_phi_iterator; |
| strengthen local "phi" to be a gimple_phi and "stmt" to be a |
| gimple_assign. |
| (remove_invariant_phi): Likewise. |
| (simple_copy_phi_p): Require a gimple_phi. |
| (reduction_phi_p): Require a gimple_phi_iterator; strengthen |
| local "phi" to be a gimple_phi. |
| (add_condition_to_pbb): Require a gimple_cond rather than a |
| plain gimple. |
| (add_conditions_to_domain): Add checked cast to gimple_cond |
| within GIMPLE_COND case of switch statement. |
| (single_pred_cond_non_loop_exit): Return a gimple_cond rather |
| than a plain gimple, via a checked cast. |
| (sese_dom_walker::before_dom_children): Strengthen local "stmt" |
| from gimple to gimple_cond. |
| (gsi_for_phi_node): Require a gimple_phi, and return a |
| gimple_phi_iterator. |
| (insert_out_of_ssa_copy): Strengthen local "stmt" from gimple to |
| gimple_assign. |
| (rewrite_reductions_out_of_ssa): Strengthen "psi" to be a |
| gimple_phi_iterator, and "phi" to be a gimple_phi. |
| (phi_contains_arg): Require a gimple_phi. |
| (follow_ssa_with_commutative_ops): Strengthen return type from |
| gimple to gimple_phi, by converting a check for code GIMPLE_PHI to |
| a dyn_cast<gimple_phi>, and strengthening local "res" from gimple |
| to gimple_phi. |
| (detect_commutative_reduction_arg): Strengthen return type from |
| gimple to gimple_phi, and strengthen local "phi" to be a |
| gimple_phi. |
| (detect_commutative_reduction_assign): Strengthen return type from |
| gimple to gimple_phi, and strengthen local "res" to be a |
| gimple_phi. |
| (follow_inital_value_to_phi): Strengthen return type from |
| gimple to gimple_phi. Replace check for code GIMPLE_PHI with |
| a dyn_cast<gimple_phi>. |
| (detect_commutative_reduction): Strengthen return type and locals |
| "loop_phi", "phi", "close_phi" from gimple to gimple_phi, |
| introducing a checked cast of "stmt" in region guarded by |
| scalar_close_phi_node_p (stmt). |
| (translate_scalar_reduction_to_array_for_stmt): Require param |
| "loop_phi" to be a gimple_phi. Strengthen local "assign" from |
| gimple to gimple_assign. |
| (remove_phi): Require a gimple_phi. |
| (close_phi_written_to_memory): Likewise. |
| (translate_scalar_reduction_to_array): We expect the first element |
| in each vector to be an arbitrary statement, but all of the |
| subsequent elements to be phi nodes. Hence the decls of gimple |
| locals "loop_phi" and "close_phi" are replaced with decls of gimple |
| "loop_stmt" and "close_stmt", with decls of the more-strongly typed |
| gimple_phi "loop_phi" and "close_phi" occurring lower down, within |
| the region where we're dealing with i > 0 and hence where we can |
| safely assign them using the checked cast as_a <gimple_phi>. |
| This allows many of the strengthenings from gimple to gimple_phi |
| above. We eliminate the local "stmt", since we can simply use |
| "loop_stmt". |
| (rewrite_commutative_reductions_out_of_ssa_close_phi): Strengthen |
| param "close_phi" from gimple to gimple_phi, and local "gsi" from |
| gimple_stmt_iterator to gimple_phi_iterator, converting uses of |
| gsi_stmt to gsi.phi for type-safety. |
| (scop_ivs_can_be_represented): Strengthen local "gsi" from |
| gimple_stmt_iterator to gimple_phi_iterator, and "phi" from gimple |
| to gimple_phi. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Make gimple_phi_arg_set_location require a gimple_phi |
| |
| * gimple.h (gimple_phi_arg_set_location): Require a gimple_phi |
| rather than a plain gimple. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Make add_phi_arg require a gimple_phi |
| |
| * tree-phinodes.h (add_phi_arg): Require a gimple_phi rather than |
| a plain gimple. |
| * tree-phinodes.c (add_phi_arg): Likewise. |
| |
| * gimple-ssa-strength-reduction.c (create_phi_basis): Strengthen |
| local "phi" from plain gimple to gimple_phi. |
| |
| * graphite-scop-detection.c (canonicalize_loop_closed_ssa): |
| Likewise for "close_phi". |
| |
| * ipa-split.c (split_function): Convert "psi" to |
| gimple_phi_iterator. |
| |
| * omp-low.c (expand_omp_for_static_nochunk): Introduce |
| gimple_phi_iterator gpi, using it to strengthen "phi" to be a |
| gimple_phi. |
| (expand_omp_for_static_chunk): Likewise. |
| |
| * tree-cfg.c (gimple_duplicate_bb): Make topmost "gsi" decl more |
| tightly-scoped, and eliminate decls "phis", "phi", "stmt", "copy" |
| in favor of more tightly-scoped gimple_phi_iterator gpi and |
| gimple_phi decls "phi" and "copy", and gimple decls "stmt" and |
| "copy". |
| |
| * tree-parloops.c (create_parallel_loop): Introduce |
| gimple_phi_iterator gpi, using it to strengthen "phi" to be a |
| gimple_phi. |
| |
| * tree-ssa-loop-im.c (execute_sm_if_changed): Likewise. |
| |
| * tree-ssa-loop-manip.c (create_iv): Split out new gimple_phi |
| local "phi" from "stmt", and convert the latter into being a |
| gimple_assign. |
| |
| * tree-ssa-pre.c (insert_into_preds_of_block): Strengthen local |
| "phi" to be a gimple_phi. |
| |
| * tree-ssa-tail-merge.c (vop_phi): Require a gimple_phi rather |
| than a plain gimple. |
| (replace_block_by): Strengthen local "bb2_phi" to be a gimple_phi. |
| |
| * tree-tailcall.c (add_successor_phi_arg): Use gsi.phi when |
| invoking add_phi_arg. |
| (eliminate_tail_call): Introduce gimple_phi_iterator gpi, using it |
| to strengthen "phi" to be a gimple_phi. |
| (create_tailcall_accumulator): Strengthen local "phi" to be a |
| gimple_phi. |
| (tree_optimize_tail_calls_1): Likewise. |
| |
| * tree-vect-data-refs.c (vect_setup_realignment): Strengthen |
| local "phi_stmt" to be a gimple_phi. |
| |
| * tree-vect-loop-manip.c (slpeel_tree_duplicate_loop_to_edge_cfg): |
| Strengthen "gsi", "gsi_orig", "gsi_new" to be |
| gimple_phi_iterators, and "phi" "orig_phi", "new_phi" to be |
| gimple_phi instances. |
| (slpeel_tree_peel_loop_to_edge): Strengthen local "new_phi" to be |
| a gimple_phi. |
| |
| * tree-vect-loop.c (get_initial_def_for_induction): Likewise for |
| "induction_phi". |
| (vect_create_epilog_for_reduction): Add checked casts to |
| gimple_phi; strengthen local "outer_phi" to gimple_phi and |
| "new_vec_stmt" to gimple_assign. |
| (vect_finalize_reduction): Strengthen local "vect_phi" to |
| gimple_phi. |
| (vectorizable_reduction): Likewise for "new_phi". |
| |
| * tree-vect-stmts.c (vectorizable_simd_clone_call): Likewise. |
| (vectorizable_load): Likewise for "phi". |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Make gimple_phi_arg_def_ptr and gimple_phi_arg_has_location require a gimple_phi |
| |
| * gimple.h (gimple_phi_arg_def_ptr): Require a gimple_phi rather |
| than a plain gimple. |
| (gimple_phi_arg_has_location): Likewise. |
| |
| * gimple-streamer-in.c (input_phi): Return a gimple_phi rather |
| than a plain gimple. |
| * gimple-streamer-out.c (output_phi): Require a gimple_phi rather |
| than a plain gimple. |
| (output_bb): Convert iteration to a gimple_phi_iterator, and local |
| "phi" to gimple_phi. |
| |
| * omp-low.c (expand_omp_for_static_chunk): Convert iterator "psi" |
| to a gimple_phi_iterator; convert locals "phi" and "nphi" to be |
| gimple_phi. |
| |
| * tree-cfg.c (gimple_duplicate_sese_tail): Likewise for "psi" and |
| "phi". |
| (move_block_to_fn): Introduce new gimple_phi_iterator "psi", using |
| it in place of "gsi" where necessary. Convert "phi" to be a |
| gimple_phi. |
| |
| * tree-cfgcleanup.c (remove_forwarder_block): Likewise. |
| |
| * tree-vect-loop-manip.c (vect_loop_versioning): Convert "gsi" to |
| a gimple_phi_iterator, and "orig_phi" and "new_phi" to be |
| gimple_phi. |
| |
| * tree.c (find_decls_types_in_node): Introduce new |
| gimple_phi_iterator "psi", using it in place of "si" where |
| necessary. Convert "phi" to be a gimple_phi. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| omp-low.c: Use more concrete types of gimple statement for various locals |
| |
| * omp-low.c (finalize_task_copyfn): Strengthen local "bind" from |
| plain gimple to gimple_bind. |
| (lower_rec_input_clauses): Strengthen local "g" from |
| plain gimple to gimple_assign. |
| (lower_lastprivate_clauses): Likewise for "stmt" to gimple_cond |
| and "g" to gimple_call. |
| (expand_omp_for_init_vars): Likewise, for two decls of "stmt" to |
| gimple_assign. |
| (expand_omp_atomic_pipeline): Likewise for one decl of "stmt". |
| (expand_omp_atomic_mutex): Likewise. |
| (lower_omp_master): Likewise for "x" to gimple_call. |
| (lower_omp_ordered): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| tree-parloops.c: Use gimple_phi in various places |
| |
| * tree-parloops.c (reduction_info::keep_res): Strengthen field |
| from plain gimple to gimple_phi. |
| (transform_to_exit_first_loop): Strengthen locals "phi", "nphi" |
| to gimple_phi. Eliminate early decl of gimple_stmt_iterator gsi |
| in favor of more tightly scoped gimple_phi_iterators, and a final |
| later decl as a gimple_stmt_iterator. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_omp_sections |
| |
| * coretypes.h (gimple_omp_sections): New typedef. |
| (const_gimple_omp_sections): New typedef. |
| |
| * gimple-pretty-print.c (dump_gimple_omp_sections): Require a |
| gimple_omp_sections rather than a plain gimple. |
| (pp_gimple_stmt_1): Add checked cast to gimple_omp_sections within |
| GIMPLE_OMP_SECTIONS case of switch statement. |
| |
| * gimple.c (gimple_build_omp_sections): Return a |
| gimple_omp_sections rather than a plain gimple. |
| |
| * gimple.h (gimple_build_omp_sections): Return a |
| gimple_omp_sections rather than a plain gimple. |
| |
| * omp-low.c (scan_omp_sections): Require a gimple_omp_sections |
| rather than a plain gimple. |
| (scan_omp_1_stmt): Add checked cast to gimple_omp_sections within |
| GIMPLE_OMP_SECTIONS case of switch statement. |
| (expand_omp_sections): Strengthen local "sections_stmt" from gimple |
| to gimple_omp_sections. |
| (lower_omp_sections): Likewise for "stmt". |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_omp_teams |
| |
| * coretypes.h (gimple_omp_teams): New typedef. |
| (const_gimple_omp_teams): New typedef. |
| |
| * gimple.h (gimple_build_omp_teams): Return a gimple_omp_teams |
| rather than a plain gimple. |
| (gimple_omp_teams_set_clauses): Require a gimple_omp_teams rather |
| than a plain gimple. |
| |
| * gimple-pretty-print.c (dump_gimple_omp_teams): Require a |
| gimple_omp_teams rather than a plain gimple. |
| (pp_gimple_stmt_1): Add checked cast to gimple_omp_teams within |
| GIMPLE_OMP_TEAMS case of switch statement. |
| |
| * gimple.c (gimple_build_omp_teams): Return a gimple_omp_teams |
| rather than a plain gimple. |
| |
| * omp-low.c (scan_omp_teams): Likewise. |
| (scan_omp_1_stmt): Add checked cast to gimple_omp_teams within |
| GIMPLE_OMP_TEAMS case of switch statement. |
| (lower_omp_teams): Strengthen local "teams_stmt" from gimple to |
| gimple_omp_teams. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_omp_target |
| |
| * coretypes.h (gimple_omp_target): New typedef. |
| (const_gimple_omp_target): New typedef. |
| |
| * gimple.h (gimple_build_omp_target): Return a gimple_omp_target |
| rather than a plain gimple. |
| (gimple_omp_target_set_clauses): Require a gimple_omp_target |
| rather than a plain gimple. |
| (gimple_omp_target_set_kind): Likewise. |
| (gimple_omp_target_child_fn_ptr): Likewise. |
| (gimple_omp_target_set_child_fn): Likewise. |
| (gimple_omp_target_data_arg_ptr): Likewise. |
| (gimple_omp_target_set_data_arg): Likewise. |
| (gimple_omp_target_child_fn): Require a const_gimple_omp_target |
| rather than a plain const_gimple. |
| (gimple_omp_target_data_arg): Likewise. |
| |
| * gimple-pretty-print.c (dump_gimple_omp_target): Require a |
| gimple_omp_target rather than a plain gimple. |
| (pp_gimple_stmt_1): Add checked cast to gimple_omp_target within |
| GIMPLE_OMP_TARGET case of switch statement. |
| |
| * gimple.c (gimple_build_omp_target): Return a gimple_omp_target |
| rather than a plain gimple. |
| |
| * gimplify.c (gimplify_omp_target_update): Strengthen local "stmt" |
| from gimple to gimple_omp_target. |
| |
| * omp-low.c (scan_omp_target): Require a gimple_omp_target rather |
| than a plain gimple. |
| (scan_omp_1_stmt): Add checked cast to gimple_omp_target within |
| GIMPLE_OMP_TARGET case of switch statement. |
| (expand_omp_target): Strengthen local "entry_stmt" from gimple to |
| gimple_omp_target. |
| (lower_omp_target): Likewise for "stmt". |
| |
| * tree-nested.c (convert_nonlocal_reference_stmt): Add checked |
| cast to gimple_omp_target. |
| (convert_local_reference_stmt): Likewise. |
| (convert_gimple_call): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_omp_single |
| |
| * coretypes.h (gimple_omp_single): New typedef. |
| (const_gimple_omp_single): New typedef. |
| |
| * gimple.h (gimple_build_omp_single): Return a gimple_omp_single |
| rather than a plain gimple. |
| (gimple_omp_single_set_clauses): Require a gimple_omp_single |
| rather than a plain gimple. |
| |
| * gimple-pretty-print.c (dump_gimple_omp_single): Require a |
| gimple_omp_single rather than a plain gimple. |
| (pp_gimple_stmt_1): Add checked cast to gimple_omp_single within |
| GIMPLE_OMP_SINGLE case of switch statement. |
| |
| * gimple.c (gimple_build_omp_single): Return a gimple_omp_single |
| rather than a plain gimple. |
| |
| * omp-low.c (scan_omp_single): Require a gimple_omp_single rather |
| than a plain gimple. |
| (scan_omp_1_stmt): Add checked cast to gimple_omp_single within |
| GIMPLE_OMP_SINGLE case of switch statement. |
| (lower_omp_single_simple): Require a gimple_omp_single rather |
| than a plain gimple. |
| (lower_omp_single_copy): Likewise. |
| (lower_omp_single): Strengthen local "single_stmt" from gimple to |
| gimple_omp_single. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_omp_task |
| |
| * coretypes.h (gimple_omp_task): New typedef. |
| (const_gimple_omp_task): New typedef. |
| |
| * gimple.h (gimple_build_omp_task): Return a gimple_omp_task |
| rather than a plain gimple. |
| |
| * gimple-pretty-print.c (dump_gimple_omp_task): Require a |
| gimple_omp_task rather than a plain gimple. |
| (pp_gimple_stmt_1): Add checked cast to gimple_omp_task within |
| GIMPLE_OMP_TASK case of switch statement. |
| |
| * gimple.c (gimple_build_omp_task): Return a gimple_omp_task |
| rather than a plain gimple. |
| |
| * omp-low.c (finalize_task_copyfn): Require a gimple_omp_task |
| rather than a plain gimple. |
| (delete_omp_context): Add checked cast to gimple_omp_task. |
| (scan_omp_task): Strengthen local "stmt" from gimple to |
| gimple_omp_task. |
| (expand_task_call): Require a gimple_omp_task rather than a plain |
| gimple. |
| (expand_omp_taskreg): Add checked cast to gimple_omp_task. |
| (create_task_copyfn): Require a gimple_omp_task rather than a |
| plain gimple. |
| (lower_omp_taskreg): Add checked cast to gimple_omp_task. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| tree-cfg.c: Make verify_gimple_call require a gimple_call |
| |
| * tree-cfg.c (verify_gimple_call): Require a gimple_call rather |
| than a plain gimple. |
| (verify_gimple_stmt): Add checked cast to gimple_call within |
| GIMPLE_CALL case of switch statement. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_omp_parallel |
| |
| * coretypes.h (gimple_omp_parallel): New typedef. |
| (const_gimple_omp_parallel): New typedef. |
| |
| * cgraphbuild.c (build_cgraph_edges): Convert check of code |
| against GIMPLE_OMP_PARALLEL to a dyn_cast <gimple_omp_parallel> |
| and new local. |
| |
| * gimple-pretty-print.c (dump_gimple_omp_parallel): Require a |
| gimple_omp_parallel rather than a plain gimple. |
| (pp_gimple_stmt_1): Add a checked cast to gimple_omp_parallel |
| within GIMPLE_OMP_PARALLEL case of switch statement. |
| |
| * gimple-walk.c (walk_gimple_op): Likewise, introducing a local. |
| |
| * gimple.c (gimple_build_omp_parallel): Return a |
| gimple_omp_parallel rather than a plain gimple. |
| (gimple_copy): Add checked casts to gimple_omp_parallel within |
| GIMPLE_OMP_PARALLEL case of switch statement, introducing locals. |
| |
| * gimple.h (gimple_build_omp_parallel): Return a |
| gimple_omp_parallel rather than a plain gimple. |
| (gimple_omp_parallel_clauses_ptr): Require a gimple_omp_parallel |
| rather than a plain gimple. |
| (gimple_omp_parallel_set_clauses): Likewise. |
| (gimple_omp_parallel_data_arg_ptr): Likewise. |
| (gimple_omp_parallel_set_data_arg): Likewise. |
| (gimple_omp_parallel_child_fn_ptr): Likewise. |
| (gimple_omp_parallel_set_child_fn): Likewise. |
| (gimple_omp_parallel_child_fn): Require a |
| const_gimple_omp_parallel rather than a plain const_gimple. |
| (gimple_omp_parallel_data_arg): Likewise. |
| |
| * omp-low.c (scan_omp_parallel): Strengthen local "stmt" from |
| gimple to gimple_omp_parallel. |
| (expand_parallel_call): Require a gimple_omp_parallel for |
| "entry_stmt" rather than a plain gimple. |
| (remove_exit_barrier): Strengthen local "parallel_stmt" from |
| gimple to gimple_omp_parallel. |
| (expand_omp_taskreg): Add checked casts to gimple_omp_parallel. |
| |
| * tree-inline.c (remap_gimple_stmt): Add a checked cast to |
| gimple_omp_parallel within GIMPLE_OMP_PARALLEL case of switch |
| statement, introducing local. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_omp_for |
| |
| * coretypes.h (gimple_omp_for): New. |
| (const_gimple_omp_for): New. |
| |
| * gimple.h (gimple_build_omp_for): Return a gimple_omp_for rather |
| than a plain gimple. |
| (gimple_omp_for_set_kind): Require a gimple_omp_for rather than a |
| plain gimple. |
| (gimple_omp_for_set_combined_p): Likewise. |
| (gimple_omp_for_set_combined_into_p): Likewise. |
| |
| * gimple-pretty-print.c (dump_gimple_omp_for): Require a |
| gimple_omp_for rather than a plain gimple. |
| (pp_gimple_stmt_1): Add a checked cast to gimple_omp_for in |
| GIMPLE_OMP_FOR case of switch statement. |
| |
| * gimple.c (gimple_build_omp_for): Return a gimple_omp_for rather |
| than a plain gimple. |
| (gimple_copy): Add a checked cast to gimple_omp_for and a new local. |
| |
| * gimplify.c (gimplify_omp_for): Strengthen local "gfor" from |
| gimple to gimple_omp_for. |
| |
| * omp-low.c (omp_for_data::for_stmt): Strengthen field from gimple |
| to gimple_omp_for. |
| (extract_omp_for_data): Require a gimple_omp_for rather than a |
| plain gimple. |
| (workshare_safe_to_combine_p): Add a checked cast to |
| gimple_omp_for. |
| (get_ws_args_for): Convert check of code against GIMPLE_OMP_FOR |
| with a dyn_cast<gimple_omp_for> and a new local. |
| (scan_omp_parallel): Add a checked cast to gimple_omp_for and a |
| new local. |
| (scan_omp_for): Require a gimple_omp_for rather than a plain |
| gimple. |
| (scan_omp_1_stmt): Add a checked cast to gimple_omp_for in |
| GIMPLE_OMP_FOR case of switch statement. |
| (expand_omp_for): Add a checked cast to gimple_omp_for. |
| (lower_omp_for): Strengthen local "stmt" from gimple to |
| gimple_omp_for. |
| |
| * tree-nested.c (walk_gimple_omp_for): Require a gimple_omp_for |
| rather than a plain gimple. |
| (convert_nonlocal_reference_stmt): Add a checked cast to |
| gimple_omp_for in GIMPLE_OMP_FOR case of switch statement. |
| (convert_local_reference_stmt): Likewise. |
| |
| * tree-parloops.c (create_parallel_loop): Strengthen local |
| "for_stmt" from gimple to gimple_omp_for. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_omp_critical |
| |
| * coretypes.h (gimple_omp_critical): New typedef. |
| (const_gimple_omp_critical): New typedef. |
| |
| * gimple-pretty-print.c (dump_gimple_omp_critical): Require a |
| gimple_omp_critical rather than a plain gimple. |
| (pp_gimple_stmt_1): Add a checked cast to gimple_omp_critical |
| within GIMPLE_OMP_CRITICAL case of switch statement. |
| |
| * gimple-walk.c (walk_gimple_op): Likewise. |
| |
| * gimple.c (gimple_build_omp_critical): Return a gimple_omp_critical |
| rather than a plain gimple. |
| (gimple_copy): Add checked casts to gimple_omp_critical |
| within GIMPLE_OMP_CRITICAL case of switch statement. |
| |
| * gimple.h (gimple_debug): Likewise. |
| (gimple_build_omp_critical): Return a gimple_omp_critical rather |
| than a plain gimple. |
| (gimple_omp_critical_name): Require a const_gimple_omp_critical |
| rather than a plain const_gimple. |
| (gimple_omp_critical_name_ptr): Require a gimple_omp_critical |
| rather than a plain gimple. |
| (gimple_omp_critical_set_name): Likewise. |
| |
| * omp-low.c (check_omp_nesting_restrictions): Add a checked cast |
| to gimple_omp_critical within GIMPLE_OMP_CRITICAL case of switch |
| statement, introducing a new local "other_crit" for type-safety. |
| (lower_omp_critical): Strengthen local "stmt" to |
| gimple_omp_critical. |
| |
| * tree-inline.c (remap_gimple_stmt): Add a checked cast to |
| gimple_omp_critical within GIMPLE_OMP_CRITICAL case of switch |
| statement. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_omp_continue |
| |
| * coretypes.h (gimple_omp_continue): New typedef. |
| (const_gimple_omp_continue): New typedef. |
| |
| * gimple.h (gimple_build_omp_continue): Return a |
| gimple_omp_continue rather than a plain gimple. |
| (gimple_omp_continue_control_def): Require a |
| const_gimple_omp_continue rather than a plain const_gimple. |
| (gimple_omp_continue_control_use): Likewise. |
| (gimple_omp_continue_control_def_ptr): Require a gimple_omp_continue |
| rather than a plain gimple. |
| (gimple_omp_continue_set_control_def): Likewise. |
| (gimple_omp_continue_control_use_ptr): Likewise. |
| (gimple_omp_continue_set_control_use): Likewise. |
| |
| * gimple-pretty-print.c (dump_gimple_omp_continue): Require a |
| gimple_omp_continue rather than a plain gimple. |
| (pp_gimple_stmt_1): Add a checked cast to gimple_omp_continue |
| within GIMPLE_OMP_CONTINUE case of switch statement. |
| |
| * gimple-walk.c (walk_gimple_op): Likewise, adding a new local. |
| |
| * gimple.c (gimple_build_omp_continue): Return a |
| gimple_omp_continue rather than a plain gimple. |
| |
| * omp-low.c (gimple_build_cond_empty): Return a gimple_cond |
| rather than a plain gimple. |
| (expand_omp_for_generic): Split local "stmt" into "assign_stmt", |
| "cont_stmt", "cond_stmt", "call_stmt" of types gimple_assign, |
| gimple_omp_continue, gimple_cond, gimple_call respectively. |
| (expand_omp_for_static_nochunk): Likewise, splitting into two |
| "cond_stmt" decls. "assign_stmt", "cont_stmt" |
| (expand_omp_for_static_chunk): Likewise, splitting into |
| "cond_stmt", "assign_stmt", "cont_stmt". |
| (expand_omp_sections): Strengthen local "cont" from gimple to |
| gimple_omp_continue. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_omp_atomic_store |
| |
| * coretypes.h (gimple_omp_atomic_store): New typedef. |
| (const_gimple_omp_atomic_store): New typedef. |
| |
| * gimple-pretty-print.c (dump_gimple_omp_atomic_store): Require |
| a gimple_omp_atomic_store rather than a plain gimple. |
| (pp_gimple_stmt_1): Add checked cast to gimple_omp_atomic_store |
| within GIMPLE_OMP_ATOMIC_STORE case of switch statement. |
| * gimple-walk.c (walk_gimple_op): Likewise. |
| |
| * gimple.c (gimple_build_omp_atomic_store): Return a |
| gimple_omp_atomic_store rather than a plain gimple. |
| |
| * gimple.h (gimple_build_omp_atomic_store): Return a |
| gimple_omp_atomic_store rather than a plain gimple. |
| (gimple_omp_atomic_store_set_val): Require a gimple_omp_atomic_store |
| rather than a plain gimple. |
| (gimple_omp_atomic_store_val_ptr): Likewise. |
| (gimple_omp_atomic_store_val): Require a |
| const_gimple_omp_atomic_store rather than a plain const_gimple. |
| |
| * gimplify.c (gimplify_omp_atomic): Strengthen locals "loadstmt" and |
| "storestmt" from gimple to gimple_omp_atomic_load loadstmt and |
| gimple_omp_atomic_store storestmt respectively. |
| |
| * omp-low.c (expand_omp_atomic): Strengthen local "store" from |
| gimple to gimple_omp_atomic_store. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_omp_atomic_load |
| |
| * coretypes.h (gimple_omp_atomic_load): New typedef. |
| (const_gimple_omp_atomic_load): New typedef. |
| |
| * gimple-pretty-print.c (dump_gimple_omp_atomic_load): Require a |
| gimple_omp_atomic_load rather than a plain gimple. |
| (pp_gimple_stmt_1): Add a checked cast to gimple_omp_atomic_load |
| within GIMPLE_OMP_ATOMIC_LOAD case of switch statement. |
| |
| * gimple-walk.c (walk_gimple_op): Likewise, introducing a new local. |
| |
| * gimple.c (gimple_build_omp_atomic_load): Return a |
| gimple_omp_atomic_load rather than a plain gimple. |
| |
| * gimple.h (gimple_build_omp_atomic_load): Return a |
| gimple_omp_atomic_load rather than a plain gimple. |
| (gimple_omp_atomic_load_set_lhs): Require a |
| gimple_omp_atomic_load rather than a plain gimple. |
| (gimple_omp_atomic_load_lhs_ptr): Likewise. |
| (gimple_omp_atomic_load_set_rhs): Likewise. |
| (gimple_omp_atomic_load_rhs_ptr): Likewise. |
| (gimple_omp_atomic_load_lhs): Require a |
| const_gimple_omp_atomic_load rather than a plain const_gimple. |
| (gimple_omp_atomic_load_rhs): Likewise. |
| |
| * gimplify-me.c (gimple_regimplify_operands): Add a checked cast |
| to gimple_omp_atomic_load within GIMPLE_OMP_ATOMIC_LOAD case of |
| switch statement. |
| |
| * omp-low.c (expand_omp_atomic): Strengthen type of local "load" |
| from gimple to gimple_omp_atomic_load. |
| (lower_omp_1): Add a checked cast to gimple_omp_atomic_load within |
| GIMPLE_OMP_ATOMIC_LOAD case of switch statement. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Use more concrete types for various gimple statements |
| |
| * cgraphunit.c (thunk_adjust): Strengthen local "stmt" from gimple |
| to gimple_assign. |
| |
| * gimple-ssa-isolate-paths.c |
| (insert_trap_and_remove_trailing_statements): Strengthen local |
| "new_stmt" from gimple to gimple_call. |
| |
| * gimple-ssa-strength-reduction.c (replace_mult_candidate): |
| Strengthen local "copy_stmt" from gimple to gimple_assign. |
| (create_add_on_incoming_edge): Likewise, for "new_stmt". |
| (insert_initializers): Likewise, for "init_stmt". |
| (introduce_cast_before_cand): Likewise, for "cast_stmt". |
| (replace_one_candidate): Likewise, for "copy_stmt" and |
| "cast_stmt". |
| |
| * gimplify.c (build_stack_save_restore): Require gimple_calls |
| rather than plain gimples. |
| (gimplify_bind_expr): Strengthen locals "stack_save" and |
| "stack_restore" from gimple to gimple_call. Strengthen "gs" |
| to gimple_try. |
| (gimplify_switch_expr): Strengthen local "gimple_switch" from |
| gimple to gimple_switch, and "new_default" to gimple_label. |
| (gimplify_cond_expr): Strengthen local "gimple_cond" from gimple |
| to gimple_cond. |
| (gimplify_init_constructor): Strengthen local "init" from gimple |
| to gimple_assign. |
| (gimplify_cleanup_point_expr): Strengthen local "gtry" from gimple |
| to gimple_try. |
| (gimple_push_cleanup): Strengthen locals "ffalse" and "ftrue" from |
| gimple to gimple_assign. |
| |
| * tree-eh.c (do_goto_redirection): Strengthen local to gimple_goto. |
| (emit_post_landing_pad): Strengthen local to gimple_label. |
| |
| * tree-outof-ssa.c (insert_backedge_copies): Strengthen local |
| "stmt" from gimple to gimple_assign. |
| |
| * tree-parloops.c (take_address_of): Likewise. |
| |
| * tree-predcom.c (replace_ref_with): Likewise, for "new_stmt". |
| (initialize_root_vars_lm): Likewise, for "init_stmt". |
| (reassociate_to_the_same_stmt): Likewise, for "new_stmt" and "tmp_stmt". |
| |
| * tree-profile.c (gimple_gen_edge_profiler): Likewise, for "stmt1", |
| "stmt2", "stmt3". |
| (gimple_gen_ic_profiler): Likewise. |
| (gimple_gen_ic_func_profiler): Strengthen local "stmt1" from |
| gimple to gimple_call, and "stmt2" to gimple_assign. |
| |
| * tree-scalar-evolution.c (scev_const_prop): Strengthen local |
| "ass" from gimple to gimple_assign. |
| |
| * tree-sra.c (build_ref_for_offset): Likewise for "stmt". |
| (generate_subtree_copies): Likewise; also strengthen "ds" to |
| gimple_debug. |
| (init_subtree_with_zero): Likewise. |
| (sra_modify_expr): Likewise. |
| (load_assign_lhs_subreplacements): Likewise. |
| (sra_modify_assign): Strengthen "ds" to gimple_debug. |
| (sra_ipa_reset_debug_stmts): Likewise for "def_temp". |
| |
| * tree-ssa-ccp.c (insert_clobber_before_stack_restore): |
| Strengthen local "clobber_stmt" from gimple to gimple_assign. |
| |
| * tree-ssa-dce.c (remove_dead_stmt): Strengthen "note" to |
| gimple_debug. |
| |
| * tree-ssa-dom.c (record_equivalences_from_stmt): Strengthen |
| local "new_stmt" from gimple to gimple_assign. |
| (optimize_stmt): Likewise. |
| |
| * tree-ssa-forwprop.c (simplify_bitwise_binary): Likewise for |
| 4 declarations of "newop". |
| (simplify_rotate): Likewise for "g". |
| |
| * tree-ssa-loop-im.c (rewrite_reciprocal): Likewise for 3 locals. |
| (rewrite_bittest): Likewise for "stmt" and "stmt2". |
| (move_computations_dom_walker::before_dom_children): Likewise for |
| "new_stmt". |
| (execute_sm): Likewise for "load" and "store". |
| |
| * tree-ssa-loop-ivcanon.c (remove_exits_and_undefined_stmts): |
| Strengthen local "stmt" from gimple to gimple_call. |
| (unloop_loops): Likewise. |
| |
| * tree-ssa-loop-ivopts.c (rewrite_use_nonlinear_expr): Strengthen |
| local "ass" from gimple to gimple_assign. |
| (remove_unused_ivs): Strengthen "def_temp" to gimple_debug. |
| |
| * tree-ssa-loop-manip.c (rewrite_phi_with_iv): Strengthen local "stmt" |
| from gimple to gimple_assign. |
| |
| * tree-ssa-loop-prefetch.c (issue_prefetch_ref): Strengthen local |
| "prefetch" from gimple to gimple_call. |
| |
| * tree-ssa-math-opts.c (insert_reciprocals): Strengthen local |
| "new_stmt" from gimple to gimple_assign. |
| (powi_as_mults_1): Likewise for "mult_stmt". |
| (powi_as_mults): Likewise for "div_stmt". |
| (build_and_insert_binop): Likewise for "stmt". |
| (build_and_insert_cast): Likewise. |
| (pass_cse_sincos::execute): Likewise for "stmt" and various decls |
| of "new_stmt". |
| (convert_mult_to_fma): Likewise for "fma_stmt". |
| |
| * tree-ssa-phiopt.c (conditional_replacement): Likewise for "new_stmt". |
| (abs_replacement): Likewise. |
| |
| * tree-ssa-phiprop.c (phiprop_insert_phi): Likewise for "tmp". |
| |
| * tree-ssa-pre.c (create_expression_by_pieces): Likewise for "newstmt". |
| (eliminate_insert): Likewise for "tem". |
| |
| * tree-ssa-propagate.c (update_gimple_call): Strengthen locals |
| "new_stmt" and "stmt" from gimple to gimple_call. |
| (update_call_from_tree): Likewise for "new_stmt". |
| |
| * tree-ssa-reassoc.c (build_and_add_sum): Likewise for "sum". |
| (update_ops): Likewise for "g". |
| (maybe_optimize_range_tests): Likewise. |
| (rewrite_expr_tree_parallel): Require a gimple_assign rather than |
| a plain gimple. |
| (reassociate_bb): Add a checked cast to gimple_assign. |
| |
| * tree-ssa.c (insert_debug_temp_for_var_def): Strengthen local |
| "def_temp" from gimple to gimple_debug. |
| |
| * tree-switch-conversion.c (emit_case_bit_tests): Strengthen local |
| "shift_stmt" from gimple to gimple_assign. |
| |
| * tree-tailcall.c (adjust_return_value_with_ops): Likewise for |
| "stmt". |
| (update_accumulator_with_ops): Likewise. |
| |
| * tree-vect-data-refs.c (bump_vector_ptr): Likewise for |
| "incr_stmt". |
| |
| * tree-vect-stmts.c (vectorizable_condition): Likewise for |
| "new_stmt". |
| |
| * tree-vrp.c (build_assert_expr_for): Likewise for "assertion". |
| (simplify_truth_ops_using_ranges): Likewise for "newop". |
| (simplify_float_conversion_using_ranges): Likewise for "conv". |
| |
| * ubsan.c (instrument_mem_ref): Strengthen local "g" from gimple |
| to gimple_call. |
| |
| * value-prof.c (gimple_divmod_fixed_value): Require a |
| gimple_assign rather than a plain gimple; strengthen types of locals. |
| (gimple_mod_pow2): Likewise. |
| (gimple_mod_subtract): Likewise. |
| (gimple_divmod_fixed_value_transform): Strengthen local |
| "stmt" from gimple to gimple_assign. |
| (gimple_mod_pow2_value_transform): Likewise. |
| (gimple_mod_subtract_transform): Likewise. |
| (gimple_ic): Strengthen types of locals. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_try |
| |
| * coretypes.h (gimple_try): New typedef. |
| (const_gimple_try): New typedef. |
| |
| * gimple-low.c (gimple_try_catch_may_fallthru): Require a |
| gimple_try rather than a plain gimple. |
| (gimple_stmt_may_fallthru): Add checked cast to gimple_try. |
| |
| * gimple-pretty-print.c (dump_gimple_try): Require a gimple_try |
| rather than a plain gimple. |
| (pp_gimple_stmt_1): Add checked cast to gimple_try within |
| GIMPLE_TRY case of switch statement. |
| |
| * tree-eh.c (finally_tree_node::parent): Strengthen field from |
| gimple to gimple_try. |
| (record_in_finally_tree): Require a gimple_try rather than a plain |
| gimple. |
| (collect_finally_tree): Likewise. |
| (collect_finally_tree_1): Likewise. |
| (struct leh_tf_state::try_finally_expr): Strengthen field from |
| gimple to gimple_try. |
| (struct leh_tf_state::top_p): Likewise. |
| (lower_eh_must_not_throw): Require a gimple_try rather than a |
| plain gimple. |
| (frob_into_branch_around): Likewise. |
| (lower_try_finally_dup_block): Strengthen local from gimple to |
| gimple_try. |
| (honor_protect_cleanup_actions): Split out uses of "x" into new |
| locals "eh_mnt" and "try_stmt" with stronger types. |
| (lower_try_finally): Require a gimple_try rather than a plain |
| gimple. |
| (lower_catch): Likewise. |
| (lower_eh_filter): Likewise. |
| (lower_eh_must_not_throw): Likewise. |
| (lower_cleanup): Likewise. |
| (lower_eh_constructs_2): Add checked cast to gimple_try within |
| GIMPLE_TRY case of switch statement, introducing new local |
| "try_stmt", using it for type-safety. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Use subclasses of gimple in various places |
| |
| * asan.c (insert_if_then_before_iter): Require a gimple cond |
| rathern than a plain gimple. |
| (asan_expand_check_ifn): Add a checked cast to gimple_cond. |
| |
| * cfgloopmanip.c (create_empty_if_region_on_edge): Likewise. |
| |
| * omp-low.c (simd_clone_adjust): Strengthen local from gimple |
| to gimple_phi. |
| |
| * sese.c (set_ifsese_condition): Strengthen local from gimple to |
| gimple_cond. |
| |
| * tree-call-cdce.c (gen_one_condition): Strengthen locals from |
| gimple to gimple_assign and gimple_cond. |
| |
| * tree-ssa-phiopt.c (minmax_replacement): Likewise. |
| (cond_store_replacement): Strengthen locals from gimple to |
| gimple_phi and gimple_assign. |
| (cond_if_else_store_replacement_1): Likewise. |
| |
| * tree-ssa-pre.c (do_regular_insertion): Strengthen local from |
| gimple to gimple_assign. |
| |
| * tree-switch-conversion.c (hoist_edge_and_branch_if_true): |
| Strengthen local from gimple to gimple_cond. |
| (gen_def_assigns): Return a gimple_assign rather than a plain |
| gimple. |
| (gen_inbound_check): Strengthen locals from gimple to gimple_cond |
| and gimple_assign. |
| |
| * tree-vect-loop-manip.c (slpeel_add_loop_guard): Strengthen local |
| from gimple to gimple_cond. |
| (set_prologue_iterations): Strengthen locals from gimple to |
| gimple_phi and gimple_cond. |
| |
| * value-prof.c (gimple_ic): Strengthen local from gimple to |
| gimple_phi. |
| (gimple_stringop_fixed_value): Strengthen locals from gimple to |
| gimple_assign, gimple_cond, gimple_call, and gimple_phi. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_eh_dispatch |
| |
| * coretypes.h (gimple_eh_dispatch): New typedef. |
| (const_gimple_eh_dispatch): New typedef. |
| |
| * gimple-pretty-print.c (dump_gimple_eh_dispatch): Require a |
| gimple_eh_dispatch rather than a plain gimple. |
| (pp_gimple_stmt_1): Add a checked cast to gimple_eh_dispatch |
| within GIMPLE_EH_DISPATCH case of switch statement. |
| |
| * gimple-streamer-in.c (input_gimple_stmt): Likewise. |
| |
| * gimple-streamer-out.c (output_gimple_stmt): Likewise. |
| |
| * gimple.c (gimple_build_eh_dispatch): Return a gimple_eh_dispatch |
| rather than a plain gimple. |
| |
| * gimple.h (gimple_build_eh_dispatch): Return a gimple_eh_dispatch |
| rather than a plain gimple. |
| (gimple_eh_dispatch_region): Require a const_gimple_eh_dispatch |
| rather than a plain const_gimple. |
| (gimple_eh_dispatch_set_region): Require a gimple_eh_dispatch |
| rather than a plain gimple. |
| |
| * tree-cfg.c (make_edges): Add a checked cast to gimple_eh_dispatch |
| within GIMPLE_EH_DISPATCH case of switch statement. |
| (gimple_verify_flow_info): Likewise. |
| (gimple_redirect_edge_and_branch): Likewise. |
| (move_stmt_r): Likewise, adding a local. |
| |
| * tree-eh.c (emit_eh_dispatch): Convert local from gimple to |
| gimple_eh_dispatch. |
| (make_eh_dispatch_edges): Require a gimple_eh_dispatch rather than |
| a plain gimple. |
| (redirect_eh_dispatch_edge): Likewise. |
| (lower_eh_dispatch): Likewise. |
| (execute_lower_eh_dispatch): Add a checked cast to |
| gimple_eh_dispatch. |
| (mark_reachable_handlers): Likewise. |
| (verify_eh_dispatch_edge): Require a gimple_eh_dispatch rather |
| than a plain gimple. |
| |
| * tree-eh.h (make_eh_dispatch_edges): Likewise. |
| (redirect_eh_dispatch_edge): Likewise. |
| (verify_eh_dispatch_edge): Likewise. |
| |
| * tree-inline.c (remap_gimple_stmt): Add a checked cast to |
| gimple_eh_dispatch within GIMPLE_EH_DISPATCH case of switch |
| statement, adding a local. |
| (copy_edges_for_bb): Add a checked cast to gimple_eh_dispatch. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_resx |
| |
| * coretypes.h (gimple_resx): New typedef. |
| (const_gimple_resx): New typedef. |
| |
| * gimple.h (gimple_build_resx): Return a gimple_resx rather than a |
| plain gimple. |
| (gimple_resx_region): Require a const_gimple_resx rather than a |
| plain const_gimple. |
| (gimple_resx_set_region): Require a gimple_resx rather than a |
| plain gimple. |
| |
| * gimple-pretty-print.c (dump_gimple_resx): Require a gimple_resx |
| rather than a plain gimple. |
| (pp_gimple_stmt_1): Add a checked cast to gimple_resx within |
| GIMPLE_RESX case of switch statement. |
| |
| * gimple-streamer-in.c (input_gimple_stmt): Likewise. |
| |
| * gimple-streamer-out.c (output_gimple_stmt): Likewise. |
| |
| * gimple.c (gimple_build_resx): Return a gimple_resx rather than |
| a plain gimple. |
| |
| * tree-cfg.c (move_stmt_r): Add a checked cast to gimple_resx |
| within GIMPLE_RESX case of switch statement, adding a new local. |
| |
| * tree-eh.c (emit_resx): Convert local "x" from gimple to |
| gimple_resx. |
| (lower_resx): Require a gimple_resx rather than a plain gimple. |
| (pass_lower_resx::execute): Add a checked cast to gimple_resx. |
| (mark_reachable_handlers): Likewise. |
| |
| * tree-inline.c (remap_gimple_stmt): Add a checked cast to |
| gimple_resx within GIMPLE_RESX case of switch statement, adding |
| a new local. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_eh_else |
| |
| * coretypes.h (gimple_eh_else): New typedef. |
| (const_gimple_eh_else): New typedef. |
| |
| * gimple.h (gimple_build_eh_else): Return a gimple_eh_else rather |
| than a plain gimple. |
| (gimple_eh_else_n_body_ptr): Require a gimple_eh_else rather than |
| a plain gimple. |
| (gimple_eh_else_n_body): Likewise. |
| (gimple_eh_else_e_body_ptr): Likewise. |
| (gimple_eh_else_e_body): Likewise. |
| (gimple_eh_else_set_n_body): Likewise. |
| (gimple_eh_else_set_e_body): Likewise. |
| |
| * gimple-low.c (lower_stmt): Add checked cast to gimple_eh_else |
| within GIMPLE_EH_ELSE case of switch statement, introducing a new |
| local. |
| (gimple_stmt_may_fallthru): Likewise. |
| |
| * gimple-pretty-print.c (dump_gimple_eh_else): Require a |
| gimple_eh_else rather than a plain gimple. |
| (pp_gimple_stmt_1): Add checked cast to gimple_eh_else within |
| GIMPLE_EH_ELSE case of switch statement |
| |
| * gimple-walk.c (walk_gimple_stmt): Add checked cast to |
| gimple_eh_else within GIMPLE_EH_ELSE case of switch statement, |
| introducing a new local. |
| |
| * gimple.c (gimple_build_eh_else): Return a gimple_eh_else |
| rather than a plain gimple. |
| (gimple_copy): Add checked casts to gimple_eh_else within |
| GIMPLE_EH_ELSE case of switch statement, introducing new locals. |
| |
| * tree-cfg.c (verify_gimple_in_seq_2): Add checked cast to |
| gimple_eh_else within GIMPLE_EH_ELSE case of switch statement, |
| introducing a new local. |
| |
| * tree-eh.c (collect_finally_tree): Likewise. |
| (replace_goto_queue_1): Likewise. |
| (get_eh_else): Return a gimple_eh_else rather than a plain gimple. |
| (honor_protect_cleanup_actions): Convert local "eh_else" from |
| gimple to gimple_eh_else. |
| (lower_try_finally_nofallthru): Likewise. |
| (lower_try_finally_onedest): Introduce locals "eh_else" and |
| "label_stmt", using them in favor of "x" for the gimple_eh_else |
| and the gimple_label. |
| (lower_try_finally_copy): Convert local "eh_else" from gimple to |
| gimple_eh_else. |
| (lower_try_finally_switch): Likewise. |
| (decide_copy_try_finally): Likewise. |
| (refactor_eh_r): Add checked cast to gimple_eh_else within |
| GIMPLE_EH_ELSE case of switch statement, introducing a new local. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_eh_must_not_throw |
| |
| * coretypes.h (gimple_eh_must_not_throw): New typedef. |
| (const_gimple_eh_must_not_throw): New typedef. |
| |
| * gimple-pretty-print.c (dump_gimple_eh_must_not_throw): Require |
| a gimple_eh_must_not_throw rather than a plain gimple. |
| (pp_gimple_stmt_1): Add a checked cast to gimple_eh_must_not_throw |
| within GIMPLE_EH_MUST_NOT_THROW case of switch statement. |
| |
| * gimple-streamer-in.c (input_gimple_stmt): Likewise. |
| |
| * gimple-streamer-out.c (output_gimple_stmt): Likewise. |
| |
| * gimple.c (gimple_build_eh_must_not_throw): Return a |
| gimple_eh_must_not_throw rather than a plain gimple. |
| |
| * gimple.h (gimple_build_eh_must_not_throw): Return a |
| gimple_eh_must_not_throw rather than a plain gimple. |
| (gimple_eh_must_not_throw_fndecl): Require a |
| gimple_eh_must_not_throw rather than a plain gimple. |
| (gimple_eh_must_not_throw_set_fndecl): Likewise. |
| |
| * tree-eh.c (lower_eh_must_not_throw): Add checked cast. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_eh_filter |
| |
| * coretypes.h (gimple_eh_filter): New typedef. |
| (const_gimple_eh_filter): New typedef. |
| |
| * gimple.h (gimple_build_eh_filter): Return a gimple_eh_filter |
| rather than a plain gimple. |
| |
| * gimple-pretty-print.c (dump_gimple_eh_filter): Require a |
| gimple_eh_filter rather than a plain gimple. |
| (pp_gimple_stmt_1): Add checked cast to gimple_eh_filter within |
| GIMPLE_EH_FILTER case of switch statement. |
| |
| * gimple.c (gimple_build_eh_filter): Return a gimple_eh_filter |
| rather than a plain gimple. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_catch |
| |
| * coretypes.h (gimple_catch): New typedef. |
| (const_gimple_catch): New typedef. |
| |
| * gimple-low.c (lower_try_catch): Add checked cast to gimple_catch. |
| (gimple_try_catch_may_fallthru): Likewise. |
| |
| * gimple-pretty-print.c (dump_gimple_catch): Require a gimple_catch |
| rather than a plain gimple. |
| (pp_gimple_stmt_1): Add checked cast to gimple_catch within |
| GIMPLE_CATCH case of switch statement. |
| |
| * gimple-walk.c (walk_gimple_op): Likewise. |
| (walk_gimple_stmt): Likewise. |
| |
| * gimple.c (gimple_build_catch): Return a gimple_catch rather than |
| a plain gimple. |
| (gimple_copy): Add checked casts to gimple_catch within |
| GIMPLE_CATCH case of switch statement, introducing new locals. |
| |
| * gimple.h (gimple_build_catch): Return a gimple_catch rather than |
| a plain gimple. |
| (gimple_catch_types_ptr): Require a gimple_catch rather than a |
| plain gimple. |
| (gimple_catch_handler_ptr): Likewise. |
| (gimple_catch_handler): Likewise. |
| (gimple_catch_set_types): Likewise. |
| (gimple_catch_set_handler): Likewise. |
| |
| * omp-low.c (lower_omp_1): Add checked cast to gimple_catch within |
| GIMPLE_CATCH case of switch statement. |
| |
| * tree-cfg.c (verify_gimple_in_seq_2): Likewise. |
| (do_warn_unused_result): Likewise. |
| |
| * tree-eh.c (collect_finally_tree): Likewise. |
| (replace_goto_queue_1): Likewise. |
| (lower_catch): Convert local from gimple to gimple_catch. |
| (refactor_eh_r): Add checked cast to gimple_catch within |
| GIMPLE_CATCH case of switch statement. |
| |
| * tree-inline.c (remap_gimple_stmt): Likewise. |
| (estimate_num_insns): Add checked cast to gimple_catch within |
| GIMPLE_CATCH case of switch statement, introducing new local. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_transaction |
| |
| * coretypes.h (gimple_transaction): New typedef. |
| (const_gimple_transaction): New typedef. |
| |
| * gimple.h (gimple_build_transaction): Return a gimple_transaction |
| rather than a plain gimple. |
| (gimple_transaction_body_ptr): Require a gimple_transaction rather |
| than a plain gimple. |
| (gimple_transaction_body): Likewise. |
| (gimple_transaction_label_ptr): Likewise. |
| (gimple_transaction_set_body): Likewise. |
| (gimple_transaction_set_label): Likewise. |
| (gimple_transaction_set_subcode): Likewise. |
| (gimple_transaction_label): Require a const_gimple_transaction |
| rather than a plain const_gimple. |
| (gimple_transaction_subcode): Likewise. |
| |
| * gimple-low.c (lower_stmt): Add checked cast to |
| gimple_transaction within GIMPLE_TRANSACTION case of switch |
| statement. |
| |
| * gimple-pretty-print.c (dump_gimple_transaction): Require a |
| gimple_transaction rather than a plain gimple. |
| (pp_gimple_stmt_1): Add checked cast to gimple_transaction within |
| GIMPLE_TRANSACTION case of switch statement. |
| * gimple-streamer-in.c (input_gimple_stmt): Likewise. |
| * gimple-streamer-out.c (output_gimple_stmt): Likewise. |
| * gimple-walk.c (walk_gimple_op): Likewise. |
| (walk_gimple_stmt): Likewise. |
| |
| * gimple.c (gimple_build_transaction): Return a gimple_transaction |
| rather than a plain gimple. |
| (gimple_copy): Add checked casts to gimple_transaction within |
| GIMPLE_TRANSACTION case of switch statement. |
| |
| * gimplify.c (gimplify_transaction): Split local "g" into |
| "body_stmt" and "trans_stmt", strengthening the type of the latter |
| from gimple to gimple_transaction. |
| |
| * omp-low.c (lower_omp_1): Add checked cast to gimple_transaction |
| within GIMPLE_TRANSACTION case of switch statement. |
| |
| * trans-mem.c (diagnose_tm_1): Add checked cast within |
| GIMPLE_TRANSACTION case of switch statement, introducing a new |
| local "trans_stmt". Use it in place of "stmt". |
| (examine_call_tm): Convert local from gimple to gimple_transaction. |
| (tm_region::get_transaction_stmt): New method. |
| (tm_region::transaction_stmt): Add clarification of type to the |
| comment. |
| (tm_region_init_0): Require a gimple_transaction rather than a |
| plain gimple. |
| (tm_region_init): Convert a check against GIMPLE_TRANSACTION to a |
| dyn_cast<gimple_transaction> and new local. |
| (transaction_subcode_ior): Add a new local, using the new |
| get_transaction_stmt method to perform a checked cast. |
| (propagate_tm_flags_out): Likewise. |
| (expand_transaction): Add a checked cast using the new |
| get_transaction_stmt method. |
| (generate_tm_state): Likewise. |
| (execute_tm_mark): Likewise. |
| (ipa_tm_diagnose_transaction): Likewise. |
| |
| * tree-cfg.c (verify_gimple_transaction): Require a |
| gimple_transaction rather than a plain gimple. |
| (make_edges): Add checked cast within GIMPLE_TRANSACTION case of |
| switch statement |
| (cleanup_dead_labels): Likewise. |
| (verify_gimple_stmt): Likewise. |
| (verify_gimple_in_seq_2): Likewise. |
| (verify_gimple_in_seq_2): Likewise. |
| (gimple_redirect_edge_and_branch): Add checked cast. |
| |
| * tree-inline.c (remap_gimple_stmt): Add checked cast within |
| GIMPLE_TRANSACTION case of switch statement, introducing a new |
| local "old_trans_stmt". Use it in place of "stmt". Add new |
| local "new_trans_stmt", using it to initialize "copy", and for |
| type-safe operations as a transaction. |
| (estimate_num_insns): Add checked cast within GIMPLE_TRANSACTION |
| case of switch statement. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_asm |
| |
| * coretypes.h (gimple_asm): New typedef. |
| (const_gimple_asm): New typedef. |
| |
| * gimple.h (gimple_build_asm_vec): Return a gimple_asm rather than |
| just a gimple. |
| (gimple_asm_clobbers_memory_p): Require a const_gimple_asm rather |
| than just a const_gimple. |
| (gimple_asm_ninputs): Likewise. |
| (gimple_asm_noutputs): Likewise. |
| (gimple_asm_nclobbers): Likewise. |
| (gimple_asm_nlabels): Likewise. |
| (gimple_asm_input_op): Likewise. |
| (gimple_asm_input_op_ptr): Likewise. |
| (gimple_asm_output_op): Likewise. |
| (gimple_asm_output_op_ptr): Likewise. |
| (gimple_asm_clobber_op): Likewise. |
| (gimple_asm_label_op): Likewise. |
| (gimple_asm_string): Likewise. |
| (gimple_asm_volatile_p): Likewise. |
| (gimple_asm_input_p): Likewise. |
| (gimple_asm_set_input_op): Require a gimple_asm rather than a plain |
| gimple. |
| (gimple_asm_set_output_op): Likewise. |
| (gimple_asm_set_clobber_op): Likewise. |
| (gimple_asm_set_label_op): Likewise. |
| (gimple_asm_set_volatile): Likewise. |
| (gimple_asm_set_input): Likewise. |
| |
| * cfgexpand.c (expand_asm_stmt): Require a gimple_asm rather than |
| a plain gimple. |
| (expand_gimple_stmt_1): Add checked cast to gimple_asm within |
| GIMPLE_ASM case of switch statement. |
| |
| * gimple-fold.c (fold_stmt_1): Add new local from checked cast to |
| gimple_asm within case GIMPLE_ASM. |
| |
| * gimple-pretty-print.c (dump_gimple_asm): Require a gimple_asm |
| rather than a plain gimple. |
| (pp_gimple_stmt_1): Add checked cast to gimple_asm within |
| GIMPLE_ASM case of switch statement. |
| |
| * gimple-streamer-in.c (input_gimple_stmt): Rework existing |
| checked cast to gimple_asm; add a new one. |
| |
| * gimple-streamer-out.c (output_gimple_stmt): Add new local from |
| checked cast to gimple_asm within case GIMPLE_ASM. |
| |
| * gimple-walk.c (walk_gimple_asm): Require a gimple_asm rather |
| than a plain gimple. |
| (walk_gimple_op): Add checked cast to gimple_asm within GIMPLE_ASM |
| case of switch statement. |
| (walk_stmt_load_store_addr_ops): Use dyn_cast<gimple_asm> in place |
| of a code check against GIMPLE_ASM to introduce a new gimple_asm |
| local. |
| |
| * gimple.c (gimple_build_asm_1): Return a gimple_asm rather than |
| a plain gimple. |
| (gimple_build_asm_vec): Likewise. |
| (gimple_has_side_effects): Add a checked cast to gimple_asm. |
| (gimple_could_trap_p_1): Likewise. |
| (gimple_call_builtin_p): Require a const_gimple_asm rather then |
| a const_gimple. |
| |
| * gimplify-me.c (gimple_regimplify_operands): Add a checked cast |
| and a new local of type gimple_asm within GIMPLE_ASM case. |
| |
| * gimplify.c (gimplify_asm_expr): Convert a local from gimple to |
| gimple_asm. |
| |
| * ipa-pure-const.c (check_stmt): Add checked casts within |
| GIMPLE_ASM case. |
| |
| * ssa-iterators.h (op_iter_init): Likewise. |
| |
| * tree-cfg.c (make_goto_expr_edges): Convert a local from gimple |
| to gimple_asm. |
| (cleanup_dead_labels): Add a checked cast and a new local of type |
| gimple_asm within GIMPLE_ASM case. |
| (gimple_redirect_edge_and_branch): Likewise. |
| (is_ctrl_altering_stmt): Add a checked cast. |
| (need_fake_edge_p): Replace a code check against GIMPLE_ASM with a |
| dyn_cast<gimple_asm>. |
| |
| * tree-complex.c (expand_complex_comparison): Convert a local from |
| gimple to gimple_asm. |
| |
| * tree-data-ref.c (get_references_in_stmt): Add a checked cast to |
| gimple_asm. |
| |
| * tree-eh.c (stmt_could_throw_p): Likewise. |
| |
| * tree-inline.c (estimate_num_insns): Likewise. |
| |
| * tree-sra.c (scan_function): Add a checked cast and a new local |
| of type gimple_asm within GIMPLE_ASM case. |
| (sra_modify_function_body): Likewise. |
| (ipa_sra_modify_function_body): Likewise. |
| |
| * tree-ssa-coalesce.c (create_outofssa_var_map): Likewise. |
| |
| * tree-ssa-dce.c (propagate_necessity): Replace a code check |
| against GIMPLE_ASM with a dyn_cast<gimple_asm>. |
| |
| * tree-ssa-operands.c (maybe_add_call_vops): Require a gimple_asm |
| rather than a plain gimple. |
| (parse_ssa_operands): Add a checked cast to gimple_asm. |
| |
| * tree-ssa-structalias.c (find_func_aliases): Replace a check for |
| GIMPLE_ASM with a dyn_cast<gimple_asm>, introducing a new local |
| "asm_stmt", using it in place of "t" for typesafety. |
| |
| * tree-ssa-threadedge.c |
| (record_temporary_equivalences_from_stmts_at_dest): Add a checked |
| cast to gimple_asm. |
| |
| * tree-ssa.c (execute_update_addresses_taken): Add checked casts |
| and new locals of type gimple_asm within clauses guarded by code |
| check. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_goto |
| |
| * coretypes.h (gimple_goto): New typedef. |
| (const_gimple_goto): New typedef. |
| |
| * gimple.h (gimple_statement_goto): New subclass of |
| gimple_statement_with_ops, adding the invariant that |
| stmt->code == GIMPLE_GOTO. |
| (is_a_helper <gimple_statement_goto>::test): New. |
| (gimple_build_goto): Return a gimple_goto rather than a |
| plain gimple. |
| |
| * gimple-pretty-print.c (dump_gimple_goto): Require a gimple_goto |
| rather than a plain gimple. |
| (pp_gimple_stmt_1): Add a checked cast to gimple_goto within |
| GIMPLE_GOTO case of switch statement. |
| |
| * gimple.c (gimple_build_goto): Return a gimple_goto rather than a |
| plain gimple. |
| |
| * tree-cfg.c (verify_gimple_goto): Require a gimple_goto rather |
| than a plain gimple. |
| (verify_gimple_stmt): Add a checked cast to gimple_goto within |
| GIMPLE_GOTO case of switch statement. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_return |
| |
| * coretypes.h (gimple_return): New typedef. |
| (const_gimple_return): New typedef. |
| |
| * gimple.h (gimple_statement_return): New subclass of |
| gimple_statement_with_memory_ops, adding the invariant that |
| stmt->code == GIMPLE_RETURN. |
| (is_a_helper <gimple_statement_return>::test): New. |
| (gimple_build_return): Return a gimple_return rather |
| than a plain gimple. |
| |
| * gimple.c (gimple_build_return): Return a gimple_return rather |
| than a plain gimple. |
| |
| * cgraphunit.c (expand_thunk): Convert local from a gimple to |
| a gimple_return. |
| |
| * gimple-low.c (struct return_statements_t): Convert field "stmt" |
| from a gimple to a gimple_return. |
| (lower_gimple_return): Convert local from a gimple to a |
| gimple_return. |
| |
| * gimple-pretty-print.c (dump_gimple_return): Require a |
| gimple_return rather than a plain gimple. |
| (pp_gimple_stmt_1): Add a checked cast to gimple_return within |
| case GIMPLE_RETURN of switch statement. |
| |
| * gimplify.c (gimplify_return_expr): Convert locals from |
| gimple to gimple_return. |
| |
| * ipa-split.c (split_function): Likewise. |
| |
| * tree-cfg.c (verify_gimple_assign): Require a gimple_return |
| rather than a plain gimple. |
| (verify_gimple_stmt): Add checked cast to gimple_return within |
| case GIMPLE_RETURN of switch statement. |
| |
| * tree-tailcall.c (adjust_return_value): Convert local from |
| gimple to gimple_return. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_call |
| |
| * coretypes.h (gimple_call): New typedef. |
| (const_gimple_call): New typedef. |
| |
| * asan.c (get_mem_refs_of_builtin_call): Require a |
| const_gimple_call rather than a const gimple. |
| (has_stmt_been_instrumented_p): Add a checked cast to |
| gimple_call. |
| (instrument_strlen_call): Likewise. |
| (instrument_builtin_call): Likewise. |
| * builtins.c (validate_gimple_arglist): Require a |
| const_gimple_call rather than a const gimple. |
| (fold_call_stmt): Require a gimple_call rather than a gimple. |
| * builtins.h (validate_gimple_arglist): Require a |
| const_gimple_call rather than a const gimple. |
| (fold_call_stmt): Require a gimple_call rather than a gimple. |
| * cfgexpand.c (expand_call_stmt): Likewise. |
| (expand_gimple_stmt_1): Add a checked cast to gimple_call within |
| GIMPLE_CALL case. |
| * cgraph.c (cgraph_edge::redirect_call_stmt_to_callee): Strengthen |
| local "new_stmt" from gimple to gimple_call, adding a checked |
| cast. |
| * cgraphunit.c (cgraph_node::expand_thunk): Likewise for local |
| "call". |
| * gimple-fold.c (gimple_fold_builtin_snprintf_chk): Likewise for |
| local "stmt". |
| (gimple_fold_builtin_snprintf): Likewise. |
| (gimple_fold_builtin): Likewise. |
| (gimple_fold_call): Likewise. |
| (gimple_fold_stmt_to_constant_1): Introduce local "call_stmt" via |
| checked cast of "stmt" to gimple_call, using it in various places |
| for typesafety. |
| * gimple-pretty-print.c (dump_gimple_call_args): Strengthen param |
| 2 from gimple to gimple_call. |
| (dump_gimple_call): Likewise. |
| (pp_gimple_stmt_1): Add a checked cast to gimple_call within |
| GIMPLE_CALL case. |
| * gimple-streamer-in.c (input_gimple_stmt): Replace is_gimple_call |
| with a dyn_cast<gimple_call>, introducing local "call_stmt", and |
| using it in place of "stmt" for typesafety. Add a checked cast |
| in statement guarded by check for GIMPLE_CALL. |
| * gimple-walk.c (walk_gimple_op): Add a checked cast to |
| gimple_call. |
| * gimple.c (gimple_call_reset_alias_info): Strengthen param from |
| gimple to gimple_call. |
| (gimple_build_call_1): Strengthen return type and local from |
| gimple to gimple_call. |
| (gimple_build_call_vec): Likewise. |
| (gimple_build_call): Likewise. |
| (gimple_build_call_valist): Likewise. |
| (gimple_build_call_internal_1): Likewise. |
| (gimple_build_call_internal): Likewise. |
| (gimple_build_call_internal_vec): Likewise. |
| (gimple_build_call_from_tree): Likewise. |
| (gimple_call_return_flags): Strengthen param from |
| const_gimple to const_gimple_call. |
| (gimple_call_copy_skip_args): Strengthen return type and local from |
| gimple to gimple_call. |
| * gimple.h (gimple_call_reset_alias_info): Strengthen param from |
| gimple to gimple_call. |
| (gimple_build_call_vec): Strengthen return type from gimple to |
| gimple_call. |
| (gimple_build_call): Likewise. |
| (gimple_build_call_valist): Likewise. |
| (gimple_build_call_internal): Likewise. |
| (gimple_build_call_internal_vec): Likewise. |
| (gimple_build_call_from_tree): Likewise. |
| (gimple_call_return_flags): Strengthen param from const_gimple to |
| const_gimple_call. |
| (gimple_call_copy_skip_args): Strengthen return type from gimple |
| to gimple_call. |
| (gimple_call_set_internal_fn): Strengthen param "call_stmt" from |
| gimple to gimple_call. |
| (gimple_call_return_type): Strengthen param from const_gimple to |
| const_gimple_call. |
| (gimple_call_chain_ptr): Likewise. |
| (gimple_call_set_chain): Strengthen param from gimple to |
| gimple_call. |
| (gimple_call_set_return_slot_opt): Likewise. |
| (gimple_call_set_from_thunk): Likewise. |
| (gimple_call_from_thunk_p): Likewise. |
| (gimple_call_set_va_arg_pack): Likewise. |
| (gimple_call_va_arg_pack_p): Likewise. |
| (gimple_call_set_alloca_for_var): Likewise. |
| (gimple_call_alloca_for_var_p): Likewise. |
| (gimple_expr_type): Introduce local "call_stmt" via a checked cast |
| and use it for typesafety. |
| * gimplify.c (gimplify_call_expr): Strengthen local "call" from |
| gimple to gimple_call. |
| (gimplify_modify_expr_to_memcpy): Likewise for local "gs". |
| (gimplify_modify_expr_to_memset): Likewise. |
| (gimplify_modify_expr): Add a checked cast to gimple_call. |
| (gimplify_expr): Strengthen local "call" from gimple to |
| gimple_call. |
| (gimplify_function_tree): Likewise. |
| * internal-fn.c (expand_LOAD_LANES): Strengthen param from gimple |
| to gimple_call. |
| (expand_STORE_LANES): Likewise. |
| (expand_ANNOTATE): Likewise. |
| (expand_GOMP_SIMD_LANE): Likewise. |
| (expand_GOMP_SIMD_VF): Likewise. |
| (expand_GOMP_SIMD_LAST_LANE): Likewise. |
| (expand_UBSAN_NULL): Likewise. |
| (expand_UBSAN_BOUNDS): Likewise. |
| (expand_UBSAN_OBJECT_SIZE): Likewise. |
| (expand_ASAN_CHECK): Likewise. |
| (ubsan_expand_si_overflow_addsub_check): Likewise. |
| (ubsan_expand_si_overflow_neg_check): Likewise. |
| (ubsan_expand_si_overflow_mul_check): Likewise. |
| (expand_UBSAN_CHECK_ADD): Likewise. |
| (expand_UBSAN_CHECK_SUB): Likewise. |
| (expand_UBSAN_CHECK_MUL): Likewise. |
| (expand_LOOP_VECTORIZED): Likewise. |
| (expand_MASK_LOAD): Likewise. |
| (expand_MASK_STORE): Likewise. |
| (expand_ABNORMAL_DISPATCHER): Likewise. |
| (expand_BUILTIN_EXPECT): Likewise. |
| (internal_fn_expanders): Likewise for entries in this table. |
| (expand_internal_call): Likewise. |
| * internal-fn.def: Update comment to reflect strengthening of |
| param of expanders. |
| * internal-fn.h (expand_internal_call): Strengthen param from |
| gimple to gimple_call. |
| * ipa-prop.c (ipa_modify_call_arguments): Likewise for local |
| "new_stmt". |
| * ipa-pure-const.c (check_call): Likewise for param "call". |
| (check_stmt): Add a checked cast to gimple_call within GIMPLE_CALL |
| case. |
| * ipa-split.c (split_function): Strengthen local "call" from |
| gimple to gimple_call. |
| * omp-low.c (build_omp_barrier): Likewise for local "g". |
| (lower_rec_input_clauses): Likewise for local "stmt". |
| * trans-mem.c (build_tm_load): Likewise for return type and local |
| "gcall". |
| (build_tm_store): Likewise. |
| (expand_transaction): Likewise for local "call". |
| * tree-call-cdce.c (check_pow): Likewise for param. |
| (check_builtin_call): Likewise. |
| (is_call_dce_candidate): Likewise. |
| (gen_conditions_for_pow): Likewise. |
| (gen_shrink_wrap_conditions): Likewise. |
| (shrink_wrap_one_built_in_call): Likewise. |
| (shrink_wrap_conditional_dead_built_in_calls): Strengthen param |
| from vec<gimple> to vec<gimple_call>, and local "bi_call" from |
| gimple to gimple_call. |
| (pass_call_cdce::execute): Strengthen local |
| "cond_dead_built_in_calls" from auto_vec<gimple> to |
| auto_vec<gimple_call> and local "stmt" from gimple to gimple_call, |
| * tree-cfg.c (notice_special_calls): Strengthen param from gimple |
| to gimple_call. |
| * tree-cfg.h (notice_special_calls): Likewise. |
| * tree-complex.c (expand_complex_libcall): Likewise for local |
| "stmt". |
| * tree-inline.c (remap_gimple_stmt): Add checked cast to |
| gimple_call. |
| (copy_bb): Likewise. Strengthen local "new_call" from gimple to |
| gimple_call. |
| (inline_forbidden_p_stmt): Add checked cast to gimple_call. |
| * tree-nested.c (init_tmp_var_with_call): Strengthen param "call" |
| from gimple to gimple_call. |
| (convert_nl_goto_reference): Likewise for local "call". |
| (convert_tramp_reference_op): Likewise. |
| (convert_gimple_call): Add checked cast to gimple_call. |
| * tree-nrv.c (dest_safe_for_nrv_p): Strengthen param "call" from |
| gimple to gimple_call. |
| (pass_return_slot::execute): Likewise for local "stmt", using a |
| dyn_cast<gimple_call> rather than an is_gimple_call call. |
| * tree-object-size.c (alloc_object_size): Strengthen param "call" |
| from const_gimple to const_gimple_call. |
| (pass_through_call): Likewise. |
| (call_object_size): Strengthen param "call" from gimple to |
| gimple_call. |
| (collect_object_sizes_for): Introduce local "call_stmt" via a |
| checked cast, using it for typesafety. |
| (check_for_plus_in_loops_1): Likewise. |
| (pass_object_sizes::execute): Add a checked cast to gimple_call. |
| * tree-profile.c (gimple_gen_interval_profiler): Strengthen local |
| "call" from gimple to gimple_call. |
| (gimple_gen_pow2_profiler): Likewise. |
| (gimple_gen_one_value_profiler): Likewise. |
| (gimple_gen_time_profiler): Likewise. |
| (gimple_gen_average_profiler): Likewise. |
| (gimple_gen_ior_profiler): Likewise. |
| * tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Likewise for |
| param "call". |
| (ref_maybe_used_by_call_p): Likewise. |
| (ref_maybe_used_by_stmt_p): Add a checked cast to gimple_call. |
| (call_may_clobber_ref_p_1): Strengthen param "call" from gimple to |
| gimple_call. |
| (call_may_clobber_ref_p): Likewise. |
| (stmt_may_clobber_ref_p_1): Add a checked cast to gimple_call. |
| * tree-ssa-alias.h (call_may_clobber_ref_p): Strengthen param 1 |
| from gimple to gimple_call. |
| (call_may_clobber_ref_p_1): Likewise. |
| * tree-ssa-dce.c (eliminate_unnecessary_stmts): Add a checked cast |
| to gimple_call. |
| * tree-ssa-loop-prefetch.c (emit_mfence_after_loop): Strengthen |
| local "call" from gimple to gimple_call. |
| * tree-ssa-math-opts.c (build_and_insert_call): Likewise for local |
| "call_stmt". |
| * tree-ssa-operands.c (maybe_add_call_vops): Likewise for param |
| "stmt". |
| (parse_ssa_operands): Add a checked cast to gimple_call within |
| GIMPLE_CALL case. |
| * tree-ssa-pre.c (compute_avail): Add a checked cast to |
| gimple_call. |
| * tree-ssa-sccvn.c (copy_reference_ops_from_call): Strengthen |
| param "call" from gimple to gimple_call. |
| (valueize_shared_reference_ops_from_call): Likewise. |
| (vn_reference_lookup_3): Add a checked cast to gimple_call. |
| (vn_reference_lookup_call): Strengthen param "call" from gimple to |
| gimple_call. |
| (visit_reference_op_call): Likewise for param "stmt". |
| (visit_use): Replace is_gimple_call with a dyn_cast, introducing |
| local "call_stmt", using it in place of "stmt" for type-safety. |
| * tree-ssa-sccvn.h (vn_reference_lookup_call): Strengthen param 1 |
| from gimple to gimple_call. |
| * tree-ssa-structalias.c (get_call_vi): Likewise. |
| (lookup_call_use_vi): Likewise. |
| (lookup_call_clobber_vi): Likewise. |
| (get_call_use_vi): Likewise. |
| (get_call_clobber_vi): Likewise. |
| (handle_rhs_call): Likewise. |
| (handle_lhs_call): Likewise. |
| (handle_const_call): Likewise. |
| (handle_pure_call): Likewise. |
| (get_fi_for_callee): Likewise. |
| (find_func_aliases_for_builtin_call): Likewise for param 2. |
| (find_func_aliases_for_call): Likewise. |
| (find_func_aliases): Add a checked cast to gimple_call. |
| (find_func_clobbers): Replace is_gimple_call with a dyn_cast, |
| introducing local "call_stmt", using it in place of "stmt" for |
| type-safety. |
| (compute_points_to_sets): Strengthen local "stmt" from gimple to |
| gimple_call, replacing is_gimple_call with a |
| dyn_cast <gimple_call>. |
| (ipa_pta_execute): Likewise. |
| * tree-ssa-threadedge.c |
| (record_temporary_equivalences_from_stmts_at_dest): Add checked |
| cast to gimple_call. |
| * tree-tailcall.c (find_tail_calls): Strengthen local "call" from |
| gimple to gimple_call, adding a checked cast. |
| * tree-vect-data-refs.c (vect_setup_realignment): Eliminate |
| top-level local "new_stmt" in favor of more tightly-scoped locals |
| "new_stmt" of type gimple_assign and gimple_call. |
| * tree-vect-patterns.c (vect_recog_pow_pattern): Strenghthen local |
| "stmt" from gimple to gimple_call. |
| * tree-vect-stmts.c (vectorizable_function): Likewise for param |
| "call". |
| (vectorizable_call): Rename param 1 from "stmt" to "gs", |
| reintroducing "stmt" as a gimple_call once we've established that |
| we're working with a GIMPLE_CALL. |
| * tree-vectorizer.h (vectorizable_function): Strengthen param 1 |
| from gimple to gimple_call. |
| * value-prof.c (check_ic_target): Likewise. |
| (gimple_ic_transform): Likewise for local "stmt", replacing a |
| check for GIMPLE_CALL with a dyn_cast. |
| (interesting_stringop_to_profile_p): Strengthen param "call" |
| from gimple to gimple_call. |
| (gimple_stringop_fixed_value): Likewise for param "vcall_stmt". |
| (gimple_stringops_transform): Likewise for local "stmt", |
| replacing a check for GIMPLE_CALL with a dyn_cast. |
| (gimple_stringops_values_to_profile): Rename param 1 from "stmt" |
| to "gs", reintroducing "stmt" as a gimple_call once we've |
| established that we're working with a GIMPLE_CALL. |
| * vtable-verify.c (verify_bb_vtables): Strengthen local |
| "call_stmt" from gimple to gimple_call. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Concretize get_loop_exit_condition et al to working on gimple_cond |
| |
| * tree-scalar-evolution.h (get_loop_exit_condition): Return a |
| gimple_cond. |
| * tree-scalar-evolution.c (get_loop_exit_condition): Likewise, also |
| concretizing local "res" from gimple to gimple_cond. |
| * tree-vect-loop-manip.c (slpeel_make_loop_iterate_ntimes): Convert |
| locals from gimple to gimple_cond. |
| (slpeel_can_duplicate_loop_p): Likewise. |
| * tree-vect-loop.c (vect_get_loop_niters): Return a gimple_cond. |
| (vect_analyze_loop_form): Convert local from gimple to gimple_cond. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Update various expressions within tree-scalar-evolution.c to be gimple_phi |
| |
| * tree-scalar-evolution.c (follow_ssa_edge): Require a gimple_phi, |
| rather than a gimple. |
| (follow_ssa_edge_binary): Likewise. |
| (follow_ssa_edge_expr): Likewise. |
| (follow_ssa_edge_in_rhs): Likewise. |
| (backedge_phi_arg_p): Likewise. |
| (follow_ssa_edge_in_condition_phi_branch): Likewise. |
| (follow_ssa_edge_in_condition_phi): Likewise. |
| (follow_ssa_edge_inner_loop_phi): Likewise. |
| (analyze_evolution_in_loop): Likewise. |
| (analyze_initial_condition): Likewise. |
| (interpret_loop_phi): Likewise. |
| (interpret_condition_phi): Likewise. |
| (follow_ssa_edge): Likewise; also, add checked casts to gimple_phi. |
| |
| (analyze_scalar_evolution_1): Add checked casts to gimple_phi |
| within "case GIMPLE_PHI". |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| tree-ssa-loop-ivopts.c: use gimple_phi in a few places |
| |
| * tree-ssa-loop-ivopts.c (determine_biv_step): Require a gimple_phi. |
| (find_bivs): Convert local "phi" into a gimple_phi. |
| (mark_bivs): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| tree-ssa-loop-manip.c: use gimple_phi in three places |
| |
| * tree-ssa-loop-manip.c (add_exit_phi): Convert local "phi" to be a |
| gimple_phi. |
| (split_loop_exit_edge): Likewise for "phi" and "new_phi". |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| tree-ssa-loop-niter.c: use gimple_phi in a few places |
| |
| * tree-ssa-loop-niter.c (chain_of_csts_start): Return a gimple_phi |
| rather than a gimple. |
| (get_base_for): Likewise; convert local "phi" to be a gimple_phi. |
| (loop_niter_by_eval): Convert local "phi" to be a gimple_phi. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| tree-ssa-phiprop.c: use gimple_phi |
| |
| * tree-ssa-phiprop.c (phiprop_insert_phi): Strengthen types of |
| parameter "phi" and local "new_phi" from gimple to gimple_phi. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| tree-predcom.c: use gimple_phi in various places |
| |
| * tree-predcom.c (find_looparound_phi): Return a gimple_phi rather |
| than just a gimple. |
| (insert_looparound_copy): Require a gimple_phi rather than just a |
| gimple. |
| (add_looparound_copies): Convert local "phi" to be a gimple_phi. |
| (initialize_root_vars): Likewise. |
| (initialize_root_vars_lm): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| tree-parloops.c: use gimple_phi in various places |
| |
| * tree-parloops.c (struct reduction_info): Strengthen field "new_phi" |
| from gimple to gimple_phi. |
| (create_phi_for_local_result): Convert local "new_phi" to gimple_phi. |
| (loop_has_vector_phi_nodes): Require a gimple_phi rather than a gimple. |
| (gather_scalar_reductions): Convert to a gimple_phi_iterator and |
| gimple_phi. |
| (try_create_reduction_list): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Update ssa_prop_visit_phi_fn callbacks to take a gimple_phi |
| |
| * tree-ssa-propagate.h (typedef ssa_prop_visit_phi_fn): Strengthen |
| type of parameter from gimple to gimple_phi. |
| |
| * tree-complex.c (complex_visit_phi): Update signature of callback |
| implementation accordingly. |
| * tree-ssa-ccp.c (ccp_visit_phi_node): Likewise. |
| * tree-ssa-copy.c (copy_prop_visit_phi_node): Likewise. |
| * tree-vrp.c (vrp_visit_phi_node): Likewise. |
| |
| * tree-ssa-propagate.c (simulate_stmt): Add a checked cast to |
| gimple_phi when invoking the ssa_prop_visit_phi callback. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_phi_iterator |
| |
| * gimple-iterator.h (struct gimple_phi_iterator): New subclass of |
| gimple_stmt_iterator with identical layout, but adding... |
| (gimple_phi_iterator::phi): ...new method, equivalent to |
| gsi_stmt (), but casting the underlying gimple to gimple_phi, |
| checking that code == GIMPLE_PHI in a checked build. |
| (gsi_start_phis): Return a gimple_phi_iterator, rather than just a |
| gimple_stmt_iterator. |
| |
| * tree-if-conv.c (bb_with_exit_edge_p): Require a gimple_phi rather |
| than just a gimple. |
| (if_convertible_phi_p): Likewise. |
| * tree-phinodes.h (add_phi_node_to_bb): Likewise. |
| * tree-ssa-phiprop.c (propagate_with_phi): Likewise. |
| |
| * tree-ssa-uninit.c (warn_uninitialized_phi): Require a gimple_phi |
| and a vec<gimple_phi> *, rather than just a gimple and |
| vec<gimple> *, and a hash_set<gimple_phi> * rather than a |
| hash_set<gimple> *. |
| (find_uninit_use): Likewise; add checked cast to gimple_phi when |
| adding to worklist. |
| (pass_late_warn_uninitialized::execute): Strengthen types of |
| various locals, "worklist" from vec<gimple> to vec<gimple_phi>, |
| "gsi" to a gimple_phi_iterator, "phi" and "cur_phi" to a |
| gimple_phi, "added_to_worklist" from hash_set<gimple> to |
| hash_set<gimple_phi>. |
| |
| * tree-ssa-loop-manip.c (rewrite_phi_with_iv): Require a |
| gimple_phi_iterator * rather than a gimple_stmt_iterator *; |
| use it to strengthen local from a gimple to a gimple_phi. |
| |
| * cfgloop.c (find_subloop_latch_edge_by_ivs): Convert local from a |
| gimple_stmt_iterator to a gimple_phi_iterator. Use the iterator's |
| "phi" method rather than gsi_stmt. Use this checked cast to convert |
| the type of related local from a plain gimple to a gimple_phi. |
| * gimple-pretty-print.c (dump_phi_nodes): Likewise. |
| * gimple-ssa-isolate-paths.c (find_implicit_erroneous_behaviour): |
| Likewise. |
| * sese.c (sese_add_exit_phis_edge): Likewise. |
| * tree-cfg.c (reinstall_phi_args): Likewise. |
| (gimple_make_forwarder_block): Likewise. |
| (add_phi_args_after_copy_edge): Likewise. |
| (gimple_lv_adjust_loop_header_phi): Likewise. |
| * tree-cfgcleanup.c (phi_alternatives_equal): Likewise. |
| (remove_forwarder_block_with_phi): Likewise. |
| (merge_phi_nodes): Likewise. |
| * tree-complex.c (update_phi_components): Likewise. |
| * tree-if-conv.c (if_convertible_loop_p_1): Likewise. |
| * tree-inline.c (update_ssa_across_abnormal_edges): Likewise. |
| (copy_phis_for_bb): Likewise. |
| * tree-into-ssa.c (rewrite_add_phi_arguments): Likewise. |
| * tree-outof-ssa.c (eliminate_build): Likewise. |
| (eliminate_useless_phis): Likewise. |
| (rewrite_trees): Likewise. |
| (insert_backedge_copies): Likewise. |
| * tree-phinodes.c (reserve_phi_args_for_new_edge): Likewise. |
| (remove_phi_args): Likewise. |
| (remove_phi_nodes): Likewise. |
| * tree-predcom.c (find_looparound_phi): Likewise. |
| (eliminate_temp_copies): Likewise. |
| * tree-scalar-evolution.c (loop_closed_phi_def): Likewise. |
| (scev_const_prop): Likewise; also, add checked cast to phi. |
| * tree-ssa-coalesce.c (coalesce_partitions): Likewise. |
| * tree-ssa-dce.c (remove_dead_phis): Likewise. |
| (forward_edge_to_pdom): Likewise. |
| * tree-ssa-dom.c (record_equivalences_from_phis): Likewise. |
| (cprop_into_successor_phis): Likewise. |
| (propagate_rhs_into_lhs): Likewise. |
| (eliminate_degenerate_phis_1): Likewise. |
| * tree-ssa-ifcombine.c (same_phi_args_p): Likewise. |
| * tree-ssa-live.c (calculate_live_on_exit): Likewise. |
| (verify_live_on_entry): Likewise. |
| * tree-ssa-loop-im.c |
| (move_computations_dom_walker::before_dom_children): Likewise. |
| * tree-ssa-loop-ivopts.c (find_bivs): Likewise. |
| (mark_bivs): Likewise. |
| (find_interesting_uses_outside): Likewise. |
| (determine_set_costs): Likewise. |
| * tree-ssa-loop-manip.c (split_loop_exit_edge): Likewise. |
| (tree_transform_and_unroll_loop): Likewise. |
| (rewrite_all_phi_nodes_with_iv): Likewise. |
| (canonicalize_loop_ivs): Likewise. |
| * tree-ssa-loop-niter.c (determine_value_range): Likewise. |
| * tree-ssa-phiopt.c (hoist_adjacent_loads): Likewise. |
| * tree-ssa-phiprop.c (tree_ssa_phiprop): Likewise. |
| * tree-ssa-reassoc.c (suitable_cond_bb): Likewise. |
| * tree-ssa-tail-merge.c (same_phi_alternatives_1): Likewise. |
| (vop_phi): Likewise. |
| * tree-ssa-threadedge.c (record_temporary_equivalences_from_phis): |
| Likewise. |
| * tree-ssa-threadupdate.c (copy_phi_arg_into_existing_phi): Likewise. |
| (copy_phi_args): Likewise. |
| (phi_args_equal_on_edges): Likewise. |
| * tree-ssa.c (ssa_redirect_edge): Likewise. |
| (flush_pending_stmts): Likewise. |
| * tree-switch-conversion.c (check_final_bb): Likewise. |
| (gather_default_values): Likewise. |
| (build_constructors): Likewise. |
| (fix_phi_nodes): Likewise. |
| * tree-tailcall.c (propagate_through_phis): Likewise. |
| (add_successor_phi_arg): Likewise. |
| * tree-vect-loop-manip.c (slpeel_update_phi_nodes_for_guard1): |
| Likewise. |
| (slpeel_update_phi_nodes_for_guard2): 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 (find_assert_locations): Likewise. |
| * value-prof.c (gimple_ic): Likewise. |
| |
| * omp-low.c (expand_parallel_call): Convert local to a gimple_phi. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_phi and use it in various places |
| |
| * coretypes.h (gimple_phi): New typedef. |
| (const_gimple_phi): New typedef. |
| |
| * gdbhooks.py (build_pretty_printer): Add gimple_phi and its |
| variants, using the gimple printer. |
| |
| * gimple.h (gimple_vec): Eliminate thie typedef in the hope of using |
| vecs of more concrete gimple subclasses as appropriate; also the |
| comment is about to become misleading. |
| |
| * gimple.h (gimple_phi_capacity): Use const_gimple_phi typedef |
| rather than spelling out the full type. |
| (gimple_phi_num_args): Likewise. |
| (gimple_phi_result): Likewise. |
| (gimple_phi_result_ptr): Use gimple_phi typedef. |
| (gimple_phi_set_result): Likewise. |
| (gimple_phi_arg): Likewise. |
| (gimple_phi_set_arg): Likewise. |
| * tree-phinodes.c (allocate_phi_node): Likewise. |
| (resize_phi_node): Likewise. |
| (reserve_phi_args_for_new_edge): Likewise. |
| (remove_phi_arg_num): Likewise. |
| |
| * gimple-pretty-print.c (dump_gimple_phi): Require a gimple_phi |
| rather than just a gimple. |
| * tree-into-ssa.c (mark_phi_for_rewrite): Likewise. |
| |
| * tree-phinodes.c (make_phi_node): Return a gimple_phi rather than |
| just a gimple. |
| (create_phi_node): Likewise. |
| * tree-phinodes.h (create_phi_node): Likewise. |
| |
| * trans-mem.c (struct struct tm_log_entry): Replace use of |
| now-removed gimple_vec with a plain vec<gimple>. |
| |
| * tree-into-ssa.c (phis_to_rewrite): Strengthen from a |
| vec<gimple_vec> to a vec< vec<gimple_phi> >. |
| |
| * tree-into-ssa.c (insert_phi_nodes_for): Update local to be a |
| gimple_phi. |
| * tree-into-ssa.c (rewrite_update_phi_arguments): Strengthen local |
| "phis" from a gimple_vec to a vec<gimple_phi>, and local "phi" to |
| a gimple_phi. |
| * tree-into-ssa.c (delete_update_ssa): Strengthen local |
| "phis" from a gimple_vec to a vec<gimple_phi>. |
| |
| * gimple-pretty-print.c (pp_gimple_stmt_1): Add checked cast to |
| gimple_phi in regions where a stmt is known to have code |
| GIMPLE_PHI. |
| * tree-into-ssa.c (mark_use_interesting): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_debug and use it in a few places |
| |
| * coretypes.h (gimple_debug): New typedef. |
| (const_gimple_debug): New typedef. |
| |
| * gimple.h (struct gimple_statement_debug): New subclass of |
| gimple_statement_with_ops, adding the invariant that |
| stmt->code == GIMPLE_DEBUG. |
| (is_a_helper <gimple_statement_debug>::test): New. |
| |
| * gdbhooks.py (build_pretty_printer): Add gimple_debug and its |
| variants, using the gimple printer. |
| |
| * gimple-pretty-print.c (dump_gimple_debug): Require a gimple_debug |
| rather than just a gimple. |
| * tree-inline.c (copy_debug_stmt): Likewise. |
| |
| * tree-inline.h (struct copy_body_data): Strengthen field |
| "debug_stmts" from a vec<gimple> to a vec<gimple_debug>. |
| |
| * gimple.c (gimple_build_debug_bind_stat): Return a gimple_debug |
| rather than just a gimple. |
| (gimple_build_debug_source_bind_stat): Likewise. |
| * gimple.h (gimple_build_debug_bind_stat): Likewise. |
| (gimple_build_debug_source_bind_stat): Likewise. |
| |
| * tree-inline.c (remap_gimple_stmt): Update locals to be a |
| gimple_debug. |
| (maybe_move_debug_stmts_to_successors): Likewise. |
| (copy_debug_stmts): Likewise. |
| |
| * gimple-pretty-print.c (pp_gimple_stmt_1): Add checked cast to |
| gimple_debug in regions where a stmt is known to have code |
| GIMPLE_DEBUG. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_label and use it in a few places |
| |
| * coretypes.h (gimple_label): New typedef. |
| (const_gimple_label): New typedef. |
| |
| * gimple.h (struct gimple_statement_label): New subclass of |
| gimple_statement_with_ops, adding the invariant that |
| stmt->code == GIMPLE_LABEL. |
| (is_a_helper <gimple_statement_label>::test): New. |
| |
| * gdbhooks.py (build_pretty_printer): Add gimple_label and its |
| variants, reusing the gimple printer. |
| |
| * gimple-pretty-print.c (dump_gimple_label): Require a gimple_label |
| rather than just a gimple. |
| * tree-cfg.c (verify_gimple_label): Likewise. |
| |
| * gimple.c (gimple_build_label): Return a gimple_label rather than |
| just a gimple. |
| * gimple.h (gimple_build_label): Likewise. |
| |
| * gimplify.c (gimplify_case_label_expr): Update local to be a |
| gimple_label. |
| * tree-switch-conversion.c (gen_inbound_check): Likewise. |
| |
| * gimple-pretty-print.c (pp_gimple_stmt_1): Add checked cast to |
| gimple_label in regions where a stmt is known to have code |
| GIMPLE_LABEL. |
| * tree-cfg.c (verify_gimple_stmt): Likewise. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_assign and use it in various places |
| |
| * coretypes.h (gimple_assign): New typedef. |
| (const_gimple_assign): New typedef. |
| |
| * gimple.h (struct gimple_statement_assign): New subclass of |
| gimple_statement_with_memory_ops, adding the invariant that |
| stmt->code == GIMPLE_ASSIGN. |
| (is_a_helper <gimple_statement_assign>::test): New. |
| |
| * gdbhooks.py (build_pretty_printer): Add gimple_assign and its |
| variants, using the gimple printer. |
| |
| * gimple-builder.c (build_assign): Return a gimple_assign rather |
| than just a gimple from each of the overloaded variants. |
| (build_type_cast): Likewise. |
| * gimple-builder.h (build_assign): Likewise. |
| (build_type_cast): Likewise. |
| * gimple.c (gimple_build_assign_stat): Likewise. |
| (gimple_build_assign_with_ops): Likewise. |
| * gimple.h (gimple_build_assign_stat): Likewise. |
| (gimple_build_assign_with_ops): Likewise. |
| |
| * asan.c (get_mem_ref_of_assignment): Require a const_gimple_assign |
| rather than just a "const gimple" (the latter is not a |
| "const_gimple"). |
| * gimple-pretty-print.c (dump_unary_rhs): Require a gimple_assign |
| rather than just a gimple. |
| (dump_binary_rhs): Likewise. |
| (dump_ternary_rhs): Likewise. |
| * tree-cfg.c (verify_gimple_assign_unary): Likewise. |
| (verify_gimple_assign_binary): Likewise. |
| (verify_gimple_assign_ternary): Likewise. |
| (verify_gimple_assign_single): Likewise. |
| (verify_gimple_assign): Likewise. |
| * tree-ssa-sccvn.c (simplify_unary_expression): Likewise. |
| (try_to_simplify): Likewise. |
| * tree-tailcall.c (process_assignment): Likewise. |
| * tree-vect-generic.c (expand_vector_operation): Likewise. |
| * tree-vrp.c (extract_range_from_cond_expr): Likewise. |
| (extract_range_from_assignment): Likewise. |
| |
| * asan.c (has_stmt_been_instrumented_p): Add checked cast to |
| gimple_assign in regions where a stmt is known to have code |
| GIMPLE_ASSIGN. |
| * gimple-pretty-print.c (pp_gimple_stmt_1): Likewise. |
| * tree-cfg.c (verify_gimple_stmt): Likewise. |
| * tree-ssa-sccvn.c (visit_use): Likewise. |
| * tree-tailcall.c (find_tail_calls): Likewise. |
| * tree-vrp.c (vrp_visit_assignment_or_call): Likewise. |
| |
| * tree-vrp.c (simplify_stmt_for_jump_threading): Replace a check |
| against GIMPLE_ASSIGN with a dyn_cast<gimple_assign>, introducing |
| a gimple_assign local. |
| |
| * tree-vect-generic.c (expand_vector_condition): Convert local to a |
| gimple_assign, adding a checked cast when extracting from gsi, since |
| this is only called when underlying stmt has code GIMPLE_ASSIGN. |
| (optimize_vector_constructor): Likewise. |
| (lower_vec_perm): Likewise. |
| (expand_vector_operations_1): Convert local to a gimple_assign, |
| introducing a dyn_cast. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_cond and use it in various places |
| |
| * coretypes.h (gimple_cond): New typedef. |
| (const_gimple_cond): Likewise. |
| |
| * gimple.h (struct gimple_statement_cond): New subclass of |
| gimple_statement_with_ops, adding the invariant that |
| stmt->code == GIMPLE_COND. |
| (is_a_helper <gimple_statement_cond>::test): New. |
| (gimple_build_cond): Return a gimple_cond, rather than just |
| a gimple. |
| (gimple_build_cond_from_tree): Likewise. |
| |
| * gdbhooks.py (build_pretty_printer): Add gimple_cond and its |
| variants, using the gimple printer. |
| |
| * cfgexpand.c (expand_gimple_cond): Require a gimple_cond rather |
| than just a gimple. |
| * gimple.h (gimple_cond_set_condition_from_tree): Likewise. |
| (gimple_cond_true_p): Likewise. |
| (gimple_cond_false_p): Likewise. |
| (gimple_cond_set_condition): Likewise. |
| * gimple.c (gimple_cond_set_condition_from_tree): Likewise. |
| * gimple-fold.c (fold_gimple_cond): Likewise. |
| * gimple-pretty-print.c (dump_gimple_cond): Likewise. |
| * tree-ssa-dom.c (canonicalize_comparison): Likewise. |
| * tree-ssa-forwprop.c (forward_propagate_into_gimple_cond): Likewise. |
| * tree-ssa-ifcombine.c (recognize_single_bit_test): Likewise. |
| (recognize_bits_test): Likewise. |
| * tree-ssa-threadedge.c (simplify_control_stmt_condition): Likewise. |
| (thread_around_empty_blocks): Likewise. |
| (thread_through_normal_block): Likewise. |
| (thread_across_edge): Likewise. |
| * tree-ssa-threadedge.h (thread_across_edge): Likewise. |
| * tree-vrp.c (range_fits_type_p): Likewise. |
| |
| * cfgexpand.c (expand_gimple_basic_block): Add checked cast to |
| gimple_cond in regions where a stmt is known to have code GIMPLE_COND. |
| * gimple-fold.c (fold_stmt_1): Likewise. |
| * gimple-pretty-print.c (pp_gimple_stmt_1): Likewise. |
| * tree-ssa-dom.c (optimize_stmt): Likewise. |
| * tree-ssa-forwprop.c (ssa_forward_propagate_and_combine): Likewise. |
| * tree-ssa-loop-unswitch.c (tree_unswitch_single_loop): Likewise. |
| * tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): |
| Likewise. |
| * tree-vrp.c (simplify_stmt_using_ranges): Likewise. |
| |
| * cfgloopmanip.c (create_empty_loop_on_edge): Update local to be a |
| gimple_cond. |
| * tree-vrp.c (identify_jump_threads): Likewise. |
| |
| * gimple.c (gimple_build_cond): Return a gimple_cond, rather than |
| just a gimple. |
| (gimple_build_cond_from_tree): Likewise. |
| |
| * tree-ssa-dom.c (class dom_opt_dom_walker): Strengthen type of |
| field "m_dummy_cond" from a plain gimple to a gimple_cond. |
| |
| * tree-ssa-ifcombine.c (ifcombine_ifandif): Introduce locals |
| inner_stmt and outer_stmt so that inner_cond and outer_cond can be |
| of type gimple_cond once we know that we have code == GIMPLE_COND. |
| * tree-ssa-loop-unswitch.c (tree_may_unswitch_on): Introduce local |
| "last" so that stmt can be of type gimple_cond. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_bind and use it for accessors. |
| |
| * coretypes.h (gimple_bind): New typedef. |
| (const_gimple_bind): New typedef. |
| |
| * gdbhooks.py (build_pretty_printer): Add gimple_bind |
| and its variants, using the gimple printer. |
| |
| * gimple-pretty-print.c (dump_gimple_bind): Update type-signature to |
| require a gimple_bind rather than just a gimple. |
| |
| * gimple.c (gimple_build_bind): Return a gimple_bind rather than |
| just a gimple. |
| * gimple.h (gimple_build_bind): Likewise. |
| |
| * gimple.h (gimple_seq_first_stmt_as_a_bind): New. |
| |
| * gimple.h (gimple_bind_vars): Update type-signature to |
| require a gimple_bind rather than just a gimple, removing |
| as_a and hence run-time check. |
| (gimple_bind_set_vars): Likewise. |
| (gimple_bind_append_vars): Likewise. |
| (gimple_bind_body_ptr): Likewise. |
| (gimple_bind_body): Likewise. |
| (gimple_bind_set_body): Likewise. |
| (gimple_bind_add_stmt): Likewise. |
| (gimple_bind_add_seq): Likewise. |
| (gimple_bind_block): Likewise. |
| (gimple_bind_set_block): Likewise. |
| * gimplify.c (gimple_push_bind_expr): Likewise. |
| (gimple_current_bind_expr): Likewise. |
| * tree-inline.c (copy_gimple_bind): Likewise. |
| |
| * gimplify.h (gimple_current_bind_expr): Return a gimple_bind |
| rather than a plain gimple. |
| (gimplify_body): Likewise. |
| (gimple_bind_expr_stack): Return a vec<gimple_bind> rather than |
| a vec<gimple>. |
| |
| * gimplify.c (struct gimplify_ctx): Strengthen field |
| "bind_expr_stack" from vec<gimple> to vec<gimple_bind>. |
| (gimple_bind_expr_stack): Likewise for type of returned value. |
| |
| * gimplify.c (gimplify_body): Strengthen various types from gimple |
| to gimple_bind, including the return type. |
| |
| * gimplify.c (declare_vars): Introduce "gs" as a generic gimple, |
| so that local "scope" can be of type gimple_bind once we've reached |
| the region where it must be of code GIMPLE_BIND. |
| |
| * gimple-low.c (lower_gimple_bind): Add checked cast to |
| gimple_bind, since both callers (lower_function_body and |
| lower_stmt) have checked the code for us. |
| |
| * gimple.c (gimple_copy): Add checked cast to gimple_bind in |
| region guarded by check for code GIMPLE_BIND. |
| * gimple-low.c (gimple_stmt_may_fallthru): Likewise. |
| * gimple-pretty-print.c (pp_gimple_stmt_1): Likewise. |
| * gimple-walk.c (walk_gimple_stmt): Likewise. |
| * omp-low.c (scan_omp_1_stmt): Likewise. |
| (lower_omp_1): Likewise. |
| (lower_omp_for): Likewise. |
| * tree-cfg.c (verify_gimple_in_seq_2): Likewise. |
| (do_warn_unused_result): Likewise. |
| * tree-inline.c (remap_gimple_stmt): Likewise. |
| (estimate_num_insns): Likewise. |
| * tree-nested.c (convert_nonlocal_reference_stmt): Likewise. |
| |
| * gimplify.c (gimplify_bind_expr): Update local(s) to be a |
| gimple_bind rather than just a gimple. |
| (gimplify_function_tree): Likewise. |
| * omp-low.c (lower_omp_sections): Likewise. |
| (lower_omp_single): Likewise. |
| (lower_omp_master): Likewise. |
| (lower_omp_taskgroup): Likewise. |
| (lower_omp_ordered): Likewise. |
| (lower_omp_critical): Likewise. |
| (lower_omp_taskreg): Likewise. |
| (lower_omp_teams): Likewise. |
| * omp-low.c (lower_omp_for): Likewise; use |
| gimple_seq_first_stmt_as_a_bind to encapsulate the checked cast. |
| (lower_omp_target): Likewise. |
| * tree-nested.c (finalize_nesting_tree_1): Likewise. |
| |
| * gimple.c (empty_stmt_p): Add dyn_cast to a gimple_bind. |
| * tree-inline.c (replace_locals_stmt): Add dyn_cast to gimple_bind. |
| |
| 2014-10-24 David Malcolm <dmalcolm@redhat.com> |
| |
| Introduce gimple_switch and use it in various places |
| |
| * gimple.h (gimple_statement_switch): New subclass of |
| gimple_statement_with_ops, adding the invariant that |
| stmt->code == GIMPLE_SWITCH. |
| (is_a_helper <gimple_statement_switch>::test (gimple)): New. |
| |
| * coretypes.h (gimple_switch): New typedef |
| (const_gimple_switch): Likewise. |
| |
| * gdbhooks.py (build_pretty_printer): Add gimple_switch |
| and its variants, using the gimple printer. |
| |
| * gimple.c (gimple_build_switch_nlabels): Return a gimple_switch |
| rather than just a gimple. |
| (gimple_build_switch): Likewise. |
| * gimple.h (gimple_build_switch_nlabels): Likewise. |
| (gimple_build_switch): Likewise. |
| |
| * gimple.h (gimple_switch_num_labels): Update type-signature to |
| require a gimple_switch rather than just a gimple. |
| (gimple_switch_set_num_labels): Likewise. |
| (gimple_switch_set_index): Likewise. |
| (gimple_switch_label): Likewise. |
| (gimple_switch_set_label): Likewise. |
| (gimple_switch_default_label): Likewise. |
| (gimple_switch_set_default_label): Likewise. |
| * expr.h (expand_case): Likewise. |
| * gimple-pretty-print.c (dump_gimple_call): Likewise. |
| * stmt.c (compute_cases_per_edge): Likewise. |
| (expand_case): Likewise. |
| * tree-cfg.h (group_case_labels_stmt): Likewise. |
| * tree-cfg.c (make_gimple_switch_edges): Likewise. |
| (find_taken_edge_switch_expr) Likewise. |
| (find_case_label_for_value) Likewise. |
| (get_cases_for_edge): Likewise. |
| (group_case_labels_stmt): Likewise. |
| (verify_gimple_switch): Likewise. |
| * tree-eh.c (verify_norecord_switch_expr): Likewise. |
| * tree-eh.c (lower_eh_constructs_2): Likewise. |
| * tree-loop-distribution.c (generate_loops_for_partition): Likewise. |
| * tree-ssa-dom.c (record_edge_info): Likewise. |
| * tree-ssa-forwprop.c (simplify_gimple_switch_label_vec): Likewise. |
| (simplify_gimple_switch): Likewise. |
| * tree-switch-conversion.c (emit_case_bit_tests): Likewise. |
| (collect_switch_conv_info): Likewise. |
| (build_constructors): Likewise. |
| (array_value_type): Likewise. |
| (build_one_array): Likewise. |
| (build_arrays): Likewise. |
| (gen_inbound_check): Likewise. |
| * tree-vrp.c (find_switch_asserts): Likewise. |
| (find_case_label_range): Likewise. |
| (find_case_label_ranges): Likewise. |
| (vrp_visit_switch_stmt): Likewise. |
| (simplify_switch_using_ranges): Likewise. |
| |
| * tree-vrp.c (switch_update): Strengthen field "stmt" from being |
| merely a gimple to being a gimple_switch. |
| |
| * cfgexpand.c (expand_gimple_stmt_1): Add checked cast to |
| gimple_switch in regions where the stmt code has been tested as |
| GIMPLE_SWITCH. |
| * gimple-pretty-print.c (pp_gimple_stmt_1): Likewise. |
| * tree-cfg.c (make_edges): Likewise. |
| (end_recording_case_labels): Likewise. |
| (cleanup_dead_labels): Likewise. |
| (cleanup_dead_labels): Likewise. |
| (group_case_labels): Likewise. |
| (find_taken_edge): Likewise. |
| (find_case_label_for_value): Likewise. |
| (verify_gimple_stmt): Likewise. |
| (gimple_verify_flow_info): Likewise. |
| (gimple_redirect_edge_and_branch): Likewise. |
| * tree-inline.c (estimate_num_insns): Likewise. |
| * tree-ssa-forwprop.c (ssa_forward_propagate_and_combine): Likewise. |
| * tree-ssa-uncprop.c (associate_equivalences_with_edges): Likewise. |
| * tree-switch-conversion.c (do_switchconv): Likewise. |
| * tree-vrp.c (find_assert_locations_1): Likewise. |
| (vrp_visit_stmt): Likewise. |
| (simplify_stmt_using_ranges): Likewise. |
| |
| * ipa-inline-analysis.c (set_switch_stmt_execution_predicate): |
| Introduce local "lastg" as a generic gimple, so that local "last" |
| can be of type gimple_switch once lastg's code has been verified. |
| |
| * omp-low.c (diagnose_sb_2): Introduce switch_stmt local to handle |
| the GIMPLE_SWITCH case. |
| |
| * tree-cfg.c (find_taken_edge_switch_expr): Add gimple_switch |
| argument, since the caller (find_taken_edge) has checked that |
| last_stmt is a switch. |
| |
| Copyright (C) 2014 Free Software Foundation, Inc. |
| |
| Copying and distribution of this file, with or without modification, |
| are permitted in any medium without royalty provided the copyright |
| notice and this notice are preserved. |