1. 22 Aug, 2014 40 commits
    • postreload.c: Use rtx_insn (also touches rtl.h and cprop.c) · f90af2e0
      gcc/
      	* rtl.h (fis_get_condition): Strengthen param "jump" from rtx to
      	rtx_insn *.
      
      	* cprop.c (fis_get_condition): Likewise.
      
      	* postreload.c (reload_cse_regs): Likewise for param "first".
      	(reload_cse_simplify): Likewise for param "insn".
      	(reload_cse_regs_1): Likewise for local "insn".
      	(reload_cse_simplify_set): Likewise for param "insn".
      	(reload_cse_simplify_operands): Likewise.
      	(struct reg_use): Likewise for field "insn".
      	(reload_combine_purge_insn_uses): Likewise for param "insn".
      	(fixup_debug_insns): Likewise for params "from", "to" and local
      	"insn".
      	(try_replace_in_use): Likewise for local "use_insn".
      	(reload_combine_recognize_const_pattern): Likewise for param
      	"insn" and locals "add_moved_after_insn", "use_insn".
      	(reload_combine_recognize_pattern): Likewise for param "insn" and
      	local "prev".
      	(reload_combine): Likewise for locals "insn", "prev".
      	(reload_combine_note_use): Likewise for param "insn".
      	(move2add_use_add2_insn): Likewise.
      	(move2add_use_add3_insn): Likewise.
      	(reload_cse_move2add): Likewise, also for local "next".
      	(move2add_note_store): Likewise for local "insn".
      
      From-SVN: r214358
      David Malcolm committed
    • re PR c++/57709 (-Wshadow is too strict / has false positives) · b65eff46
      gcc/cp/ChangeLog:
      
      2014-08-22  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR c++/57709
      	* name-lookup.c (pushdecl_maybe_friend_1): Do not warn if a
      	declaration shadows a function declaration, unless the former
      	declares a function, pointer to function or pointer to member
      	function, because this is a common and valid case in real-world
      	code.
      	* cp-tree.h (TYPE_PTRFN_P,TYPE_REFFN_P,TYPE_PTRMEMFUNC_P):
      	Improve description.
      
      gcc/testsuite/ChangeLog:
      
      2014-08-22  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	PR c++/57709
      	* g++.dg/Wshadow.C: New test.
      
      From-SVN: r214357
      Manuel López-Ibáñez committed
    • postreload-gcse.c: Use rtx_insn in various places · 6c6d76be
      gcc/
      	* postreload-gcse.c (struct occr): Strengthen field "insn" from
      	rtx to rtx_insn *.
      	(struct unoccr): Likewise.
      	(struct modifies_mem): Likewise.
      	(alloc_mem): Likewise for local "insn".
      	(insert_expr_in_table): Likewise for param "insn".
      	(dump_expr_hash_table_entry): Likewise for local "insn".
      	(oprs_unchanged_p): Likewise for param "insn".
      	(load_killed_in_block_p): Likewise for local "setter".
      	(record_last_reg_set_info): Likewise for param "insn".
      	(record_last_reg_set_info_regno): Likewise.
      	(record_last_mem_set_info): Likewise.
      	(record_last_set_info): Likewise for local "last_set_insn".
      	(record_opr_changes): Likewise for param "insn".
      	(hash_scan_set): Likewise.
      	(compute_hash_table): Likewise for local "insn".
      	(get_avail_load_store_reg): Likewise for param "insn".
      	(eliminate_partially_redundant_load): Likewise, also for locals
      	"avail_insn", "next_pred_bb_end".  Replace use of NULL_RTX with
      	RTX for insns.
      	(eliminate_partially_redundant_loads): Likewise for local "insn".
      
      From-SVN: r214356
      David Malcolm committed
    • optabs.c: Use rtx_insn and rtx_code_label · 38295e01
      gcc/
      	* optabs.c (expand_doubleword_shift): Strengthen local "insn" from
      	rtx to rtx_insn *.
      	(expand_binop): Likewise for locals "entry_last", "last", "insns"
      	(expand_twoval_unop): Likewise for locals entry_last", "last".
      	(expand_twoval_binop): Likewise.
      	(expand_twoval_binop_libfunc): Likewise for local "insns".
      	(widen_leading): Likewise for local "last".
      	(expand_doubleword_clz): Likewise for local "seq".  Strengthen
      	locals "hi0_label", "after_label" from rtx to rtx_code_label *.
      	(widen_bswap): Strengthen local "last" from rtx to rtx_insn *.
      	(expand_parity): Likewise for locals "last" and "seq".
      	(expand_ffs): Likewise for local "seq".  Strengthen local
      	"nonzero_label" from rtx to rtx_code_label *.
      	(expand_absneg_bit): Strengthen local "insns" from rtx to
      	rtx_insn *.
      	(expand_unop_direct): Likewise for local "last".
      	(expand_unop): Likewise for locals "last", "insns".
      	(expand_abs_nojump): Likewise for local "last".
      	(expand_abs): Strengthen local "op1" from rtx to rtx_code_label *.
      	(expand_one_cmpl_abs_nojump): Strengthen local "last" from rtx to
      	rtx_insn *.
      	(expand_copysign_absneg): Strengthen local "label" from rtx to
      	rtx_code_label *.
      	(expand_copysign_bit): Strengthen local "insns" from rtx to
      	rtx_insn *.
      	(struct no_conflict_data): Likewise for fields "first", "insn".
      	(emit_libcall_block_1): Likewise for param "insns" and locals
      	"next", "last", "insn".
      	(emit_libcall_block): For now, add a checked cast to rtx_insn *
      	on "insns" when invoking emit_libcall_block_1.  Ultimately we
      	want to strengthen insns itself.
      	(prepare_cmp_insn): Strengthen local "last" from rtx to
      	rtx_insn *.
      	(emit_cmp_and_jump_insn_1): Likewise for local "insn".
      	(prepare_float_lib_cmp): Likewise for local "insns".
      	(emit_conditional_move): Likewise for local "last".
      	(emit_conditional_add): Likewise.
      	(have_sub2_insn): Likewise for local "seq".
      	(expand_float): Likewise for local "insns".  Strengthen locals
      	"label", "neglabel" from rtx to rtx_code_label *.
      	(expand_fix): Likewise for locals "last", "insn", "insns" (to
      	rtx_insn *) and locals "lab1", "lab2" (to rtx_code_label *).
      	(expand_fixed_convert): Likewise for local "insns" (to
      	rtx_insn *).
      	(expand_sfix_optab): Likewise for local "last".
      	(expand_compare_and_swap_loop): Strengthen local "label" from rtx
      	to rtx_code_label *.
      	(maybe_emit_sync_lock_test_and_set): Strengthen local "last_insn"
      	from rtx to rtx_insn *.
      	(expand_atomic_fetch_op): Likewise for local "insn".
      	(maybe_legitimize_operand_same_code): Likewise for local "last".
      	(maybe_legitimize_operands): Likewise.
      
      From-SVN: r214355
      David Malcolm committed
    • modulo-sched.c: Use rtx_insn in various places · 6210ec61
      gcc/
      	* modulo-sched.c (struct ps_reg_move_info): Strengthen field
      	"insn" from rtx to rtx_insn *.
      	(ps_rtl_insn): Likewise for return type.
      	(doloop_register_get): Likewise for params "head", "tail" and
      	locals "insn", "first_insn_not_to_check".
      	(schedule_reg_move): Likewise for local "this_insn".
      	(schedule_reg_moves): Add a checked cast to rtx_insn * to result
      	of gen_move_insn for now.
      	(reset_sched_times): Strengthen local "insn" from rtx to
      	rtx_insn *.
      	(permute_partial_schedule): Likewise.
      	(duplicate_insns_of_cycles): Likewise for local "u_insn".
      	(dump_insn_location): Likewise for param "insn".
      	(loop_canon_p): Likewise for local "insn".
      	(sms_schedule): Likewise.
      	(print_partial_schedule): Likewise.
      	(ps_has_conflicts): Likewise.
      
      From-SVN: r214354
      David Malcolm committed
    • re PR c++/62129 (internal compiler error: in output_constant, at varasm.c:4755) · cea83a3a
      	PR c++/62129
      	* class.c (outermost_open_class): Fix logic.
      	* decl.c (complete_vars): Fix logic.
      
      From-SVN: r214353
      Jason Merrill committed
    • get_ebb_head_tail works with rtx_insn · 52d251b5
      gcc/
      	* sched-int.h (get_ebb_head_tail): Strengthen params "headp" and
      	"tailp" from rtx * to rtx_insn **.
      
      	* ddg.c (build_intra_loop_deps): Strengthen locals head", "tail"
      	from rtx to rtx_insn *.
      	* haifa-sched.c (get_ebb_head_tail): Strengthen params "headp" and
      	"tailp" from rtx * to rtx_insn **.  Strengthen locals "beg_head",
      	"beg_tail", "end_head", "end_tail", "note", "next", "prev" from
      	rtx to rtx_insn *.
      	* modulo-sched.c (const_iteration_count): Strengthen return type
      	and locals "insn", "head", "tail" from rtx to rtx_insn *.  Replace
      	use of NULL_RTX with NULL when working with insns.
      	(loop_single_full_bb_p): Strengthen locals "head", "tail" from rtx
      	to rtx_insn *.
      	(sms_schedule): Likewise.
      	* sched-rgn.c (init_ready_list): Likewise, also for locals
      	"src_head" and "src_next_tail".
      	(compute_block_dependences): Likewise.
      	(free_block_dependencies): Likewise.
      	(debug_rgn_dependencies): Likewise.
      	(free_rgn_deps): Likewise.
      	(compute_priorities): Likewise.
      	(schedule_region): Likewise.
      	* sel-sched.c (find_ebb_boundaries): Likewise.
      
      	* config/sh/sh.c (find_insn_regmode_weight): Strengthen locals
      	"insn", "next_tail", "head", "tail" from rtx to rtx_insn *.
      
      From-SVN: r214352
      David Malcolm committed
    • re PR fortran/62135 (ICE with invalid SELECT CASE selector) · f172301f
      fortran/
      	PR fortran/62135
      	* resolve.c (resolve_select): Fix list traversal in case the
      	last element of the CASE list was dropped as unreachable code.
      
      testsuite/
      	PR fortran/62135
      	* gfortran.dg/pr62135.f90: New test.
      
      From-SVN: r214351
      Steven Bosscher committed
    • c.opt (Wcomment): Use CPP, Var and LangEnabledBy. · 596e808c
      gcc/c-family/ChangeLog:
      
      2014-08-22  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	* c.opt (Wcomment): Use CPP, Var and LangEnabledBy.
      	(Wmultichar): Likewise.
      	(Wdate-time): Use C-family languages instead of Common. Use CPP
      	and Var.
      	* c-opts.c (c_common_handle_option): Do not handle the above
      	options here.
      	(sanitize_cpp_opts): Likewise.
      
      gcc/testsuite/ChangeLog:
      
      2014-08-22  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	* g++.dg/warn/wdate-time.C: Remove.
      	* gcc.dg/wdate-time.c: Move from here...
      	* c-c++-common/wdate-time.c: ... to here.
      
      From-SVN: r214350
      Manuel López-Ibáñez committed
    • mode-switching.c: Use rtx_insn · 1d455520
      gcc/
      	* mode-switching.c (struct seginfo): Strengthen field "insn_ptr"
      	from rtx to rtx_insn *.
      	(new_seginfo): Likewise for param "insn".
      	(create_pre_exit): Likewise for locals "last_insn",
      	"before_return_copy", "return_copy".
      	(optimize_mode_switching): Likewise for locals "insn", "ins_pos",
      	"mode_set".
      
      From-SVN: r214349
      David Malcolm committed
    • lra: use rtx_insn · cfa434f6
      gcc/
      	* lra-int.h (struct lra_insn_recog_data): Strengthen field "insn"
      	from rtx to rtx_insn *.
      	(lra_push_insn): Likewise for 1st param.
      	(lra_push_insn_and_update_insn_regno_info): Likewise.
      	(lra_pop_insn): Likewise for return type.
      	(lra_invalidate_insn_data): Likewise for 1st param.
      	(lra_set_insn_deleted): Likewise.
      	(lra_delete_dead_insn): Likewise.
      	(lra_process_new_insns): Likewise for first 3 params.
      	(lra_set_insn_recog_data): Likewise for 1st param.
      	(lra_update_insn_recog_data): Likewise.
      	(lra_set_used_insn_alternative): Likewise.
      	(lra_invalidate_insn_regno_info): Likewise.
      	(lra_update_insn_regno_info): Likewise.
      	(lra_former_scratch_operand_p): Likewise.
      	(lra_eliminate_regs_1): Likewise.
      	(lra_get_insn_recog_data): Likewise.
      
      	* lra-assigns.c (assign_by_spills): Strengthen local "insn" from
      	rtx to rtx_insn *.
      
      	* lra-coalesce.c (move_freq_compare_func): Likewise for locals
      	"mv1" and "mv2".
      	(substitute_within_insn): New.
      	(lra_coalesce): Strengthen locals "mv", "insn", "next" from rtx to
      	rtx_insn *.  Strengthen sorted_moves from rtx * to rxt_insn **.
      	Replace call to "substitute" with call to substitute_within_insn.
      
      	* lra-constraints.c (curr_insn): Strengthen from rtx to
      	rtx_insn *.
      	(get_equiv_with_elimination): Likewise for param "insn".
      	(match_reload): Strengthen params "before" and "after" from rtx *
      	to rtx_insn **.
      	(emit_spill_move): Likewise for return type.  Add a checked cast
      	to rtx_insn * on result of gen_move_insn for now.
      	(check_and_process_move): Likewise for local "before".  Replace
      	NULL_RTX with NULL when referring to insns.
      	(process_addr_reg): Strengthen params "before" and "after" from
      	rtx * to rtx_insn **.
      	(insert_move_for_subreg): Likewise.
      	(simplify_operand_subreg): Strengthen locals "before" and "after"
      	from rtx to rtx_insn *.
      	(process_address_1): Strengthen params "before" and "after" from
      	rtx * to rtx_insn **.  Strengthen locals "insns", "last_insn" from
      	rtx to rtx_insn *.
      	(process_address): Strengthen params "before" and "after" from
      	rtx * to rtx_insn **.
      	(emit_inc): Strengthen local "last" from rtx to rtx_insn *.
      	(curr_insn_transform): Strengthen locals "before" and "after"
      	from rtx to rtx_insn *.  Replace NULL_RTX with NULL when referring
      	to insns.
      	(loc_equivalence_callback): Update cast of "data", changing
      	resulting type from rtx to rtx_insn *.
      	(substitute_pseudo_within_insn): New.
      	(inherit_reload_reg): Strengthen param "insn" from rtx to
      	rtx_insn *; likewise for local "new_insns".  Replace NULL_RTX with
      	NULL when referring to insns.  Add a checked cast to rtx_insn *
      	when using usage_insn to invoke lra_update_insn_regno_info.
      	(split_reg): Strengthen param "insn" from rtx to rtx_insn *;
      	likewise for locals "restore", "save".  Add checked casts to
      	rtx_insn * when using usage_insn to invoke
      	lra_update_insn_regno_info and lra_process_new_insns.  Replace
      	NULL_RTX with NULL when referring to insns.
      	(split_if_necessary): Strengthen param "insn" from rtx to
      	rtx_insn *.
      	(update_ebb_live_info): Likewise for params "head", "tail" and local
      	"prev_insn".
      	(get_last_insertion_point): Likewise for return type and local "insn".
      	(get_live_on_other_edges): Likewise for local "last".
      	(inherit_in_ebb): Likewise for params "head", "tail" and locals
      	"prev_insn", "next_insn", "restore".
      	(remove_inheritance_pseudos): Likewise for local "prev_insn".
      	(undo_optional_reloads): Likewise for local "insn".
      
      	* lra-eliminations.c (lra_eliminate_regs_1): Likewise for param
      	"insn".
      	(lra_eliminate_regs): Replace NULL_RTX with NULL when referring to
      	insns.
      	(eliminate_regs_in_insn): Strengthen param "insn" from rtx to
      	rtx_insn *.
      	(spill_pseudos): Likewise for local "insn".
      	(init_elimination): Likewise.
      	(process_insn_for_elimination): Likewise for param "insn".
      
      	* lra-lives.c (curr_insn): Likewise.;
      
      	* lra-spills.c (assign_spill_hard_regs): Likewise for local "insn".
      	(remove_pseudos): Likewise for param "insn".
      	(spill_pseudos): Likewise for local "insn".
      	(lra_final_code_change): Likewise for locals "insn", "curr".
      
      	* lra.c (lra_invalidate_insn_data): Likewise for param "insn".
      	(lra_set_insn_deleted): Likewise.
      	(lra_delete_dead_insn): Likewise, and for local "prev".
      	(new_insn_reg): Likewise for param "insn".
      	(lra_set_insn_recog_data): Likewise.
      	(lra_update_insn_recog_data): Likewise.
      	(lra_set_used_insn_alternative): Likewise.
      	(get_insn_freq): Likewise.
      	(invalidate_insn_data_regno_info): Likewise.
      	(lra_invalidate_insn_regno_info): Likewise.
      	(lra_update_insn_regno_info): Likewise.
      	(lra_constraint_insn_stack): Strengthen from vec<rtx> to
      	vec<rtx_insn *>.
      	(lra_push_insn_1): Strengthen param "insn" from rtx to
      	rtx_insn *.
      	(lra_push_insn): Likewise.
      	(lra_push_insn_and_update_insn_regno_info): Likewise.
      	(lra_pop_insn): Likewise for return type and local "insn".
      	(push_insns): Likewise for params "from", "to", and local "insn".
      	(setup_sp_offset): Likewise for params "from", "last" and locals
      	"before", "insn".
      	(lra_process_new_insns): Likewise for params "insn", "before",
      	"after" and local "last".
      	(struct sloc): Likewise for field "insn".
      	(lra_former_scratch_operand_p): Likewise for param "insn".
      	(remove_scratches): Likewise for locals "insn", "last".
      	(check_rtl): Likewise for local "insn".
      	(add_auto_inc_notes): Likewise for param "insn".
      	(update_inc_notes): Likewise for local "insn".
      	(lra): Replace NULL_RTX with NULL when referring to insn.
      
      From-SVN: r214348
      David Malcolm committed
    • lower-subreg.c: Use rtx_insn · e967cc2f
      gcc/
      	* lower-subreg.c (simple_move): Strengthen param "insn" from rtx
      	to rtx_insn *.
      	(resolve_reg_notes): Likewise.
      	(resolve_simple_move): Likewise for return type, param "insn", and
      	locals "insns", "minsn".
      	(resolve_clobber): Strengthen param "insn" from rtx to rtx_insn *.
      	(resolve_use): Likewise.
      	(resolve_debug): Likewise.
      	(find_decomposable_shift_zext): Likewise.
      	(resolve_shift_zext): Likewise for return type, param "insn", and
      	locals "insns", "in".  Eliminate use of NULL_RTX in favor of NULL.
      	(decompose_multiword_subregs): Likewise for local "insn",
      	"orig_insn", "decomposed_shift", "end".
      
      From-SVN: r214346
      David Malcolm committed
    • loop-unroll.c: Use rtx_insn (also touches basic-block.h) · 95ecfb26
      gcc/
      	* basic-block.h (basic_block split_edge_and_insert): Strengthen
      	param "insns" from rtx to rtx_insn *.
      
      	* loop-unroll.c (struct iv_to_split): Strengthen field "insn" from
      	rtx to rtx_insn *.
      	(struct iv_to_split): Likewise.
      	(loop_exit_at_end_p): Likewise for local "insn".
      	(split_edge_and_insert): Likewise for param "insns".
      	(compare_and_jump_seq): Likewise for return type, param "cinsn",
      	and locals "seq", "jump".
      	(unroll_loop_runtime_iterations): Likewise for locals "init_code",
      	"branch_code"; update invocations of compare_and_jump_seq to
      	eliminate NULL_RTX in favor of NULL.
      	(referenced_in_one_insn_in_loop_p): Strengthen local "insn" from
      	rtx to rtx_insn *.
      	(reset_debug_uses_in_loop): Likewise.
      	(analyze_insn_to_expand_var): Likewise for param "insn".
      	(analyze_iv_to_split_insn): Likewise.
      	(analyze_insns_in_loop): Likewise for local "insn".
      	(insert_base_initialization): Likewise for param
      	"insn" and local "seq".
      	(split_iv): Likewise for param "insn" and local "seq".
      	(expand_var_during_unrolling): Likewise for param "insn".
      	(insert_var_expansion_initialization): Likewise for local "seq".
      	(combine_var_copies_in_loop_exit): Likewise.
      	(combine_var_copies_in_loop_exit): Likewise for locals "seq" and
      	"insn".
      	(maybe_strip_eq_note_for_split_iv): Likewise for param "insn".
      	(apply_opt_in_copies): Likewise for locals "insn", "orig_insn",
      	"next".
      
      From-SVN: r214345
      David Malcolm committed
    • loop-iv.c: Use rtx_insn (also touches cfgloop.h and loop-unroll.c) · 1b20d55a
      gcc/
      	* cfgloop.h (iv_analyze): Strengthen param 1 "insn" from rtx to
      	rtx_insn *.
      	(iv_analyze_result): Likewise.
      	(iv_analyze_expr): Likewise.
      	(biv_p): Likewise.
      
      	* loop-iv.c (iv_get_reaching_def): Strengthen param "insn" and
      	local "def_insn" from rtx to rtx_insn *.
      	(get_biv_step_1): Likewise for local "insn".
      	(iv_analyze_expr): Likewise for param "insn".
      	(iv_analyze_def): Likewise for local "insn".
      	(iv_analyze_op): Likewise for param "insn".
      	(iv_analyze): Likewise.
      	(iv_analyze_result): Likewise.
      	(biv_p): Likewise.
      	(suitable_set_for_replacement): Likewise.
      	(simplify_using_initial_values): Likewise for local "insn".
      	(iv_number_of_iterations): Likewise for param "insn".
      	(check_simple_exit): Add checked cast to rtx_insn when invoking
      	iv_number_of_iterations for now (until get_condition is
      	strengthened).
      
      	* loop-unroll.c (analyze_iv_to_split_insn): Strengthen param
      	"insn" from rtx to rtx_insn *.
      	(analyze_insns_in_loop): Likewise for local "insn".
      
      From-SVN: r214344
      David Malcolm committed
    • loop-invariant.c: Use rtx_insn in various places · 89bfd6f5
      gcc/
      	* loop-invariant.c (struct use): Strengthen field "insn" from rtx
      	to rtx_insn *.
      	(struct invariant): Likewise.
      	(hash_invariant_expr_1): Likewise for param "insn".
      	(invariant_expr_equal_p): Likewise for param "insn1", "insn2".
      	(find_exits): Likewise for local "insn".
      	(create_new_invariant): Likewise for param "insn".
      	(check_dependencies): Likewise.
      	(find_invariant_insn): Likewise.
      	(record_uses): Likewise.
      	(find_invariants_insn): Likewise.
      	(find_invariants_bb): Likewise for local "insn".
      	(get_pressure_class_and_nregs): Likewise for param "insn".
      	(calculate_loop_reg_pressure): Likewise for local "insn".
      
      From-SVN: r214343
      David Malcolm committed
    • loop-doloop.c: Use rtx_insn in a few places · 871eb193
      gcc/
      	* loop-doloop.c (doloop_valid_p): Strengthen local "insn" from rtx
      	to rtx_insn *.
      	(add_test): Likewise for locals "seq", "jump".
      	(doloop_modify): Likewise for locals "sequence", "jump_insn".
      
      From-SVN: r214342
      David Malcolm committed
    • jump.c: Use rtx_insn in a few places (also touches rtl.h and cfgexpand.c) · b47f38a5
      gcc/
      	* rtl.h (rebuild_jump_labels): Strengthen param "f" from rtx to
      	rtx_insn *.
      	(rebuild_jump_labels_chain): Likewise for param "chain".
      
      	* cfgexpand.c (pass_expand::execute): Add checked cast to
      	rtx_insn * when calling rebuild_jump_labels_chain in region where
      	we know e->insns.r is non-NULL.
      
      	* jump.c (rebuild_jump_labels_1): Strengthen param "f" from rtx to
      	rtx_insn *.
      	(rebuild_jump_labels): Likewise.
      	(rebuild_jump_labels_chain): Likewise for param "chain".
      	(cleanup_barriers): Likewise for locals "insn", "next", "prev".
      	(init_label_info): Likewise for param "f".
      	(maybe_propagate_label_ref): Likewise for params "jump_insn",
      	"prev_nonjump_insn".
      	(mark_all_labels): Likewise for param "f" and locals "insn",
      	"prev_nonjump_insn".
      
      From-SVN: r214341
      David Malcolm committed
    • ira: Use rtx_insn in various places · 070a1983
      gcc/
      	* ira-int.h (struct ira_allocno_copy): Strengthen field "insn"
      	from rtx to rtx_insn *insn.
      	(ira_create_copy): Strengthen param "insn" from rtx to rtx_insn *.
      	(ira_add_allocno_copy): Likewise.
      	* ira-build.c (find_allocno_copy): Strengthen param "insn" from
      	rtx to rtx_insn *.
      	(ira_create_copy): Likewise.
      	(ira_add_allocno_copy): Likewise.
      	(create_bb_allocnos): Likewise for local "insn".
      	* ira-conflicts.c (process_regs_for_copy): Likewise for param "insn".
      	(process_reg_shuffles): Update NULL_RTX to NULL in invocation of
      	process_regs_for_copy for rtx_insn * param.
      	(add_insn_allocno_copies): Strengthen param "insn" from rtx to
      	rtx_insn *insn.  Update NULL_RTX to NULL in invocation of
      	process_regs_for_copy for rtx_insn * param.
      	(add_copies): Strengthen local "insn" from rtx to rtx_insn *insn.
      	* ira-costs.c (record_reg_classes): Likewise for param "insn".
      	(record_operand_costs): Likewise.
      	(scan_one_insn): Likewise for return type, and for param "insn".
      	(process_bb_for_costs): Likewise for local "insn".
      	(process_bb_node_for_hard_reg_moves): Likewise.
      	* ira-emit.c (struct move): Likewise for field "insn".
      	(create_move): Eliminate use of NULL_RTX when dealing with an
      	rtx_insn *.
      	(emit_move_list): Strengthen return type and locals "result",
      	"insn" from rtx to rtx_insn *insn.
      	(emit_moves): Likewise for locals "insns", "tmp".
      	(ira_emit): Likewise for local "insn".
      	* ira-lives.c (mark_hard_reg_early_clobbers): Likewise for param
      	"insn".
      	(find_call_crossed_cheap_reg): Likewise.
      	(process_bb_node_lives): Likewise for local "insn".
      	* ira.c (decrease_live_ranges_number): Likewise.
      	(compute_regs_asm_clobbered): Likewise.
      	(build_insn_chain): Likewise.
      	(find_moveable_pseudos): Likewise, also locals "def_insn",
      	"use_insn", "x".  Also strengthen local "closest_uses" from rtx *
      	to rtx_insn **.  Add a checked cast when assigning from
      	"closest_use" into closest_uses array in a region where we know
      	it's a non-NULL insn.
      	(interesting_dest_for_shprep): Strengthen param "insn" from rtx
      	to rtx_insn *.
      	(split_live_ranges_for_shrink_wrap): Likewise for locals "insn",
      	"last_interesting_insn", "uin".
      	(move_unallocated_pseudos): Likewise for locals "def_insn",
      	"move_insn", "newinsn".
      
      From-SVN: r214339
      David Malcolm committed
    • internal-fn.c: Use rtx_insn and rtx_code_label · da664544
      gcc/
      	* internal-fn.c (ubsan_expand_si_overflow_addsub_check):
      	Strengthen locals "done_label", "do_error" from rtx to
      	rtx_code_label *.
      	(ubsan_expand_si_overflow_addsub_check): Strengthen local "last"
      	from rtx to rtx_insn *.  Strengthen local "sub_check from rtx to
      	rtx_code_label *.
      	(ubsan_expand_si_overflow_neg_check): Likewise for locals
      	"done_label", "do_error" to rtx_code_label * and local  "last" to
      	rtx_insn *.
      	(ubsan_expand_si_overflow_mul_check): Likewise for locals
      	"done_label", "do_error", "large_op0", "small_op0_large_op1",
      	"one_small_one_large", "both_ops_large", "after_hipart_neg",
      	"after_lopart_neg", "do_overflow", "hipart_different"  to
      	rtx_code_label * and local  "last" to rtx_insn *.
      
      From-SVN: r214338
      David Malcolm committed
    • init-regs.c: Use rtx_insn · 44bd2006
      gcc/
      	* init-regs.c (initialize_uninitialized_regs): Strengthen locals
      	"insn" and "move_insn" from rtx to rtx_insn *.
      
      From-SVN: r214337
      David Malcolm committed
    • ifcvt.c: Use rtx_insn · e6ae24bc
      gcc/
      	* ifcvt.c (count_bb_insns): Strengthen local "insn" from rtx to
      	rtx_insn *.
      	(cheap_bb_rtx_cost_p): Likewise.
      	(first_active_insn): Likewise for return type and local "insn".
      	(last_active_insn):  Likewise for return type and locals "insn",
      	"head".
      	(struct noce_if_info): Likewise for fields "jump", "insn_a",
      	"insn_b".
      	(end_ifcvt_sequence): Likewise for return type and locals "insn",
      	"seq".
      	(noce_try_move): Likewise for local "seq".
      	(noce_try_store_flag): Likewise.
      	(noce_try_store_flag_constants): Likewise.
      	(noce_try_addcc): Likewise.
      	(noce_try_store_flag_mask): Likewise.
      	(noce_try_cmove): Likewise.
      	(noce_try_minmax): Likewise.
      	(noce_try_abs): Likewise.
      	(noce_try_sign_mask): Likewise.
      	(noce_try_bitop): Likewise.
      	(noce_can_store_speculate_p): Likewise for local "insn".
      	(noce_process_if_block): Likewise for locals "insn_a", "insn_b",
      	seq".
      	(check_cond_move_block): Likewise for local "insn".
      	(cond_move_convert_if_block): Likewise.
      	(cond_move_process_if_block): Likewise for locals "seq",
      	"loc_insn".
      	(noce_find_if_block): Likewise for local "jump".
      	(merge_if_block): Likewise for local "last".
      	(block_jumps_and_fallthru_p): Likewise for locals "insn", "end".
      	(find_cond_trap): Likewise for locals "trap", "jump", "newjump".
      	(block_has_only_trap): Likewise for return type and local "trap".
      	(find_if_case_1): Likewise for local "jump".
      	(dead_or_predicable): Likewise for locals "head", "end", "jump",
      	"insn".
      
      From-SVN: r214335
      David Malcolm committed
    • hw-doloop: Use rtx_insn (touches config/bfin/bfin.c) · da76d746
      gcc/
      	* hw-doloop.h (struct hwloop_info_d): Strengthen fields
      	"last_insn", "loop_end" from rtx to rtx_insn *.
      
      	* hw-doloop.c (scan_loop): Likewise for local "insn".
      	(discover_loop): Likewise for param "tail_insn".
      	(discover_loops): Likewise for local "tail".
      
      	* config/bfin/bfin.c (hwloop_optimize): For now, add a checked
      	cast to rtx_insn * when assigning from an rtx local to a
      	hwloop_info's "last_insn" field.
      
      From-SVN: r214334
      David Malcolm committed
    • re PR c++/62129 (internal compiler error: in output_constant, at varasm.c:4755) · 2d7d7f0f
      	PR c++/62129
      	* class.c (outermost_open_class): New.
      	* cp-tree.h: Declare it.
      	* decl.c (maybe_register_incomplete_var): Use it.
      	(complete_vars): Handle any constant variable.
      	* expr.c (cplus_expand_constant): Handle CONSTRUCTOR.
      
      From-SVN: r214333
      Jason Merrill committed
    • haifa-sched.c: Use rtx_insn · 9b517712
      gcc/
      	* haifa-sched.c (bb_header): Strengthen from rtx * to rtx_insn **.
      	(add_delay_dependencies): Strengthen local "pro" from rtx to
      	rtx_insn *.
      	(recompute_todo_spec): Likewise.
      	(dep_cost_1): Likewise for locals "insn", "used".
      	(schedule_insn): Likewise for local "dbg".
      	(schedule_insn): Likewise for locals "pro", "next".
      	(unschedule_insns_until): Likewise for local "con".
      	(restore_pattern): Likewise for local "next".
      	(estimate_insn_tick): Likewise for local "pro".
      	(resolve_dependencies): Likewise for local "next".
      	(fix_inter_tick): Likewise.
      	(fix_tick_ready): Likewise for local "pro".
      	(add_to_speculative_block): Likewise for locals "check", "twin",
      	"pro".
      	(sched_extend_bb): Likewise for locals "end", "insn".
      	(init_before_recovery): Likewise for local "x".
      	(sched_create_recovery_block): Likewise for local "barrier".
      	(create_check_block_twin): Likewise for local "pro".
      	(fix_recovery_deps): Likewise for locals "note", "insn", "jump",
      	"consumer".
      	(unlink_bb_notes): Update for change to type of bb_header.
      	Strengthen locals "prev", "label", "note", "next" from rtx to
      	rtx_insn *.
      	(clear_priorities): Likewise for local "pro".
      
      From-SVN: r214332
      David Malcolm committed
    • gcse.c: Use rtx_insn · cf92a178
      gcc/
      	* gcse.c (struct occr): Strengthen field "insn" from rtx to
      	rtx_insn *.
      	(test_insn): Likewise for this global.
      	(oprs_unchanged_p): Strengthen param "insn" from const_rtx to
      	const rtx_insn *.
      	(oprs_anticipatable_p): Likewise.
      	(oprs_available_p): Likewise.
      	(insert_expr_in_table): Strengthen param "insn" from  rtx to
      	rtx_insn *.
      	(hash_scan_set): Likewise.
      	(hash_scan_clobber): Likewise.
      	(hash_scan_call): Likewise.
      	(hash_scan_insn): Likewise.
      	(compute_hash_table_work): Likewise for local "insn".
      	(process_insert_insn): Likewise for return type and local "pat".
      	(insert_insn_end_basic_block): Likewise for locals "new_insn",
      	"pat", "pat_end", "maybe_cc0_setter".
      	(pre_edge_insert): Likewise for local "insn".
      	(pre_insert_copy_insn): Likewise for param "insn".
      	(pre_insert_copies): Likewise for local "insn".
      	(struct set_data): Likewise for field "insn".
      	(single_set_gcse): Likewise for param "insn".
      	(gcse_emit_move_after): Likewise.
      	(pre_delete): Likewise for local "insn".
      	(update_bb_reg_pressure): Likewise for param "from" and local
      	"insn".
      	(should_hoist_expr_to_dom): Likewise for param "from".
      	(hoist_code): Likewise for local "insn".
      	(get_pressure_class_and_nregs): Likewise for param "insn".
      	(calculate_bb_reg_pressure): Likewise for local "insn".
      	(compute_ld_motion_mems): Likewise.
      
      From-SVN: r214331
      David Malcolm committed
    • genpeep.c: peephole requires an rtx_insn · ced9924c
      gcc/
      	* genpeep.c (main): Rename param back from "uncast_ins1" to
      	"ins1", strengthening from rtx to rtx_insn *.  Drop now-redundant
      	checked cast.
      
      	* output.h (peephole): Strengthen param from rtx to rtx_insn *.
      
      From-SVN: r214330
      David Malcolm committed
    • re PR target/62195 (Invalid mnemonic 'xxlxor' on powerpc-apple-darwin9 with -m64) · f1481c0f
      2014-08-22  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/62195
      	* doc/md.texi (Machine Constraints): Update PowerPC wi constraint
      	documentation to state it is only for VSX operations.
      
      	* config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Make wi
      	constraint only active if VSX.
      
      	* config/rs6000/rs6000.md (lfiwax): Use wj constraint instead of
      	wi cosntraint for ISA 2.07 lxsiwax/lxsiwzx instructions.
      	(lfiwzx): Likewise.
      
      From-SVN: r214329
      Michael Meissner committed
    • fwprop.c: Use rtx_insn · d362bd85
      gcc/
      	* fwprop.c (single_def_use_dom_walker::before_dom_children):
      	Strengthen local "insn" from rtx to rtx_insn *.
      	(use_killed_between): Likewise for param "target_insn".
      	(all_uses_available_at): Likewise for param "target_insn" and
      	local "next".
      	(update_df_init): Likewise for params "def_insn", "insn".
      	(update_df): Likewise for param "insn".
      	(try_fwprop_subst): Likewise for param "def_insn" and local
      	"insn".
      	(free_load_extend): Likewise for param "insn".
      	(forward_propagate_subreg): Likewise for param "def_insn" and
      	local "use_insn".
      	(forward_propagate_asm): Likewise for param "def_insn" and local
      	"use_insn".
      	(forward_propagate_and_simplify): Likewise for param "def_insn"
      	and local "use_insn".
      	(forward_propagate_into): Likewise for locals "def_insn" and
      	"use_insn".
      
      From-SVN: r214328
      David Malcolm committed
    • function.c: Use rtx_insn · 691fe203
      gcc/
      	* function.c (emit_initial_value_sets): Strengthen local "seq"
      	from rtx to rtx_insn *.
      	(instantiate_virtual_regs_in_insn): Likewise for param "insn" and
      	local "seq".
      	(instantiate_virtual_regs): Likewise for local "insn".
      	(assign_parm_setup_reg): Likewise for locals "linsn", "sinsn".
      	(reorder_blocks_1): Likewise for param "insns" and local "insn".
      	(expand_function_end): Likewise for locals "insn" and "seq".
      	(epilogue_done): Likewise for local "insn".
      	(thread_prologue_and_epilogue_insns): Likewise for locals "prev",
      	"last", "trial".
      	(reposition_prologue_and_epilogue_notes): Likewise for locals
      	"insn", "last", "note", "first".
      	(match_asm_constraints_1): Likewise for param "insn" and local "insns".
      	(pass_match_asm_constraints::execute): Likewise for local "insn".
      
      From-SVN: r214327
      David Malcolm committed
    • final.c: Use rtx_insn (also touches output.c and config/arc/arc.c) · fa7af581
      gcc/
      	* output.h (final_scan_insn): Strengthen return type from rtx to
      	rtx_insn *.
      	(final_forward_branch_p): Likewise for param.
      	(current_output_insn): Likewise for this global.
      
      	* final.c (rtx debug_insn): Likewise for this variable.
      	(current_output_insn): Likewise.
      	(get_attr_length_1): Rename param "insn" to "uncast_insn",
      	adding "insn" back in as an rtx_insn * with a checked cast, so
      	that macro ADJUST_INSN_LENGTH can be passed an rtx_insn * as the
      	first param.
      	(compute_alignments): Strengthen local "label" from rtx to
      	rtx_insn *.
      	(shorten_branches): Rename param from "first" to "uncast_first",
      	introducing a new local rtx_insn * "first" using a checked cast to
      	effectively strengthen "first" from rtx to rtx_insn * without
      	affecting the type signature.  Strengthen locals "insn", "seq",
      	"next", "label" from rtx to rtx_insn *.
      	(change_scope): Strengthen param "orig_insn" and local "insn" from
      	rtx to rtx_insn *.
      	(final_start_function): Rename param from "first" to "uncast_first",
      	introducing a new local rtx_insn * "first" using a checked cast to
      	effectively strengthen "first" from rtx to rtx_insn * without
      	affecting the type signature.  Strengthen local "insn" from rtx to
      	rtx_insn *.
      	(dump_basic_block_info): Strengthen param "insn" from rtx to
      	rtx_insn *.
      	(final): Rename param from "first" to "uncast_first",
      	introducing a new local rtx_insn * "first" using a checked cast to
      	effectively strengthen "first" from rtx to rtx_insn * without
      	affecting the type signature.  Strengthen locals "insn", "next"
      	from rtx to rtx_insn *.
      	(output_alternate_entry_point): Strengthen param "insn" from rtx to
      	rtx_insn *.
      	(call_from_call_insn): Strengthen param "insn" from rtx to
      	rtx_call_insn *.
      	(final_scan_insn): Rename param from "insn" to "uncast_insn",
      	introducing a new local rtx_insn * "insn" using a checked cast to
      	effectively strengthen "insn" from rtx to rtx_insn * without
      	affecting the type signature.  Strengthen return type and locals
      	"next", "note", "prev", "new_rtx" from rtx to rtx_insn *.  Remove
      	now-redundant checked cast to rtx_insn * from both invocations of
      	debug_hooks->var_location.  Convert CALL_P into a dyn_cast,
      	introducing a local "call_insn" for use when invoking
      	call_from_call_insn.
      	(notice_source_line): Strengthen param "insn" from rtx to
      	rtx_insn *.
      	(leaf_function_p): Likewise for local "insn".
      	(final_forward_branch_p): Likewise.
      	(leaf_renumber_regs): Likewise for param "first".
      	(rest_of_clean_state): Likewise for locals "insn" and "next".
      	(self_recursive_call_p): Likewise for param "insn".
      	(collect_fn_hard_reg_usage): Likewise for local "insn".
      	(get_call_fndecl): Likewise for param "insn".
      	(get_call_cgraph_rtl_info): Likewise.
      	(get_call_reg_set_usage): Rename param from "insn" to "uncast_insn",
      	introducing a new local rtx_insn * "insn" using a checked cast to
      	effectively strengthen "insn" from rtx to rtx_insn * without
      	affecting the type signature.
      
      	* config/arc/arc.c (arc_final_prescan_insn): For now, add checked
      	cast when assigning from param "insn" to current_output_insn.
      	(arc_pad_return): Strengthen local "insn" from rtx to rtx_insn *
      	so that we can assign it back to current_output_insn.
      
      From-SVN: r214326
      David Malcolm committed
    • avr-mcus.def: Remove atmega26hvg... · 836fca28
      	* config/avr/avr-mcus.def: Remove atmega26hvg, atmega64rfa2,
      	atmega48hvf, atxmega32x1, atmxt224, atmxt224e, atmxt336s,
      	atmxt540s and atmxt540sreva devices.
      	* config/avr/avr-tables.opt: Regenerate.
      	* config/avr/t-multilib: Regenerate.
      	* doc/avr-mmcu.texi: Regenerate.
      
      From-SVN: r214325
      Pitchumani Sivanupandi committed
    • expr.c: Use rtx_insn and rtx_code_label · 770affca
      gcc/
      	* expr.c (convert_move): Strengthen local "insns" from rtx to
      	rtx_insn *.
      	(emit_block_move_via_loop): Strengthen locals "cmp_label" and
      	"top_label" from rtx to rtx_code_label *.
      	(move_block_to_reg): Strengthen local "insn", "last" from rtx to
      	rtx_insn *.
      	(emit_single_push_insn): Likewise for locals "prev", "last".
      	(store_expr): Strengthen locals "lab1", "lab2", "label" from rtx
      	to rtx_code_label *.
      	(store_constructor): Likewise for locals "loop_start", "loop_end".
      	(expand_cond_expr_using_cmove): Strengthen local "seq" from rtx to
      	rtx_insn *.
      	(expand_expr_real_2): Likewise.
      	(expand_expr_real_1): Strengthen local "label" from rtx to
      	rtx_code_label *.
      
      From-SVN: r214324
      David Malcolm committed
    • expmed.c: Use rtx_insn and rtx_code_label · f3f6fb16
      gcc/
      	* expmed.c (store_bit_field_using_insv): Strengthen local "last"
      	from rtx to rtx_insn *.
      	(store_bit_field_1): Likewise.
      	(extract_bit_field_1): Likewise.
      	(expand_mult_const): Likewise for local "insns".
      	(expmed_mult_highpart): Strengthen local "label" from rtx to
      	rtx_code_label *.
      	(expand_smod_pow2): Likewise.
      	(expand_sdiv_pow2): Likewise.
      	(expand_divmod): Strengthen locals "last", "insn" from rtx to
      	rtx_insn *.  Strengthen locals "label", "label1", "label2",
      	"label3", "label4", "label5", "lab" from rtx to rtx_code_label *.
      	(emit_cstore): Strengthen local "last" from rtx to rtx_insn *.
      	(emit_store_flag): Likewise.
      	(emit_store_flag_force): Strengthen local "label" from rtx to
      	rtx_code_label *.
      	(do_cmp_and_jump): Likewise for param "label".
      
      From-SVN: r214323
      David Malcolm committed
    • explow.c: Use rtx_insn and rtx_code_label · 528a80c1
      gcc/
      	* explow.c (force_reg): Strengthen local "insn" from rtx to
      	rtx_insn *.
      	(adjust_stack_1): Likewise.
      	(allocate_dynamic_stack_space): Likewise.  Strengthen locals
      	"final_label", "available_label", "space_available" from rtx to
      	rtx_code_label *.
      	(probe_stack_range): Likewise for locals "loop_lab", "end_lab".
      	(anti_adjust_stack_and_probe): Likewise.
      
      From-SVN: r214322
      David Malcolm committed
    • except.*: Use rtx_insn (also touches function.h) · f8b23302
      gcc/
      	* except.h (sjlj_emit_function_exit_after): Strengthen param
      	"after" from rtx to rtx_insn *.  This is only called with
      	result of get_last_insn (in function.c) so type-change should be
      	self-contained.
      
      	* function.h (struct rtl_eh): Strengthen field "ehr_label" from
      	rtx to rtx_code_label *, and field "sjlj_exit_after" from rtx
      	to rtx_insn *.  These fields are only used from except.c so this
      	type-change should be self-contained to this patch.
      
      	* except.c (emit_to_new_bb_before): Strengthen param "seq" and
      	local "last" from rtx to rtx_insn *.
      	(dw2_build_landing_pads): Likewise for local "seq".
      	(sjlj_mark_call_sites): Likewise for locals "insn", "before", p".
      	(sjlj_emit_function_enter): Strengthen param "dispatch_label" from
      	rtx to rtx_code_label *.  Strengthen locals "fn_begin", "seq" from
      	rtx to rtx_insn *.
      	(sjlj_emit_function_exit_after): Strengthen param "after" from rtx
      	to rtx_insn *.
      	(sjlj_emit_function_exit): Likewise for locals "seq", "insn".
      	(sjlj_emit_dispatch_table): Likewise for locals "seq", "seq2".
      	(sjlj_build_landing_pads): Replace NULL_RTX with NULL when
      	referring to an insn.  Strengthen local "dispatch_label" from
      	rtx to rtx_code_label *.
      	(set_nothrow_function_flags): Strengthen local "insn" from rtx to
      	rtx_insn *.
      	(expand_eh_return): Strengthen local "around_label" from
      	rtx to rtx_code_label *.
      	(convert_to_eh_region_ranges): Strengthen locals "iter",
      	"last_action_insn", "first_no_action_insn",
      	"first_no_action_insn_before_switch",
      	"last_no_action_insn_before_switch", from rtx to rtx_insn *.
      
      From-SVN: r214321
      David Malcolm committed
    • dwarf2out.c: Use rtx_insn · cff08b2b
      gcc/
      	* dwarf2out.c (last_var_location_insn): Strengthen this variable
      	from rtx to rtx_insn *.
      	(cached_next_real_insn): Likewise.
      	(dwarf2out_end_epilogue): Replace use of NULL_RTX with NULL when
      	working with insns.
      	(dwarf2out_var_location): Strengthen locals "next_real",
      	"next_note", "expected_next_loc_note", "last_start", "insn" from
      	rtx to rtx_insn *.
      
      From-SVN: r214320
      David Malcolm committed
    • dwarf2cfi.c: Use rtx_insn · f65c531e
      gcc/
      	* dwarf2cfi.c (add_cfis_to_fde): Strengthen locals "insn", "next"
      	from rtx to rtx_insn *.
      	(create_pseudo_cfg): Likewise for local "insn".
      
      From-SVN: r214319
      David Malcolm committed
    • df-*.c: Use rtx_insn · dd3eed93
      gcc/
      	* df-core.c (df_bb_regno_first_def_find): Strengthen local "insn"
      	from rtx to rtx_insn *.
      	(df_bb_regno_last_def_find): Likewise.
      
      	* df-problems.c (df_rd_bb_local_compute): Likewise.
      	(df_lr_bb_local_compute): Likewise.
      	(df_live_bb_local_compute): Likewise.
      	(df_chain_remove_problem): Likewise.
      	(df_chain_create_bb): Likewise.
      	(df_word_lr_bb_local_compute): Likewise.
      	(df_remove_dead_eq_notes): Likewise for param "insn".
      	(df_note_bb_compute): Likewise for local "insn".
      	(simulate_backwards_to_point): Likewise.
      	(df_md_bb_local_compute): Likewise.
      
      	* df-scan.c (df_scan_free_bb_info): Likewise.
      	(df_scan_start_dump): Likewise.
      	(df_scan_start_block): Likewise.
      	(df_install_ref_incremental): Likewise for local "insn".
      	(df_insn_rescan_all): Likewise.
      	(df_reorganize_refs_by_reg_by_insn): Likewise.
      	(df_reorganize_refs_by_insn_bb): Likewise.
      	(df_recompute_luids): Likewise.
      	(df_bb_refs_record): Likewise.
      	(df_update_entry_exit_and_calls): Likewise.
      	(df_bb_verify): Likewise.
      
      From-SVN: r214318
      David Malcolm committed
    • ddg: Use rtx_insn · 9774f20d
      gcc/
      	* ddg.h (struct ddg_node): Strengthen fields "insn" and
      	"first_note" from rtx to rtx_insn *.
      	(get_node_of_insn): Likewise for param 2 "insn".
      	(autoinc_var_is_used_p): Likewise for params "def_insn" and "use_insn".
      
      	* ddg.c (mem_read_insn_p): Strengthen param "insn" from rtx to
      	rtx_insn *.
      	(mem_write_insn_p): Likewise.
      	(mem_access_insn_p): Likewise.
      	(autoinc_var_is_used_p): Likewise for params "def_insn" and "use_insn".
      	(def_has_ccmode_p): Likewise for param "insn".
      	(add_cross_iteration_register_deps): Likewise for locals
      	"def_insn" and "use_insn".
      	(insns_may_alias_p): Likewise for params "insn1" and "insn2".
      	(build_intra_loop_deps): Likewise for local "src_insn".
      	(create_ddg): Strengthen locals "insn" and "first_note" from rtx
      	to rtx_insn *.
      	(get_node_of_insn): Likewise for param "insn".
      
      From-SVN: r214317
      David Malcolm committed
    • dce.c: Use rtx subclasses · 0ece9321
      gcc/
      	* dce.c (worklist): Strengthen from vec<rtx> to vec<rtx_insn *>.
      	(deletable_insn_p): Strengthen param "insn" from rtx to
      	rtx_insn *.  Add checked cast to rtx_call_insn when invoking
      	find_call_stack_args, since this is guarded by CALL_P (insn).
      	(marked_insn_p): Strengthen param "insn" from rtx to
      	rtx_insn *.
      	(mark_insn): Likewise.  Add checked cast to rtx_call_insn when
      	invoking find_call_stack_args, since this is guarded by
      	CALL_P (insn).
      	(mark_nonreg_stores_1): Strengthen cast of "data" from rtx to
      	rtx_insn *; we know this is an insn since this was called by
      	mark_nonreg_stores.
      	(mark_nonreg_stores_2): Likewise.
      	(mark_nonreg_stores): Strengthen param "insn" from rtx to
      	rtx_insn *.
      	(find_call_stack_args): Strengthen param "call_insn" from rtx to
      	rtx_call_insn *; strengthen locals "insn" and "prev_insn" from rtx
      	to rtx_insn *.
      	(remove_reg_equal_equiv_notes_for_defs): Strengthen param "insn"
      	from rtx to rtx_insn *.
      	(reset_unmarked_insns_debug_uses): Likewise for locals "insn",
      	"next", "ref_insn".
      	(delete_unmarked_insns): Likewise for locals "insn", "next".
      	(prescan_insns_for_dce): Likewise for locals "insn", "prev".
      	(mark_reg_dependencies): Likewise for param "insn".
      	(rest_of_handle_ud_dce): Likewise for local "insn".
      	(word_dce_process_block): Likewise.
      	(dce_process_block): Likewise.
      
      From-SVN: r214316
      David Malcolm committed