alias.c (mark_constant_function): Use INSN_P.

* alias.c (mark_constant_function): Use INSN_P.
	(init_alias_analysis): Likewise.
	* combine.c (combine_instructions): Use INSN_P.
	(can_combine_p): Likewise.
	(try_combine): Likewise.
	(distribute_notes): Likewise.
	(distribute_links): Likewise.
	* cse.c (cse_around_loop): Use INSN_P.
	(invalidate_skipped_block): Likewise.
	(cse_set_around_loop): Likewise.
	(cse_end_of_basic_block): Likewise.
	(delete_trivially_dead_insns): Likewise.
	* emit-rtl.c (unshare_all_rtl_again): Use INSN_P.
	(unshare_all_rtl_1): Likewise.
	(next_cc0_user): Likewise.
	(try_split make_insn_raw): Likewise.
	(remove_unnecessary_notes): Likewise.
	* final.c (shorten_branches): Use INSN_P.
	(leaf_renumber_regs): Likewise.
	(leaf_renumber_regs_insn): Likewise.
	* flow.c (find_label_refs): Use INSN_P.
	(verify_wide_reg): Likewise.
	(notice_stack_pointer_modification): Likewise.
	(count_or_remove_death_notes): Likewise.
	(verify_flow_info): Likewise.
	(clear_log_links): Likewise.
	* function.c (fixup_var_refs_insns): Use INSN_P.
	(compute_insns_for_mem): Likewise.
	* gcse.c (alloc_gcse_mem): Use INSN_P.
	(compute_sets): Likewise.
	(compute_hash_table): Likewise.
	(classic_gcse): Likewise.
	(cprop): Likewise.
	(insert_insn_end_bb): Likewise.
	(delete_null_pointer_checks_1): Likewise.
	* global.c (expand_preferences): Use INSN_P.
	(build_insn_chain): Likewise.
	* graph.c (node_data): Use INSN_P.
	* haifa-sched.c (priority): Use INSN_P.
	(rm_line_notes): Likewise.
	(rm_other_notes): Likewise.
	(find_insn_reg_weight): Likewise.
	(init_target_units): Likewise.
	(schedule_block): Likewise.
	(compute_block_forward_dependences): Likewise.
	(debug_dependencies): Likewise.
	(set_priorities): Likewise.
	* integrate.c (function_cannot_inline_p): Use INSN_P.
	(save_parm_insns): Likewise.
	(copy_insn_list): Likewise.
	* jump.c (mark_all_labels): Use INSN_P.
	(never_reached_warning): Likewise.
	* lcm.c (optimize_mode_switching): Use INSN_P.
	* local-alloc.c (validate_equiv_mem): Use INSN_P.
	(memref_used_between_p): Likewise.
	(update_equiv_regs): Likewise.
	(block_alloc): Likewise.
	(no_conflict_p): Likewise.
	* loop.c (scan_loop): Use INSN_P.
	(find_and_verify_loops): Likewise.
	(count_loop_regs_set): Likewise.
	(loop_reg_used_before_p): Likewise.
	(strength_reduce): Likewise.
	(recombine_givs): Likewise.
	(check_dbra_loop): Likewise.
	(load_mems): Likewise.
	(try_copy_prop): Likewise.
	* print-rtl.c (print_rtx): Use INSN_P.
	* recog.c (find_single_use): Use INSN_P.
	* reg-stack.c (stack_regs_mentioned): Use INSN_P.
	(next_flags_user): Likewise.
	(swap_rtx_condition): Likewise.
	* regmove.c (mark_flags_life_zones): Use INSN_P.
	(optimize_reg_copy_1): Likewise.
	(optimize_reg_copy_2): Likewise.
	(optimize_reg_copy_3): Likewise.
	(reg_is_remote_constant_p): Likewise.
	(fixup_match_2): Likewise.
	(regmove_optimize): Likewise.
	(fixup_match_1): Likewise.
	* regrename.c (build_def_use): Use INSN_P.
	(replace_reg_in_block): Likewise.
	(consider_use): Likewise.
	* reload.c (find_equiv_reg): Use INSN_P.
	* reload1.c (reload): Use INSN_P.
	(maybe_fix_stack_asms): Likewise.
	(calculate_needs_all_insns): Likewise.
	(reload_as_needed): Likewise.
	(emit_output_reload_insns): Likewise.
	(delete_address_reloads_1): Likewise.
	(reload_cse_regs_1): Likewise.
	(reload_combine): Likewise.
	(reload_cse_move2add): Likewise.
	* reorg.c (redundant_insn): Use INSN_P.
	(dbr_schedule): Likewise.
	* resource.c (find_dead_or_set_registers): Use INSN_P.
	(mark_target_live_regs): Likewise.
	* rtlanal.c (reg_used_between_p): Use INSN_P.
	(reg_referenced_between_p): Likewise.
	(reg_set_between_p): Likewise.
	(reg_set_p): Likewise.
	(single_set): Likewise.
	(multiple_sets): Likewise.
	(find_last_value): Likewise.
	(reg_set_last): Likewise.
	(find_reg_note): Likewise.
	(find_regno_note): Likewise.
	* sibcall.c (sequence_uses_addressof): Use INSN_P.
	* simplify-rtx.c (cselib_process_insn): Use INSN_P.
	* ssa.c (find_evaluations): Use INSN_P.
	(rename_block): Likewise.
	(rename_equivalent_regs): Likewise.
	* unroll.c (loop_find_equiv_value): Use INSN_P.
	(set_dominates_use): Likewise.
	* varasm.c (mark_constant_pool): Use INSN_P.
	(mark_constants): Likewise.
	* config/alpha/alpha.c (alpha_does_function_need_gp): Use INSN_P.
	(alphaev4_next_group): Likewise.
	(alphaev5_next_group): Likewise.
	* config/c4x/c4x.c (c4x_process_after_reload): Use INSN_P.
	(c4x_rptb_rpts_p): Likewise.
	* config/mips/mips.c (mips16_optimize_gp): Use INSN_P.
	* config/rs6000/rs6000.c (uses_TOC): Use INSN_P.
	(rs6000_adjust_priority): Likewise.
	* config/sh/sh.c (sh_loop_align): Use INSN_P.
	(machine_dependent_reorg): Likewise.
	(split_branches): Likewise.
	* config/tahoe/tahoe.c (tahoe_cmp_check): Use INSN_P.

From-SVN: r35494
This commit is contained in:
Rodney Brown 2000-08-04 20:28:08 +00:00 committed by Jeff Law
parent 54e1d3a6a9
commit 2c3c49dec3
38 changed files with 311 additions and 211 deletions

View File

@ -1,3 +1,134 @@
2000-08-04 Rodney Brown <RodneyBrown@pmsc.com>
* alias.c (mark_constant_function): Use INSN_P.
(init_alias_analysis): Likewise.
* combine.c (combine_instructions): Use INSN_P.
(can_combine_p): Likewise.
(try_combine): Likewise.
(distribute_notes): Likewise.
(distribute_links): Likewise.
* cse.c (cse_around_loop): Use INSN_P.
(invalidate_skipped_block): Likewise.
(cse_set_around_loop): Likewise.
(cse_end_of_basic_block): Likewise.
(delete_trivially_dead_insns): Likewise.
* emit-rtl.c (unshare_all_rtl_again): Use INSN_P.
(unshare_all_rtl_1): Likewise.
(next_cc0_user): Likewise.
(try_split make_insn_raw): Likewise.
(remove_unnecessary_notes): Likewise.
* final.c (shorten_branches): Use INSN_P.
(leaf_renumber_regs): Likewise.
(leaf_renumber_regs_insn): Likewise.
* flow.c (find_label_refs): Use INSN_P.
(verify_wide_reg): Likewise.
(notice_stack_pointer_modification): Likewise.
(count_or_remove_death_notes): Likewise.
(verify_flow_info): Likewise.
(clear_log_links): Likewise.
* function.c (fixup_var_refs_insns): Use INSN_P.
(compute_insns_for_mem): Likewise.
* gcse.c (alloc_gcse_mem): Use INSN_P.
(compute_sets): Likewise.
(compute_hash_table): Likewise.
(classic_gcse): Likewise.
(cprop): Likewise.
(insert_insn_end_bb): Likewise.
(delete_null_pointer_checks_1): Likewise.
* global.c (expand_preferences): Use INSN_P.
(build_insn_chain): Likewise.
* graph.c (node_data): Use INSN_P.
* haifa-sched.c (priority): Use INSN_P.
(rm_line_notes): Likewise.
(rm_other_notes): Likewise.
(find_insn_reg_weight): Likewise.
(init_target_units): Likewise.
(schedule_block): Likewise.
(compute_block_forward_dependences): Likewise.
(debug_dependencies): Likewise.
(set_priorities): Likewise.
* integrate.c (function_cannot_inline_p): Use INSN_P.
(save_parm_insns): Likewise.
(copy_insn_list): Likewise.
* jump.c (mark_all_labels): Use INSN_P.
(never_reached_warning): Likewise.
* lcm.c (optimize_mode_switching): Use INSN_P.
* local-alloc.c (validate_equiv_mem): Use INSN_P.
(memref_used_between_p): Likewise.
(update_equiv_regs): Likewise.
(block_alloc): Likewise.
(no_conflict_p): Likewise.
* loop.c (scan_loop): Use INSN_P.
(find_and_verify_loops): Likewise.
(count_loop_regs_set): Likewise.
(loop_reg_used_before_p): Likewise.
(strength_reduce): Likewise.
(recombine_givs): Likewise.
(check_dbra_loop): Likewise.
(load_mems): Likewise.
(try_copy_prop): Likewise.
* print-rtl.c (print_rtx): Use INSN_P.
* recog.c (find_single_use): Use INSN_P.
* reg-stack.c (stack_regs_mentioned): Use INSN_P.
(next_flags_user): Likewise.
(swap_rtx_condition): Likewise.
* regmove.c (mark_flags_life_zones): Use INSN_P.
(optimize_reg_copy_1): Likewise.
(optimize_reg_copy_2): Likewise.
(optimize_reg_copy_3): Likewise.
(reg_is_remote_constant_p): Likewise.
(fixup_match_2): Likewise.
(regmove_optimize): Likewise.
(fixup_match_1): Likewise.
* regrename.c (build_def_use): Use INSN_P.
(replace_reg_in_block): Likewise.
(consider_use): Likewise.
* reload.c (find_equiv_reg): Use INSN_P.
* reload1.c (reload): Use INSN_P.
(maybe_fix_stack_asms): Likewise.
(calculate_needs_all_insns): Likewise.
(reload_as_needed): Likewise.
(emit_output_reload_insns): Likewise.
(delete_address_reloads_1): Likewise.
(reload_cse_regs_1): Likewise.
(reload_combine): Likewise.
(reload_cse_move2add): Likewise.
* reorg.c (redundant_insn): Use INSN_P.
(dbr_schedule): Likewise.
* resource.c (find_dead_or_set_registers): Use INSN_P.
(mark_target_live_regs): Likewise.
* rtlanal.c (reg_used_between_p): Use INSN_P.
(reg_referenced_between_p): Likewise.
(reg_set_between_p): Likewise.
(reg_set_p): Likewise.
(single_set): Likewise.
(multiple_sets): Likewise.
(find_last_value): Likewise.
(reg_set_last): Likewise.
(find_reg_note): Likewise.
(find_regno_note): Likewise.
* sibcall.c (sequence_uses_addressof): Use INSN_P.
* simplify-rtx.c (cselib_process_insn): Use INSN_P.
* ssa.c (find_evaluations): Use INSN_P.
(rename_block): Likewise.
(rename_equivalent_regs): Likewise.
* unroll.c (loop_find_equiv_value): Use INSN_P.
(set_dominates_use): Likewise.
* varasm.c (mark_constant_pool): Use INSN_P.
(mark_constants): Likewise.
* config/alpha/alpha.c (alpha_does_function_need_gp): Use INSN_P.
(alphaev4_next_group): Likewise.
(alphaev5_next_group): Likewise.
* config/c4x/c4x.c (c4x_process_after_reload): Use INSN_P.
(c4x_rptb_rpts_p): Likewise.
* config/mips/mips.c (mips16_optimize_gp): Use INSN_P.
* config/rs6000/rs6000.c (uses_TOC): Use INSN_P.
(rs6000_adjust_priority): Likewise.
* config/sh/sh.c (sh_loop_align): Use INSN_P.
(machine_dependent_reorg): Likewise.
(split_branches): Likewise.
* config/tahoe/tahoe.c (tahoe_cmp_check): Use INSN_P.
Fri Aug 4 11:43:49 2000 John Wehle (john@feith.com) Fri Aug 4 11:43:49 2000 John Wehle (john@feith.com)
* combine.c (recog_for_combine): Remove the old notes * combine.c (recog_for_combine): Remove the old notes

View File

@ -1833,8 +1833,7 @@ mark_constant_function ()
/* Determine if this is a constant function. */ /* Determine if this is a constant function. */
for (insn = get_insns (); insn; insn = NEXT_INSN (insn)) for (insn = get_insns (); insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i' if (INSN_P (insn) && nonlocal_reference_p (insn))
&& nonlocal_reference_p (insn))
return; return;
/* Mark the function. */ /* Mark the function. */
@ -1979,7 +1978,7 @@ init_alias_analysis ()
/* Walk the insns adding values to the new_reg_base_value array. */ /* Walk the insns adding values to the new_reg_base_value array. */
for (insn = get_insns (); insn; insn = NEXT_INSN (insn)) for (insn = get_insns (); insn; insn = NEXT_INSN (insn))
{ {
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
rtx note, set; rtx note, set;

View File

@ -588,7 +588,7 @@ combine_instructions (f, nregs)
subst_low_cuid = i; subst_low_cuid = i;
subst_insn = insn; subst_insn = insn;
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
note_stores (PATTERN (insn), set_nonzero_bits_and_sign_copies, note_stores (PATTERN (insn), set_nonzero_bits_and_sign_copies,
NULL); NULL);
@ -629,7 +629,7 @@ combine_instructions (f, nregs)
if (GET_CODE (insn) == CODE_LABEL) if (GET_CODE (insn) == CODE_LABEL)
label_tick++; label_tick++;
else if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') else if (INSN_P (insn))
{ {
/* See if we know about function return values before this /* See if we know about function return values before this
insn based upon SUBREG flags. */ insn based upon SUBREG flags. */
@ -1166,8 +1166,7 @@ can_combine_p (insn, i3, pred, succ, pdest, psrc)
return 0; return 0;
for (p = NEXT_INSN (insn); p != i3; p = NEXT_INSN (p)) for (p = NEXT_INSN (insn); p != i3; p = NEXT_INSN (p))
if (GET_RTX_CLASS (GET_CODE (p)) == 'i' if (INSN_P (p) && p != succ && volatile_refs_p (PATTERN (p)))
&& p != succ && volatile_refs_p (PATTERN (p)))
return 0; return 0;
} }
@ -1182,8 +1181,7 @@ can_combine_p (insn, i3, pred, succ, pdest, psrc)
they might affect machine state. */ they might affect machine state. */
for (p = NEXT_INSN (insn); p != i3; p = NEXT_INSN (p)) for (p = NEXT_INSN (insn); p != i3; p = NEXT_INSN (p))
if (GET_RTX_CLASS (GET_CODE (p)) == 'i' if (INSN_P (p) && p != succ && volatile_insn_p (PATTERN (p)))
&& p != succ && volatile_insn_p (PATTERN (p)))
return 0; return 0;
/* If INSN or I2 contains an autoincrement or autodecrement, /* If INSN or I2 contains an autoincrement or autodecrement,
@ -1518,9 +1516,7 @@ try_combine (i3, i2, i1, new_direct_jump_p)
REG_LIBCALL note since we don't want to disrupt the contiguity of a REG_LIBCALL note since we don't want to disrupt the contiguity of a
libcall. */ libcall. */
if (GET_RTX_CLASS (GET_CODE (i3)) != 'i' if (! INSN_P (i3) || ! INSN_P (i2) || (i1 && ! INSN_P (i1))
|| GET_RTX_CLASS (GET_CODE (i2)) != 'i'
|| (i1 && GET_RTX_CLASS (GET_CODE (i1)) != 'i')
#if 0 #if 0
/* ??? This gives worse code, and appears to be unnecessary, since no /* ??? This gives worse code, and appears to be unnecessary, since no
pass after flow uses REG_LIBCALL/REG_RETVAL notes. */ pass after flow uses REG_LIBCALL/REG_RETVAL notes. */
@ -2323,8 +2319,7 @@ try_combine (i3, i2, i1, new_direct_jump_p)
|| insn != BLOCK_HEAD (this_basic_block + 1)); || insn != BLOCK_HEAD (this_basic_block + 1));
insn = NEXT_INSN (insn)) insn = NEXT_INSN (insn))
{ {
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i' if (INSN_P (insn) && reg_referenced_p (ni2dest, PATTERN (insn)))
&& reg_referenced_p (ni2dest, PATTERN (insn)))
{ {
for (link = LOG_LINKS (insn); link; for (link = LOG_LINKS (insn); link;
link = XEXP (link, 1)) link = XEXP (link, 1))
@ -2525,7 +2520,7 @@ try_combine (i3, i2, i1, new_direct_jump_p)
temp && (this_basic_block == n_basic_blocks - 1 temp && (this_basic_block == n_basic_blocks - 1
|| BLOCK_HEAD (this_basic_block) != temp); || BLOCK_HEAD (this_basic_block) != temp);
temp = NEXT_INSN (temp)) temp = NEXT_INSN (temp))
if (temp != i3 && GET_RTX_CLASS (GET_CODE (temp)) == 'i') if (temp != i3 && INSN_P (temp))
for (link = LOG_LINKS (temp); link; link = XEXP (link, 1)) for (link = LOG_LINKS (temp); link; link = XEXP (link, 1))
if (XEXP (link, 0) == i2) if (XEXP (link, 0) == i2)
XEXP (link, 0) = i3; XEXP (link, 0) = i3;
@ -12213,7 +12208,7 @@ distribute_notes (notes, from_insn, i3, i2, elim_i2, elim_i1)
for (tem = PREV_INSN (i3); place == 0; tem = PREV_INSN (tem)) for (tem = PREV_INSN (i3); place == 0; tem = PREV_INSN (tem))
{ {
if (GET_RTX_CLASS (GET_CODE (tem)) != 'i') if (! INSN_P (tem))
{ {
if (tem == bb->head) if (tem == bb->head)
break; break;
@ -12554,8 +12549,7 @@ distribute_links (links)
(insn && (this_basic_block == n_basic_blocks - 1 (insn && (this_basic_block == n_basic_blocks - 1
|| BLOCK_HEAD (this_basic_block + 1) != insn)); || BLOCK_HEAD (this_basic_block + 1) != insn));
insn = NEXT_INSN (insn)) insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i' if (INSN_P (insn) && reg_overlap_mentioned_p (reg, PATTERN (insn)))
&& reg_overlap_mentioned_p (reg, PATTERN (insn)))
{ {
if (reg_referenced_p (reg, PATTERN (insn))) if (reg_referenced_p (reg, PATTERN (insn)))
place = insn; place = insn;

View File

@ -4174,7 +4174,7 @@ alpha_does_function_need_gp ()
pop_topmost_sequence (); pop_topmost_sequence ();
for (; insn; insn = NEXT_INSN (insn)) for (; insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i' if (INSN_P (insn)
&& GET_CODE (PATTERN (insn)) != USE && GET_CODE (PATTERN (insn)) != USE
&& GET_CODE (PATTERN (insn)) != CLOBBER) && GET_CODE (PATTERN (insn)) != CLOBBER)
{ {
@ -5453,7 +5453,7 @@ alphaev4_next_group (insn, pin_use, plen)
len = in_use = 0; len = in_use = 0;
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i' if (! INSN_P (insn)
|| GET_CODE (PATTERN (insn)) == CLOBBER || GET_CODE (PATTERN (insn)) == CLOBBER
|| GET_CODE (PATTERN (insn)) == USE) || GET_CODE (PATTERN (insn)) == USE)
goto next_and_done; goto next_and_done;
@ -5518,7 +5518,7 @@ alphaev4_next_group (insn, pin_use, plen)
next: next:
insn = next_nonnote_insn (insn); insn = next_nonnote_insn (insn);
if (!insn || GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (!insn || ! INSN_P (insn))
goto done; goto done;
/* Let Haifa tell us where it thinks insn group boundaries are. */ /* Let Haifa tell us where it thinks insn group boundaries are. */
@ -5553,7 +5553,7 @@ alphaev5_next_group (insn, pin_use, plen)
len = in_use = 0; len = in_use = 0;
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i' if (! INSN_P (insn)
|| GET_CODE (PATTERN (insn)) == CLOBBER || GET_CODE (PATTERN (insn)) == CLOBBER
|| GET_CODE (PATTERN (insn)) == USE) || GET_CODE (PATTERN (insn)) == USE)
goto next_and_done; goto next_and_done;
@ -5651,7 +5651,7 @@ alphaev5_next_group (insn, pin_use, plen)
next: next:
insn = next_nonnote_insn (insn); insn = next_nonnote_insn (insn);
if (!insn || GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (!insn || ! INSN_P (insn))
goto done; goto done;
/* Let Haifa tell us where it thinks insn group boundaries are. */ /* Let Haifa tell us where it thinks insn group boundaries are. */

View File

@ -2353,7 +2353,7 @@ c4x_process_after_reload (first)
for (insn = first; insn; insn = NEXT_INSN (insn)) for (insn = first; insn; insn = NEXT_INSN (insn))
{ {
/* Look for insn. */ /* Look for insn. */
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
int insn_code_number; int insn_code_number;
rtx old; rtx old;
@ -4696,13 +4696,13 @@ c4x_rptb_rpts_p (insn, op)
insn = next_nonnote_insn (insn); insn = next_nonnote_insn (insn);
/* This should be our first insn in the loop. */ /* This should be our first insn in the loop. */
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
return 0; return 0;
/* Skip any notes. */ /* Skip any notes. */
insn = next_nonnote_insn (insn); insn = next_nonnote_insn (insn);
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
return 0; return 0;
if (recog_memoized (insn) != CODE_FOR_rptb_end) if (recog_memoized (insn) != CODE_FOR_rptb_end)

View File

@ -8699,7 +8699,7 @@ mips16_optimize_gp (first)
{ {
rtx set; rtx set;
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
set = PATTERN (insn); set = PATTERN (insn);
@ -8798,10 +8798,10 @@ mips16_optimize_gp (first)
if (next == NULL_RTX) if (next == NULL_RTX)
break; break;
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
if (GET_RTX_CLASS (GET_CODE (next)) != 'i') if (! INSN_P (next))
continue; continue;
set1 = PATTERN (insn); set1 = PATTERN (insn);
@ -8854,7 +8854,7 @@ mips16_optimize_gp (first)
{ {
rtx set; rtx set;
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
set = PATTERN (insn); set = PATTERN (insn);

View File

@ -4950,7 +4950,7 @@ uses_TOC ()
rtx insn; rtx insn;
for (insn = get_insns (); insn; insn = NEXT_INSN (insn)) for (insn = get_insns (); insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
rtx pat = PATTERN (insn); rtx pat = PATTERN (insn);
int i; int i;
@ -6975,7 +6975,7 @@ rs6000_adjust_priority (insn, priority)
operationss. */ operationss. */
#if 0 #if 0
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
return priority; return priority;
if (GET_CODE (PATTERN (insn)) == USE) if (GET_CODE (PATTERN (insn)) == USE)

View File

@ -2825,7 +2825,7 @@ sh_loop_align (label)
while (next && GET_CODE (next) == CODE_LABEL); while (next && GET_CODE (next) == CODE_LABEL);
if (! next if (! next
|| GET_RTX_CLASS (GET_CODE (next)) != 'i' || ! INSN_P (next)
|| GET_CODE (PATTERN (next)) == ADDR_DIFF_VEC || GET_CODE (PATTERN (next)) == ADDR_DIFF_VEC
|| recog_memoized (next) == CODE_FOR_consttable_2) || recog_memoized (next) == CODE_FOR_consttable_2)
return 0; return 0;
@ -2863,7 +2863,7 @@ machine_dependent_reorg (first)
dependent REG_NOTE, or some other approach entirely. */ dependent REG_NOTE, or some other approach entirely. */
for (insn = first; insn; insn = NEXT_INSN (insn)) for (insn = first; insn; insn = NEXT_INSN (insn))
{ {
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
rtx note; rtx note;
@ -2928,7 +2928,7 @@ machine_dependent_reorg (first)
scan && GET_CODE (scan) != CODE_LABEL; scan && GET_CODE (scan) != CODE_LABEL;
scan = PREV_INSN (scan)) scan = PREV_INSN (scan))
{ {
if (GET_RTX_CLASS (GET_CODE (scan)) != 'i') if (! INSN_P (scan))
continue; continue;
if (! reg_mentioned_p (reg, scan)) if (! reg_mentioned_p (reg, scan))
@ -2981,7 +2981,7 @@ machine_dependent_reorg (first)
if (GET_CODE (scan) == CODE_LABEL && ! foundinsn) if (GET_CODE (scan) == CODE_LABEL && ! foundinsn)
break; break;
if (GET_RTX_CLASS (GET_CODE (scan)) != 'i') if (! INSN_P (scan))
continue; continue;
/* Don't try to trace forward past a JUMP. To optimize /* Don't try to trace forward past a JUMP. To optimize
@ -3309,7 +3309,7 @@ split_branches (first)
bzero ((char *) uid_branch, max_uid * sizeof *uid_branch); bzero ((char *) uid_branch, max_uid * sizeof *uid_branch);
for (insn = first; insn; insn = NEXT_INSN (insn)) for (insn = first; insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
else if (INSN_DELETED_P (insn)) else if (INSN_DELETED_P (insn))
{ {

View File

@ -543,7 +543,7 @@ tahoe_cmp_check (insn, op, max)
&& (INTVAL (op) < 0 || INTVAL (op) > max)) && (INTVAL (op) < 0 || INTVAL (op) > max))
return 0; return 0;
if (GET_RTX_CLASS (GET_CODE (next)) == 'i') if (INSN_P (next))
{ {
next = PATTERN (next); next = PATTERN (next);
if (GET_CODE (next) == SET if (GET_CODE (next) == SET

View File

@ -6306,12 +6306,11 @@ cse_around_loop (loop_start)
&& NOTE_LINE_NUMBER (insn) == NOTE_INSN_LOOP_END); && NOTE_LINE_NUMBER (insn) == NOTE_INSN_LOOP_END);
insn = NEXT_INSN (insn)) insn = NEXT_INSN (insn))
{ {
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i' if (INSN_P (insn)
&& (GET_CODE (PATTERN (insn)) == SET && (GET_CODE (PATTERN (insn)) == SET
|| GET_CODE (PATTERN (insn)) == CLOBBER)) || GET_CODE (PATTERN (insn)) == CLOBBER))
cse_set_around_loop (PATTERN (insn), insn, loop_start); cse_set_around_loop (PATTERN (insn), insn, loop_start);
else if (GET_RTX_CLASS (GET_CODE (insn)) == 'i' else if (INSN_P (insn) && GET_CODE (PATTERN (insn)) == PARALLEL)
&& GET_CODE (PATTERN (insn)) == PARALLEL)
for (i = XVECLEN (PATTERN (insn), 0) - 1; i >= 0; i--) for (i = XVECLEN (PATTERN (insn), 0) - 1; i >= 0; i--)
if (GET_CODE (XVECEXP (PATTERN (insn), 0, i)) == SET if (GET_CODE (XVECEXP (PATTERN (insn), 0, i)) == SET
|| GET_CODE (XVECEXP (PATTERN (insn), 0, i)) == CLOBBER) || GET_CODE (XVECEXP (PATTERN (insn), 0, i)) == CLOBBER)
@ -6371,7 +6370,7 @@ invalidate_skipped_block (start)
for (insn = start; insn && GET_CODE (insn) != CODE_LABEL; for (insn = start; insn && GET_CODE (insn) != CODE_LABEL;
insn = NEXT_INSN (insn)) insn = NEXT_INSN (insn))
{ {
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
if (GET_CODE (insn) == CALL_INSN) if (GET_CODE (insn) == CALL_INSN)
@ -6471,7 +6470,7 @@ cse_set_around_loop (x, insn, loop_start)
rtx q; rtx q;
rtx cse_check_loop_start_value = SET_SRC (x); rtx cse_check_loop_start_value = SET_SRC (x);
for (q = p; q != loop_start; q = NEXT_INSN (q)) for (q = p; q != loop_start; q = NEXT_INSN (q))
if (GET_RTX_CLASS (GET_CODE (q)) == 'i') if (INSN_P (q))
note_stores (PATTERN (q), note_stores (PATTERN (q),
cse_check_loop_start, cse_check_loop_start,
&cse_check_loop_start_value); &cse_check_loop_start_value);
@ -6543,8 +6542,7 @@ cse_end_of_basic_block (insn, data, follow_jumps, after_loop, skip_blocks)
rtx p = insn, q; rtx p = insn, q;
int nsets = 0; int nsets = 0;
int low_cuid = INSN_CUID (insn), high_cuid = INSN_CUID (insn); int low_cuid = INSN_CUID (insn), high_cuid = INSN_CUID (insn);
rtx next = rtx next = INSN_P (insn) ? insn : next_real_insn (insn);
GET_RTX_CLASS (GET_CODE (insn)) == 'i' ? insn : next_real_insn (insn);
int path_size = data->path_size; int path_size = data->path_size;
int path_entry = 0; int path_entry = 0;
int i; int i;
@ -6602,8 +6600,7 @@ cse_end_of_basic_block (insn, data, follow_jumps, after_loop, skip_blocks)
/* A PARALLEL can have lots of SETs in it, /* A PARALLEL can have lots of SETs in it,
especially if it is really an ASM_OPERANDS. */ especially if it is really an ASM_OPERANDS. */
if (GET_RTX_CLASS (GET_CODE (p)) == 'i' if (INSN_P (p) && GET_CODE (PATTERN (p)) == PARALLEL)
&& GET_CODE (PATTERN (p)) == PARALLEL)
nsets += XVECLEN (PATTERN (p), 0); nsets += XVECLEN (PATTERN (p), 0);
else if (GET_CODE (p) != NOTE) else if (GET_CODE (p) != NOTE)
nsets += 1; nsets += 1;
@ -7270,7 +7267,7 @@ delete_trivially_dead_insns (insns, nreg)
insn in the function. We must not skip that insn or we may end insn in the function. We must not skip that insn or we may end
up deleting code that is not really dead. */ up deleting code that is not really dead. */
insn = get_last_insn (); insn = get_last_insn ();
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
insn = prev_real_insn (insn); insn = prev_real_insn (insn);
for (; insn; insn = prev) for (; insn; insn = prev)
@ -7331,7 +7328,7 @@ delete_trivially_dead_insns (insns, nreg)
else if (GET_CODE (SET_DEST (PATTERN (insn))) == CC0 else if (GET_CODE (SET_DEST (PATTERN (insn))) == CC0
&& ! side_effects_p (SET_SRC (PATTERN (insn))) && ! side_effects_p (SET_SRC (PATTERN (insn)))
&& ((tem = next_nonnote_insn (insn)) == 0 && ((tem = next_nonnote_insn (insn)) == 0
|| GET_RTX_CLASS (GET_CODE (tem)) != 'i' || ! INSN_P (tem)
|| ! reg_referenced_p (cc0_rtx, PATTERN (tem)))) || ! reg_referenced_p (cc0_rtx, PATTERN (tem))))
; ;
#endif #endif
@ -7363,7 +7360,7 @@ delete_trivially_dead_insns (insns, nreg)
else if (GET_CODE (SET_DEST (elt)) == CC0 else if (GET_CODE (SET_DEST (elt)) == CC0
&& ! side_effects_p (SET_SRC (elt)) && ! side_effects_p (SET_SRC (elt))
&& ((tem = next_nonnote_insn (insn)) == 0 && ((tem = next_nonnote_insn (insn)) == 0
|| GET_RTX_CLASS (GET_CODE (tem)) != 'i' || ! INSN_P (tem)
|| ! reg_referenced_p (cc0_rtx, PATTERN (tem)))) || ! reg_referenced_p (cc0_rtx, PATTERN (tem))))
; ;
#endif #endif

View File

@ -1761,7 +1761,7 @@ unshare_all_rtl_again (insn)
tree decl; tree decl;
for (p = insn; p; p = NEXT_INSN (p)) for (p = insn; p; p = NEXT_INSN (p))
if (GET_RTX_CLASS (GET_CODE (p)) == 'i') if (INSN_P (p))
{ {
reset_used_flags (PATTERN (p)); reset_used_flags (PATTERN (p));
reset_used_flags (REG_NOTES (p)); reset_used_flags (REG_NOTES (p));
@ -1788,7 +1788,7 @@ unshare_all_rtl_1 (insn)
rtx insn; rtx insn;
{ {
for (; insn; insn = NEXT_INSN (insn)) for (; insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
PATTERN (insn) = copy_rtx_if_shared (PATTERN (insn)); PATTERN (insn) = copy_rtx_if_shared (PATTERN (insn));
REG_NOTES (insn) = copy_rtx_if_shared (REG_NOTES (insn)); REG_NOTES (insn) = copy_rtx_if_shared (REG_NOTES (insn));
@ -2354,8 +2354,7 @@ next_cc0_user (insn)
if (insn && GET_CODE (insn) == INSN && GET_CODE (PATTERN (insn)) == SEQUENCE) if (insn && GET_CODE (insn) == INSN && GET_CODE (PATTERN (insn)) == SEQUENCE)
insn = XVECEXP (PATTERN (insn), 0, 0); insn = XVECEXP (PATTERN (insn), 0, 0);
if (insn && GET_RTX_CLASS (GET_CODE (insn)) == 'i' if (insn && INSN_P (insn) && reg_mentioned_p (cc0_rtx, PATTERN (insn)))
&& reg_mentioned_p (cc0_rtx, PATTERN (insn)))
return insn; return insn;
return 0; return 0;
@ -2450,10 +2449,8 @@ try_split (pat, trial, last)
set LAST and continue from the insn after the one returned. set LAST and continue from the insn after the one returned.
We can't use next_active_insn here since AFTER may be a note. We can't use next_active_insn here since AFTER may be a note.
Ignore deleted insns, which can be occur if not optimizing. */ Ignore deleted insns, which can be occur if not optimizing. */
for (tem = NEXT_INSN (before); tem != after; for (tem = NEXT_INSN (before); tem != after; tem = NEXT_INSN (tem))
tem = NEXT_INSN (tem)) if (! INSN_DELETED_P (tem) && INSN_P (tem))
if (! INSN_DELETED_P (tem)
&& GET_RTX_CLASS (GET_CODE (tem)) == 'i')
tem = try_split (PATTERN (tem), tem, 1); tem = try_split (PATTERN (tem), tem, 1);
} }
/* Avoid infinite loop if the result matches the original pattern. */ /* Avoid infinite loop if the result matches the original pattern. */
@ -2503,7 +2500,7 @@ make_insn_raw (pattern)
#ifdef ENABLE_RTL_CHECKING #ifdef ENABLE_RTL_CHECKING
if (insn if (insn
&& GET_RTX_CLASS (GET_CODE (insn)) == 'i' && INSN_P (insn)
&& (returnjump_p (insn) && (returnjump_p (insn)
|| (GET_CODE (insn) == SET || (GET_CODE (insn) == SET
&& SET_DEST (insn) == pc_rtx))) && SET_DEST (insn) == pc_rtx)))
@ -2865,7 +2862,7 @@ remove_unnecessary_notes ()
don't include labels; if the only thing in the block don't include labels; if the only thing in the block
is a label, then there are still no PC values that is a label, then there are still no PC values that
lie within the block. */ lie within the block. */
if (GET_RTX_CLASS (GET_CODE (prev)) == 'i') if (INSN_P (prev))
break; break;
/* We're only interested in NOTEs. */ /* We're only interested in NOTEs. */

View File

@ -990,7 +990,7 @@ shorten_branches (first)
we must split them before we compute the address/length info. */ we must split them before we compute the address/length info. */
for (insn = NEXT_INSN (first); insn; insn = NEXT_INSN (insn)) for (insn = NEXT_INSN (first); insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
rtx old = insn; rtx old = insn;
/* Don't split the insn if it has been deleted. */ /* Don't split the insn if it has been deleted. */
@ -1037,7 +1037,7 @@ shorten_branches (first)
int log; int log;
INSN_SHUID (insn) = i++; INSN_SHUID (insn) = i++;
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
/* reorg might make the first insn of a loop being run once only, /* reorg might make the first insn of a loop being run once only,
and delete the label in front of it. Then we want to apply and delete the label in front of it. Then we want to apply
@ -1086,7 +1086,7 @@ shorten_branches (first)
{ {
rtx label; rtx label;
for (label = insn; label && GET_RTX_CLASS (GET_CODE (label)) != 'i'; for (label = insn; label && ! INSN_P (label);
label = NEXT_INSN (label)) label = NEXT_INSN (label))
if (GET_CODE (label) == CODE_LABEL) if (GET_CODE (label) == CODE_LABEL)
{ {
@ -4206,10 +4206,10 @@ leaf_renumber_regs (first)
The reg-notes can contain frame pointer refs, The reg-notes can contain frame pointer refs,
and renumbering them could crash, and should not be needed. */ and renumbering them could crash, and should not be needed. */
for (insn = first; insn; insn = NEXT_INSN (insn)) for (insn = first; insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
leaf_renumber_regs_insn (PATTERN (insn)); leaf_renumber_regs_insn (PATTERN (insn));
for (insn = current_function_epilogue_delay_list; insn; insn = XEXP (insn, 1)) for (insn = current_function_epilogue_delay_list; insn; insn = XEXP (insn, 1))
if (GET_RTX_CLASS (GET_CODE (XEXP (insn, 0))) == 'i') if (INSN_P (XEXP (insn, 0)))
leaf_renumber_regs_insn (PATTERN (XEXP (insn, 0))); leaf_renumber_regs_insn (PATTERN (XEXP (insn, 0)));
} }
@ -4255,7 +4255,7 @@ leaf_renumber_regs_insn (in_rtx)
in_rtx->used = 1; in_rtx->used = 1;
} }
if (GET_RTX_CLASS (GET_CODE (in_rtx)) == 'i') if (INSN_P (in_rtx))
{ {
/* Inside a SEQUENCE, we find insns. /* Inside a SEQUENCE, we find insns.
Renumber just the patterns of these insns, Renumber just the patterns of these insns,

View File

@ -570,7 +570,7 @@ find_label_refs (f, lvl)
rtx insn; rtx insn;
for (insn = f; insn; insn = NEXT_INSN (insn)) for (insn = f; insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
rtx note; rtx note;
@ -2708,7 +2708,7 @@ verify_wide_reg (regno, head, end)
{ {
while (1) while (1)
{ {
if (GET_RTX_CLASS (GET_CODE (head)) == 'i' if (INSN_P (head)
&& for_each_rtx (&PATTERN (head), verify_wide_reg_1, &regno)) && for_each_rtx (&PATTERN (head), verify_wide_reg_1, &regno))
return; return;
if (head == end) if (head == end)
@ -2990,7 +2990,7 @@ notice_stack_pointer_modification (f)
for (insn = f; insn; insn = NEXT_INSN (insn)) for (insn = f; insn; insn = NEXT_INSN (insn))
{ {
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
/* Check if insn modifies the stack pointer. */ /* Check if insn modifies the stack pointer. */
note_stores (PATTERN (insn), notice_stack_pointer_modification_1, note_stores (PATTERN (insn), notice_stack_pointer_modification_1,
@ -6330,7 +6330,7 @@ count_or_remove_death_notes (blocks, kill)
for (insn = bb->head; ; insn = NEXT_INSN (insn)) for (insn = bb->head; ; insn = NEXT_INSN (insn))
{ {
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
rtx *pprev = &REG_NOTES (insn); rtx *pprev = &REG_NOTES (insn);
rtx link = *pprev; rtx link = *pprev;
@ -6642,7 +6642,7 @@ verify_flow_info ()
} }
} }
if (GET_RTX_CLASS (GET_CODE (x)) == 'i' if (INSN_P (x)
&& GET_CODE (x) == JUMP_INSN && GET_CODE (x) == JUMP_INSN
&& returnjump_p (x) && ! condjump_p (x) && returnjump_p (x) && ! condjump_p (x)
&& ! (NEXT_INSN (x) && GET_CODE (NEXT_INSN (x)) == BARRIER)) && ! (NEXT_INSN (x) && GET_CODE (NEXT_INSN (x)) == BARRIER))
@ -7938,7 +7938,7 @@ clear_log_links (insns)
int b; int b;
for (i = insns; i; i = NEXT_INSN (i)) for (i = insns; i; i = NEXT_INSN (i))
if (GET_RTX_CLASS (GET_CODE (i)) == 'i') if (INSN_P (i))
LOG_LINKS (i) = 0; LOG_LINKS (i) = 0;
for (b = 0; b < n_basic_blocks; b++) for (b = 0; b < n_basic_blocks; b++)

View File

@ -1647,7 +1647,7 @@ fixup_var_refs_insns (var, promoted_mode, unsignedp, insn, toplevel, ht)
rtx set, prev, prev_set; rtx set, prev, prev_set;
rtx note; rtx note;
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
/* Remember the notes in case we delete the insn. */ /* Remember the notes in case we delete the insn. */
note = REG_NOTES (insn); note = REG_NOTES (insn);
@ -3248,7 +3248,7 @@ compute_insns_for_mem (insns, last_insn, ht)
for (ifmwi.pass = 0; ifmwi.pass < 2; ++ifmwi.pass) for (ifmwi.pass = 0; ifmwi.pass < 2; ++ifmwi.pass)
for (insn = insns; insn != last_insn; insn = NEXT_INSN (insn)) for (insn = insns; insn != last_insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
ifmwi.insn = insn; ifmwi.insn = insn;
for_each_rtx (&insn, insns_for_mem_walk, &ifmwi); for_each_rtx (&insn, insns_for_mem_walk, &ifmwi);

View File

@ -892,7 +892,7 @@ alloc_gcse_mem (f)
bzero ((char *) uid_cuid, n); bzero ((char *) uid_cuid, n);
for (insn = f, i = 0; insn; insn = NEXT_INSN (insn)) for (insn = f, i = 0; insn; insn = NEXT_INSN (insn))
{ {
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
uid_cuid[INSN_UID (insn)] = i++; uid_cuid[INSN_UID (insn)] = i++;
else else
uid_cuid[INSN_UID (insn)] = i; uid_cuid[INSN_UID (insn)] = i;
@ -905,7 +905,7 @@ alloc_gcse_mem (f)
cuid_insn = (rtx *) gmalloc (n); cuid_insn = (rtx *) gmalloc (n);
bzero ((char *) cuid_insn, n); bzero ((char *) cuid_insn, n);
for (insn = f, i = 0; insn; insn = NEXT_INSN (insn)) for (insn = f, i = 0; insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
CUID_INSN (i++) = insn; CUID_INSN (i++) = insn;
/* Allocate vars to track sets of regs. */ /* Allocate vars to track sets of regs. */
@ -1164,7 +1164,7 @@ compute_sets (f)
rtx insn; rtx insn;
for (insn = f; insn != 0; insn = NEXT_INSN (insn)) for (insn = f; insn != 0; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
note_stores (PATTERN (insn), record_set_info, insn); note_stores (PATTERN (insn), record_set_info, insn);
} }
@ -2132,7 +2132,7 @@ compute_hash_table (set_p)
} }
#endif #endif
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
if (GET_CODE (insn) == CALL_INSN) if (GET_CODE (insn) == CALL_INSN)
@ -2166,7 +2166,7 @@ compute_hash_table (set_p)
for (insn = BLOCK_HEAD (bb), in_libcall_block = 0; for (insn = BLOCK_HEAD (bb), in_libcall_block = 0;
insn && insn != NEXT_INSN (BLOCK_END (bb)); insn && insn != NEXT_INSN (BLOCK_END (bb));
insn = NEXT_INSN (insn)) insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
if (find_reg_note (insn, REG_LIBCALL, NULL_RTX)) if (find_reg_note (insn, REG_LIBCALL, NULL_RTX))
in_libcall_block = 1; in_libcall_block = 1;
@ -3226,7 +3226,7 @@ classic_gcse ()
/* Keep track of everything modified by this insn. */ /* Keep track of everything modified by this insn. */
/* ??? Need to be careful w.r.t. mods done to INSN. */ /* ??? Need to be careful w.r.t. mods done to INSN. */
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
mark_oprs_set (insn); mark_oprs_set (insn);
} }
} }
@ -3939,7 +3939,7 @@ cprop (alter_jumps)
insn != NULL && insn != NEXT_INSN (BLOCK_END (bb)); insn != NULL && insn != NEXT_INSN (BLOCK_END (bb));
insn = NEXT_INSN (insn)) insn = NEXT_INSN (insn))
{ {
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
changed |= cprop_insn (insn, alter_jumps); changed |= cprop_insn (insn, alter_jumps);
@ -4265,7 +4265,7 @@ insert_insn_end_bb (expr, bb, pre)
{ {
rtx maybe_cc0_setter = prev_nonnote_insn (insn); rtx maybe_cc0_setter = prev_nonnote_insn (insn);
if (maybe_cc0_setter if (maybe_cc0_setter
&& GET_RTX_CLASS (GET_CODE (maybe_cc0_setter)) == 'i' && INSN_P (maybe_cc0_setter)
&& sets_cc0_p (PATTERN (maybe_cc0_setter))) && sets_cc0_p (PATTERN (maybe_cc0_setter)))
insn = maybe_cc0_setter; insn = maybe_cc0_setter;
} }
@ -4356,7 +4356,7 @@ insert_insn_end_bb (expr, bb, pre)
rtx insn = XVECEXP (pat, 0, i); rtx insn = XVECEXP (pat, 0, i);
set_block_num (insn, bb); set_block_num (insn, bb);
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
add_label_notes (PATTERN (insn), new_insn); add_label_notes (PATTERN (insn), new_insn);
note_stores (PATTERN (insn), record_set_info, insn); note_stores (PATTERN (insn), record_set_info, insn);
@ -4908,7 +4908,7 @@ delete_null_pointer_checks_1 (block_reg, nonnull_avin, nonnull_avout, npi)
rtx reg; rtx reg;
/* Ignore anything that is not a normal insn. */ /* Ignore anything that is not a normal insn. */
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
/* Basically ignore anything that is not a simple SET. We do have /* Basically ignore anything that is not a simple SET. We do have

View File

@ -835,7 +835,7 @@ expand_preferences ()
where this wins are reg-reg copies. */ where this wins are reg-reg copies. */
for (insn = get_insns (); insn; insn = NEXT_INSN (insn)) for (insn = get_insns (); insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i' if (INSN_P (insn)
&& (set = single_set (insn)) != 0 && (set = single_set (insn)) != 0
&& GET_CODE (SET_DEST (set)) == REG && GET_CODE (SET_DEST (set)) == REG
&& reg_allocno[REGNO (SET_DEST (set))] >= 0) && reg_allocno[REGNO (SET_DEST (set))] >= 0)
@ -1798,7 +1798,7 @@ build_insn_chain (first)
c->insn = first; c->insn = first;
c->block = b; c->block = b;
if (GET_RTX_CLASS (GET_CODE (first)) == 'i') if (INSN_P (first))
{ {
rtx link; rtx link;
@ -1820,7 +1820,7 @@ build_insn_chain (first)
else else
COPY_REG_SET (&c->live_throughout, live_relevant_regs); COPY_REG_SET (&c->live_throughout, live_relevant_regs);
if (GET_RTX_CLASS (GET_CODE (first)) == 'i') if (INSN_P (first))
{ {
rtx link; rtx link;
@ -1845,8 +1845,7 @@ build_insn_chain (first)
if (b == n_basic_blocks) if (b == n_basic_blocks)
{ {
for (first = NEXT_INSN (first) ; first; first = NEXT_INSN (first)) for (first = NEXT_INSN (first) ; first; first = NEXT_INSN (first))
if (GET_RTX_CLASS (GET_CODE (first)) == 'i' if (INSN_P (first) && GET_CODE (PATTERN (first)) != USE)
&& GET_CODE (PATTERN (first)) != USE)
abort (); abort ();
break; break;
} }

View File

@ -152,7 +152,7 @@ darkgrey\n shape: ellipse" : "white",
name = GET_NOTE_INSN_NAME (NOTE_LINE_NUMBER (tmp_rtx)); name = GET_NOTE_INSN_NAME (NOTE_LINE_NUMBER (tmp_rtx));
fprintf (fp, " %s", name); fprintf (fp, " %s", name);
} }
else if (GET_RTX_CLASS (GET_CODE (tmp_rtx)) == 'i') else if (INSN_P (tmp_rtx))
print_rtl_single (fp, PATTERN (tmp_rtx)); print_rtl_single (fp, PATTERN (tmp_rtx));
else else
print_rtl_single (fp, tmp_rtx); print_rtl_single (fp, tmp_rtx);

View File

@ -3132,7 +3132,7 @@ priority (insn)
int this_priority; int this_priority;
rtx link; rtx link;
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
return 0; return 0;
if ((this_priority = INSN_PRIORITY (insn)) == 0) if ((this_priority = INSN_PRIORITY (insn)) == 0)
@ -4415,8 +4415,7 @@ rm_line_notes (bb)
get_bb_head_tail (bb, &head, &tail); get_bb_head_tail (bb, &head, &tail);
if (head == tail if (head == tail && (! INSN_P (head)))
&& (GET_RTX_CLASS (GET_CODE (head)) != 'i'))
return; return;
next_tail = NEXT_INSN (tail); next_tail = NEXT_INSN (tail);
@ -4597,8 +4596,7 @@ rm_other_notes (head, tail)
rtx next_tail; rtx next_tail;
rtx insn; rtx insn;
if (head == tail if (head == tail && (! INSN_P (head)))
&& (GET_RTX_CLASS (GET_CODE (head)) != 'i'))
return; return;
next_tail = NEXT_INSN (tail); next_tail = NEXT_INSN (tail);
@ -4644,7 +4642,7 @@ find_insn_reg_weight (b)
rtx x; rtx x;
/* Handle register life information. */ /* Handle register life information. */
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
/* Increment weight for each register born here. */ /* Increment weight for each register born here. */
@ -4819,7 +4817,7 @@ init_target_units ()
for (insn = get_last_insn (); insn; insn = PREV_INSN (insn)) for (insn = get_last_insn (); insn; insn = PREV_INSN (insn))
{ {
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
unit = insn_unit (insn); unit = insn_unit (insn);
@ -5811,7 +5809,7 @@ schedule_block (bb, rgn_n_insns)
FIXME: Probably the same thing should be done with REG_SAVE_NOTEs FIXME: Probably the same thing should be done with REG_SAVE_NOTEs
referencing NOTE_INSN_SETJMP at the end of the block. */ referencing NOTE_INSN_SETJMP at the end of the block. */
if (GET_RTX_CLASS (GET_CODE (head)) == 'i') if (INSN_P (head))
{ {
rtx note; rtx note;
@ -5834,8 +5832,7 @@ schedule_block (bb, rgn_n_insns)
/* If the only insn left is a NOTE or a CODE_LABEL, then there is no need /* If the only insn left is a NOTE or a CODE_LABEL, then there is no need
to schedule this block. */ to schedule this block. */
if (head == tail if (head == tail && (! INSN_P (head)))
&& (GET_RTX_CLASS (GET_CODE (head)) != 'i'))
return (sched_n_insns); return (sched_n_insns);
/* Debug info. */ /* Debug info. */
@ -5900,12 +5897,12 @@ schedule_block (bb, rgn_n_insns)
{ {
rtx next; rtx next;
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
next = NEXT_INSN (insn); next = NEXT_INSN (insn);
if (INSN_DEP_COUNT (insn) == 0 if (INSN_DEP_COUNT (insn) == 0
&& (SCHED_GROUP_P (next) == 0 || GET_RTX_CLASS (GET_CODE (next)) != 'i')) && (SCHED_GROUP_P (next) == 0 || ! INSN_P (next)))
ready[n_ready++] = insn; ready[n_ready++] = insn;
if (!(SCHED_GROUP_P (insn))) if (!(SCHED_GROUP_P (insn)))
target_n_insns++; target_n_insns++;
@ -5925,13 +5922,12 @@ schedule_block (bb, rgn_n_insns)
src_next_tail = NEXT_INSN (tail); src_next_tail = NEXT_INSN (tail);
src_head = head; src_head = head;
if (head == tail if (head == tail && (! INSN_P (head)))
&& (GET_RTX_CLASS (GET_CODE (head)) != 'i'))
continue; continue;
for (insn = src_head; insn != src_next_tail; insn = NEXT_INSN (insn)) for (insn = src_head; insn != src_next_tail; insn = NEXT_INSN (insn))
{ {
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
if (!CANT_MOVE (insn) if (!CANT_MOVE (insn)
@ -5949,7 +5945,7 @@ schedule_block (bb, rgn_n_insns)
if (INSN_DEP_COUNT (insn) == 0 if (INSN_DEP_COUNT (insn) == 0
&& (! next && (! next
|| SCHED_GROUP_P (next) == 0 || SCHED_GROUP_P (next) == 0
|| GET_RTX_CLASS (GET_CODE (next)) != 'i')) || ! INSN_P (next)))
ready[n_ready++] = insn; ready[n_ready++] = insn;
} }
} }
@ -6213,7 +6209,7 @@ compute_block_forward_dependences (bb)
next_tail = NEXT_INSN (tail); next_tail = NEXT_INSN (tail);
for (insn = head; insn != next_tail; insn = NEXT_INSN (insn)) for (insn = head; insn != next_tail; insn = NEXT_INSN (insn))
{ {
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
insn = group_leader (insn); insn = group_leader (insn);
@ -6599,7 +6595,7 @@ debug_dependencies ()
rtx link; rtx link;
int unit, range; int unit, range;
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
{ {
int n; int n;
fprintf (dump, ";; %6d ", INSN_UID (insn)); fprintf (dump, ";; %6d ", INSN_UID (insn));
@ -6659,8 +6655,7 @@ set_priorities (bb)
get_bb_head_tail (bb, &head, &tail); get_bb_head_tail (bb, &head, &tail);
prev_head = PREV_INSN (head); prev_head = PREV_INSN (head);
if (head == tail if (head == tail && (! INSN_P (head)))
&& (GET_RTX_CLASS (GET_CODE (head)) != 'i'))
return 0; return 0;
n_insn = 0; n_insn = 0;

View File

@ -211,7 +211,7 @@ function_cannot_inline_p (fndecl)
for (ninsns = 0, insn = get_first_nonparm_insn (); for (ninsns = 0, insn = get_first_nonparm_insn ();
insn && ninsns < max_insns; insn && ninsns < max_insns;
insn = NEXT_INSN (insn)) insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
ninsns++; ninsns++;
if (ninsns >= max_insns) if (ninsns >= max_insns)
@ -480,7 +480,7 @@ save_parm_insns (insn, first_nonparm_insn)
if (insn == first_nonparm_insn) if (insn == first_nonparm_insn)
in_nonparm_insns = 1; in_nonparm_insns = 1;
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
/* Record what interesting things happen to our parameters. */ /* Record what interesting things happen to our parameters. */
note_stores (PATTERN (insn), note_modified_parmregs, NULL); note_stores (PATTERN (insn), note_modified_parmregs, NULL);
@ -1577,7 +1577,7 @@ copy_insn_list (insns, map, static_chain_value)
are valid across the entire function. */ are valid across the entire function. */
map->const_age++; map->const_age++;
for (insn = insns; insn; insn = NEXT_INSN (insn)) for (insn = insns; insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i' if (INSN_P (insn)
&& map->insn_map[INSN_UID (insn)] && map->insn_map[INSN_UID (insn)]
&& REG_NOTES (insn)) && REG_NOTES (insn))
{ {

View File

@ -855,7 +855,7 @@ mark_all_labels (f, cross_jump)
rtx insn; rtx insn;
for (insn = f; insn; insn = NEXT_INSN (insn)) for (insn = f; insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
if (GET_CODE (insn) == CALL_INSN if (GET_CODE (insn) == CALL_INSN
&& GET_CODE (PATTERN (insn)) == CALL_PLACEHOLDER) && GET_CODE (PATTERN (insn)) == CALL_PLACEHOLDER)
@ -3095,7 +3095,7 @@ never_reached_warning (avoided_insn)
two_avoided_lines |= (NOTE_LINE_NUMBER (a_line_note) two_avoided_lines |= (NOTE_LINE_NUMBER (a_line_note)
!= NOTE_LINE_NUMBER (insn)); != NOTE_LINE_NUMBER (insn));
} }
else if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') else if (INSN_P (insn))
contains_insn = 1; contains_insn = 1;
} }
if (two_avoided_lines && contains_insn) if (two_avoided_lines && contains_insn)

View File

@ -1061,7 +1061,7 @@ optimize_mode_switching (file)
insn != NULL && insn != NEXT_INSN (BLOCK_END (bb)); insn != NULL && insn != NEXT_INSN (BLOCK_END (bb));
insn = NEXT_INSN (insn)) insn = NEXT_INSN (insn))
{ {
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
int mode = MODE_NEEDED (e, insn); int mode = MODE_NEEDED (e, insn);
rtx link; rtx link;

View File

@ -472,7 +472,7 @@ validate_equiv_mem (start, reg, memref)
for (insn = start; insn && ! equiv_mem_modified; insn = NEXT_INSN (insn)) for (insn = start; insn && ! equiv_mem_modified; insn = NEXT_INSN (insn))
{ {
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
if (find_reg_note (insn, REG_DEAD, reg)) if (find_reg_note (insn, REG_DEAD, reg))
@ -632,8 +632,7 @@ memref_used_between_p (memref, start, end)
for (insn = NEXT_INSN (start); insn != NEXT_INSN (end); for (insn = NEXT_INSN (start); insn != NEXT_INSN (end);
insn = NEXT_INSN (insn)) insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i' if (INSN_P (insn) && memref_referenced_p (memref, PATTERN (insn)))
&& memref_referenced_p (memref, PATTERN (insn)))
return 1; return 1;
return 0; return 0;
@ -698,7 +697,7 @@ update_equiv_regs ()
loop_depth--; loop_depth--;
} }
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
for (note = REG_NOTES (insn); note; note = XEXP (note, 1)) for (note = REG_NOTES (insn); note; note = XEXP (note, 1))
@ -909,7 +908,7 @@ update_equiv_regs ()
&& BLOCK_HEAD (block + 1) == insn) && BLOCK_HEAD (block + 1) == insn)
++block; ++block;
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
{ {
if (GET_CODE (insn) == NOTE) if (GET_CODE (insn) == NOTE)
{ {
@ -1076,7 +1075,7 @@ block_alloc (b)
if (GET_CODE (insn) != NOTE) if (GET_CODE (insn) != NOTE)
insn_number++; insn_number++;
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
register rtx link, set; register rtx link, set;
register int win = 0; register int win = 0;
@ -2168,7 +2167,7 @@ no_conflict_p (insn, r0, r1)
last = XEXP (note, 0); last = XEXP (note, 0);
for (p = NEXT_INSN (insn); p && p != last; p = NEXT_INSN (p)) for (p = NEXT_INSN (insn); p && p != last; p = NEXT_INSN (p))
if (GET_RTX_CLASS (GET_CODE (p)) == 'i') if (INSN_P (p))
{ {
if (find_reg_note (p, REG_DEAD, r1)) if (find_reg_note (p, REG_DEAD, r1))
ok = 1; ok = 1;

View File

@ -637,7 +637,7 @@ scan_loop (loop, flags)
for (p = NEXT_INSN (loop_start); for (p = NEXT_INSN (loop_start);
p != loop_end p != loop_end
&& GET_CODE (p) != CODE_LABEL && GET_RTX_CLASS (GET_CODE (p)) != 'i' && GET_CODE (p) != CODE_LABEL && ! INSN_P (p)
&& (GET_CODE (p) != NOTE && (GET_CODE (p) != NOTE
|| (NOTE_LINE_NUMBER (p) != NOTE_INSN_LOOP_BEG || (NOTE_LINE_NUMBER (p) != NOTE_INSN_LOOP_BEG
&& NOTE_LINE_NUMBER (p) != NOTE_INSN_LOOP_END)); && NOTE_LINE_NUMBER (p) != NOTE_INSN_LOOP_END));
@ -753,11 +753,9 @@ scan_loop (loop, flags)
p != NULL_RTX; p != NULL_RTX;
p = next_insn_in_loop (loop, p)) p = next_insn_in_loop (loop, p))
{ {
if (GET_RTX_CLASS (GET_CODE (p)) == 'i' if (INSN_P (p) && find_reg_note (p, REG_LIBCALL, NULL_RTX))
&& find_reg_note (p, REG_LIBCALL, NULL_RTX))
in_libcall = 1; in_libcall = 1;
else if (GET_RTX_CLASS (GET_CODE (p)) == 'i' else if (INSN_P (p) && find_reg_note (p, REG_RETVAL, NULL_RTX))
&& find_reg_note (p, REG_RETVAL, NULL_RTX))
in_libcall = 0; in_libcall = 0;
if (GET_CODE (p) == INSN if (GET_CODE (p) == INSN
@ -2736,7 +2734,7 @@ find_and_verify_loops (f, loops)
possible second cse pass. */ possible second cse pass. */
for (insn = f; insn; insn = NEXT_INSN (insn)) for (insn = f; insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
struct loop *this_loop = uid_loop[INSN_UID (insn)]; struct loop *this_loop = uid_loop[INSN_UID (insn)];
@ -3556,7 +3554,7 @@ count_loop_regs_set (from, to, may_not_move, single_usage, count_ptr, nregs)
for (insn = from; insn != to; insn = NEXT_INSN (insn)) for (insn = from; insn != to; insn = NEXT_INSN (insn))
{ {
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
++count; ++count;
@ -3609,8 +3607,7 @@ loop_reg_used_before_p (loop, set, insn)
are done. Otherwise, if we hit LOOP->END, wrap around to LOOP->START. */ are done. Otherwise, if we hit LOOP->END, wrap around to LOOP->START. */
for (p = loop->scan_start; p != insn; p = NEXT_INSN (p)) for (p = loop->scan_start; p != insn; p = NEXT_INSN (p))
{ {
if (GET_RTX_CLASS (GET_CODE (p)) == 'i' if (INSN_P (p) && reg_overlap_mentioned_p (reg, PATTERN (p)))
&& reg_overlap_mentioned_p (reg, PATTERN (p)))
return 1; return 1;
if (p == loop->end) if (p == loop->end)
@ -4107,8 +4104,7 @@ strength_reduce (loop, insn_count, flags)
&& insn_dependent_p (giv_insn, next))) && insn_dependent_p (giv_insn, next)))
break; break;
#ifdef HAVE_cc0 #ifdef HAVE_cc0
if (! INSN_P (next) if (! INSN_P (next) || ! sets_cc0_p (PATTERN (next)))
|| ! sets_cc0_p (PATTERN (next)))
#endif #endif
dominator = next; dominator = next;
} }
@ -4352,7 +4348,7 @@ strength_reduce (loop, insn_count, flags)
{ {
rtx note; rtx note;
if (GET_RTX_CLASS (GET_CODE (p)) != 'i') if (! INSN_P (p))
continue; continue;
if (reg_mentioned_p (old_reg, PATTERN (p))) if (reg_mentioned_p (old_reg, PATTERN (p)))
{ {
@ -4747,7 +4743,7 @@ strength_reduce (loop, insn_count, flags)
if ((auto_inc_opt == 1 && sets_cc0_p (PATTERN (v->insn))) if ((auto_inc_opt == 1 && sets_cc0_p (PATTERN (v->insn)))
|| (auto_inc_opt == -1 || (auto_inc_opt == -1
&& (prev = prev_nonnote_insn (v->insn)) != 0 && (prev = prev_nonnote_insn (v->insn)) != 0
&& GET_RTX_CLASS (GET_CODE (prev)) == 'i' && INSN_P (prev)
&& sets_cc0_p (PATTERN (prev)))) && sets_cc0_p (PATTERN (prev))))
auto_inc_opt = 0; auto_inc_opt = 0;
} }
@ -7474,7 +7470,7 @@ recombine_givs (loop, bl, unroll_p)
if (p == loop->start) if (p == loop->start)
p = loop->end; p = loop->end;
p = PREV_INSN (p); p = PREV_INSN (p);
if (GET_RTX_CLASS (GET_CODE (p)) != 'i') if (! INSN_P (p))
continue; continue;
ends_need_computing -= find_life_end (PATTERN (p), stats, p, biv); ends_need_computing -= find_life_end (PATTERN (p), stats, p, biv);
} }
@ -7913,7 +7909,7 @@ check_dbra_loop (loop, insn_count)
see if perhaps there are no uses except to count. */ see if perhaps there are no uses except to count. */
no_use_except_counting = 1; no_use_except_counting = 1;
for (p = loop_start; p != loop_end; p = NEXT_INSN (p)) for (p = loop_start; p != loop_end; p = NEXT_INSN (p))
if (GET_RTX_CLASS (GET_CODE (p)) == 'i') if (INSN_P (p))
{ {
rtx set = single_set (p); rtx set = single_set (p);
@ -7951,7 +7947,7 @@ check_dbra_loop (loop, insn_count)
else if (num_mem_sets <= 1) else if (num_mem_sets <= 1)
{ {
for (p = loop_start; p != loop_end; p = NEXT_INSN (p)) for (p = loop_start; p != loop_end; p = NEXT_INSN (p))
if (GET_RTX_CLASS (GET_CODE (p)) == 'i') if (INSN_P (p))
num_nonfixed_reads += count_nonfixed_reads (loop, PATTERN (p)); num_nonfixed_reads += count_nonfixed_reads (loop, PATTERN (p));
/* If the loop has a single store, and the destination address is /* If the loop has a single store, and the destination address is
@ -8292,7 +8288,7 @@ check_dbra_loop (loop, insn_count)
remove all REG_EQUAL notes based on the reversed biv remove all REG_EQUAL notes based on the reversed biv
here. */ here. */
for (p = loop_start; p != loop_end; p = NEXT_INSN (p)) for (p = loop_start; p != loop_end; p = NEXT_INSN (p))
if (GET_RTX_CLASS (GET_CODE (p)) == 'i') if (INSN_P (p))
{ {
rtx *pnote; rtx *pnote;
rtx set = single_set (p); rtx set = single_set (p);
@ -9552,7 +9548,7 @@ load_mems (loop)
rtx_and_int ri; rtx_and_int ri;
rtx set; rtx set;
if (GET_RTX_CLASS (GET_CODE (p)) == 'i') if (INSN_P (p))
{ {
/* See if this copies the mem into a register that isn't /* See if this copies the mem into a register that isn't
modified afterwards. We'll try to do copy propagation modified afterwards. We'll try to do copy propagation
@ -9745,7 +9741,7 @@ try_copy_prop (loop, replacement, regno)
if (GET_CODE (insn) == CODE_LABEL && init_insn) if (GET_CODE (insn) == CODE_LABEL && init_insn)
break; break;
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
/* Is this the initializing insn? */ /* Is this the initializing insn? */

View File

@ -89,7 +89,7 @@ print_rtx (in_rtx)
return; return;
} }
is_insn = (GET_RTX_CLASS (GET_CODE (in_rtx)) == 'i'); is_insn = (INSN_P (in_rtx));
/* When printing in VCG format we write INSNs, NOTE, LABEL, and BARRIER /* When printing in VCG format we write INSNs, NOTE, LABEL, and BARRIER
in separate nodes and therefore have to handle them special here. */ in separate nodes and therefore have to handle them special here. */

View File

@ -856,7 +856,7 @@ find_single_use (dest, insn, ploc)
for (next = next_nonnote_insn (insn); for (next = next_nonnote_insn (insn);
next != 0 && GET_CODE (next) != CODE_LABEL; next != 0 && GET_CODE (next) != CODE_LABEL;
next = next_nonnote_insn (next)) next = next_nonnote_insn (next))
if (GET_RTX_CLASS (GET_CODE (next)) == 'i' && dead_or_set_p (next, dest)) if (INSN_P (next) && dead_or_set_p (next, dest))
{ {
for (link = LOG_LINKS (next); link; link = XEXP (link, 1)) for (link = LOG_LINKS (next); link; link = XEXP (link, 1))
if (XEXP (link, 0) == insn) if (XEXP (link, 0) == insn)

View File

@ -302,7 +302,7 @@ stack_regs_mentioned (insn)
unsigned int uid, max; unsigned int uid, max;
int test; int test;
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
return 0; return 0;
uid = INSN_UID (insn); uid = INSN_UID (insn);
@ -342,8 +342,7 @@ next_flags_user (insn)
if (!insn) if (!insn)
return NULL_RTX; return NULL_RTX;
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i' if (INSN_P (insn) && reg_mentioned_p (ix86_flags_rtx, PATTERN (insn)))
&& reg_mentioned_p (ix86_flags_rtx, PATTERN (insn)))
return insn; return insn;
if (GET_CODE (insn) == JUMP_INSN if (GET_CODE (insn) == JUMP_INSN
@ -1237,8 +1236,7 @@ swap_rtx_condition (insn)
insn = NEXT_INSN (insn); insn = NEXT_INSN (insn);
if (insn == NULL_RTX) if (insn == NULL_RTX)
return 0; return 0;
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i' if (INSN_P (insn) && reg_mentioned_p (dest, insn))
&& reg_mentioned_p (dest, insn))
break; break;
if (GET_CODE (insn) == JUMP_INSN) if (GET_CODE (insn) == JUMP_INSN)
return 0; return 0;

View File

@ -284,7 +284,7 @@ mark_flags_life_zones (flags)
alive, death, birth. This lets more important info alive, death, birth. This lets more important info
overwrite the mode of lesser info. */ overwrite the mode of lesser info. */
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
#ifdef HAVE_cc0 #ifdef HAVE_cc0
/* In the cc0 case, death is not marked in reg notes, /* In the cc0 case, death is not marked in reg notes,
@ -414,7 +414,7 @@ optimize_reg_copy_1 (insn, dest, src)
if (flag_exceptions && GET_CODE (p) == CALL_INSN) if (flag_exceptions && GET_CODE (p) == CALL_INSN)
break; break;
if (GET_RTX_CLASS (GET_CODE (p)) != 'i') if (! INSN_P (p))
continue; continue;
if (reg_set_p (src, p) || reg_set_p (dest, p) if (reg_set_p (src, p) || reg_set_p (dest, p)
@ -599,7 +599,7 @@ optimize_reg_copy_2 (insn, dest, src)
if (flag_exceptions && GET_CODE (p) == CALL_INSN) if (flag_exceptions && GET_CODE (p) == CALL_INSN)
break; break;
if (GET_RTX_CLASS (GET_CODE (p)) != 'i') if (! INSN_P (p))
continue; continue;
set = single_set (p); set = single_set (p);
@ -611,7 +611,7 @@ optimize_reg_copy_2 (insn, dest, src)
/* Set to stop at next insn. */ /* Set to stop at next insn. */
for (q = insn; q != NEXT_INSN (p); q = NEXT_INSN (q)) for (q = insn; q != NEXT_INSN (p); q = NEXT_INSN (q))
if (GET_RTX_CLASS (GET_CODE (q)) == 'i') if (INSN_P (q))
{ {
if (reg_mentioned_p (dest, PATTERN (q))) if (reg_mentioned_p (dest, PATTERN (q)))
PATTERN (q) = replace_rtx (PATTERN (q), dest, src); PATTERN (q) = replace_rtx (PATTERN (q), dest, src);
@ -673,7 +673,7 @@ optimize_reg_copy_3 (insn, dest, src)
if (flag_exceptions && GET_CODE (p) == CALL_INSN) if (flag_exceptions && GET_CODE (p) == CALL_INSN)
return; return;
if (GET_RTX_CLASS (GET_CODE (p)) != 'i') if (! INSN_P (p))
continue; continue;
} }
if (! p) if (! p)
@ -709,7 +709,7 @@ optimize_reg_copy_3 (insn, dest, src)
subreg = gen_rtx_SUBREG (old_mode, src_reg, 0); subreg = gen_rtx_SUBREG (old_mode, src_reg, 0);
while (p = NEXT_INSN (p), p != insn) while (p = NEXT_INSN (p), p != insn)
{ {
if (GET_RTX_CLASS (GET_CODE (p)) != 'i') if (! INSN_P (p))
continue; continue;
/* Make a tenative change. */ /* Make a tenative change. */
@ -884,7 +884,7 @@ reg_is_remote_constant_p (reg, insn, first)
{ {
rtx s; rtx s;
if (GET_RTX_CLASS (GET_CODE (p)) != 'i') if (! INSN_P (p))
continue; continue;
s = single_set (p); s = single_set (p);
if (s != 0 if (s != 0
@ -952,7 +952,7 @@ fixup_match_2 (insn, dst, src, offset, regmove_dump_file)
if (flag_exceptions && GET_CODE (p) == CALL_INSN) if (flag_exceptions && GET_CODE (p) == CALL_INSN)
break; break;
if (GET_RTX_CLASS (GET_CODE (p)) != 'i') if (! INSN_P (p))
continue; continue;
if (find_regno_note (p, REG_DEAD, REGNO (dst))) if (find_regno_note (p, REG_DEAD, REGNO (dst)))
@ -991,7 +991,7 @@ fixup_match_2 (insn, dst, src, offset, regmove_dump_file)
if (GET_CODE (p) == CODE_LABEL if (GET_CODE (p) == CODE_LABEL
|| GET_CODE (p) == JUMP_INSN) || GET_CODE (p) == JUMP_INSN)
break; break;
if (GET_RTX_CLASS (GET_CODE (p)) != 'i') if (! INSN_P (p))
continue; continue;
if (reg_overlap_mentioned_p (dst, PATTERN (p))) if (reg_overlap_mentioned_p (dst, PATTERN (p)))
{ {
@ -1005,7 +1005,7 @@ fixup_match_2 (insn, dst, src, offset, regmove_dump_file)
if (GET_CODE (p) == CODE_LABEL if (GET_CODE (p) == CODE_LABEL
|| GET_CODE (p) == JUMP_INSN) || GET_CODE (p) == JUMP_INSN)
break; break;
if (GET_RTX_CLASS (GET_CODE (p)) != 'i') if (! INSN_P (p))
continue; continue;
if (reg_overlap_mentioned_p (dst, PATTERN (p))) if (reg_overlap_mentioned_p (dst, PATTERN (p)))
{ {
@ -1225,7 +1225,7 @@ regmove_optimize (f, nregs, regmove_dump_file)
for (insn = get_last_insn (); insn; insn = PREV_INSN (insn)) for (insn = get_last_insn (); insn; insn = PREV_INSN (insn))
{ {
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
int op_no, match_no; int op_no, match_no;
int success = 0; int success = 0;
@ -1384,7 +1384,7 @@ regmove_optimize (f, nregs, regmove_dump_file)
if (flag_exceptions && GET_CODE (p) == CALL_INSN) if (flag_exceptions && GET_CODE (p) == CALL_INSN)
break; break;
if (GET_RTX_CLASS (GET_CODE (p)) != 'i') if (! INSN_P (p))
continue; continue;
length++; length++;
@ -1669,7 +1669,7 @@ fixup_match_1 (insn, set, src, src_subreg, dst, backward, operand_number,
if (flag_exceptions && GET_CODE (p) == CALL_INSN) if (flag_exceptions && GET_CODE (p) == CALL_INSN)
break; break;
if (GET_RTX_CLASS (GET_CODE (p)) != 'i') if (! INSN_P (p))
continue; continue;
length++; length++;
@ -1723,7 +1723,7 @@ fixup_match_1 (insn, set, src, src_subreg, dst, backward, operand_number,
break; break;
} }
if (GET_RTX_CLASS (GET_CODE (q)) != 'i') if (! INSN_P (q))
continue; continue;
if (reg_overlap_mentioned_p (src, PATTERN (q)) if (reg_overlap_mentioned_p (src, PATTERN (q))
|| reg_set_p (src, q)) || reg_set_p (src, q))
@ -1859,8 +1859,7 @@ fixup_match_1 (insn, set, src, src_subreg, dst, backward, operand_number,
/* emit_insn_after_with_line_notes has no /* emit_insn_after_with_line_notes has no
return value, so search for the new insn. */ return value, so search for the new insn. */
insn = p; insn = p;
while (GET_RTX_CLASS (GET_CODE (insn)) != 'i' while (! INSN_P (insn) || PATTERN (insn) != pat)
|| PATTERN (insn) != pat)
insn = PREV_INSN (insn); insn = PREV_INSN (insn);
REG_NOTES (insn) = notes; REG_NOTES (insn) = notes;
@ -1899,7 +1898,7 @@ fixup_match_1 (insn, set, src, src_subreg, dst, backward, operand_number,
break; break;
} }
if (GET_RTX_CLASS (GET_CODE (q)) != 'i') if (! INSN_P (q))
continue; continue;
s_length2++; s_length2++;
if (reg_set_p (src, q)) if (reg_set_p (src, q))
@ -1964,7 +1963,7 @@ fixup_match_1 (insn, set, src, src_subreg, dst, backward, operand_number,
if (flag_exceptions && GET_CODE (q) == CALL_INSN) if (flag_exceptions && GET_CODE (q) == CALL_INSN)
break; break;
if (GET_RTX_CLASS (GET_CODE (q)) != 'i') if (! INSN_P (q))
continue; continue;
if (src != inc_dest && (reg_overlap_mentioned_p (src, PATTERN (q)) if (src != inc_dest && (reg_overlap_mentioned_p (src, PATTERN (q))
|| reg_set_p (src, q))) || reg_set_p (src, q)))

View File

@ -465,7 +465,7 @@ build_def_use (b, ebb, regs_used, du, defs_live_exit)
struct resources insn_res; struct resources insn_res;
struct resources insn_sets; struct resources insn_sets;
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
CLEAR_RESOURCE (&insn_sets); CLEAR_RESOURCE (&insn_sets);
@ -559,7 +559,7 @@ replace_reg_in_block (du, uid_ruid, def, reg_def, avail_reg)
/* Now replace in the uses. */ /* Now replace in the uses. */
for (du_idx = def + 1; du_idx < du->high_bound; du_idx++) for (du_idx = def + 1; du_idx < du->high_bound; du_idx++)
{ {
if (GET_RTX_CLASS (GET_CODE (VARRAY_RTX (*uid_ruid, du_idx))) != 'i') if (! INSN_P (VARRAY_RTX (*uid_ruid, du_idx)))
continue; continue;
reg_use = regno_use_in (r, PATTERN (VARRAY_RTX (*uid_ruid, du_idx))); reg_use = regno_use_in (r, PATTERN (VARRAY_RTX (*uid_ruid, du_idx)));
@ -802,7 +802,7 @@ consider_use (insn, regno, def_block, use_block)
edge e; edge e;
basic_block ub = BASIC_BLOCK (use_block); basic_block ub = BASIC_BLOCK (use_block);
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
return 0; return 0;
/* If a use's basic block is different than the def's basic block, /* If a use's basic block is different than the def's basic block,

View File

@ -6309,7 +6309,7 @@ find_equiv_reg (goal, insn, class, other, reload_reg_p, goalreg, mode)
return 0; return 0;
#endif #endif
if (GET_RTX_CLASS (GET_CODE (p)) == 'i') if (INSN_P (p))
{ {
pat = PATTERN (p); pat = PATTERN (p);

View File

@ -773,7 +773,7 @@ reload (first, global, dumpfile)
= gen_rtx_INSN_LIST (VOIDmode, insn, = gen_rtx_INSN_LIST (VOIDmode, insn,
reg_equiv_init[REGNO (SET_SRC (set))]); reg_equiv_init[REGNO (SET_SRC (set))]);
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
scan_paradoxical_subregs (PATTERN (insn)); scan_paradoxical_subregs (PATTERN (insn));
} }
@ -1113,7 +1113,7 @@ reload (first, global, dumpfile)
and regenerate REG_INC notes that may have been moved around. */ and regenerate REG_INC notes that may have been moved around. */
for (insn = first; insn; insn = NEXT_INSN (insn)) for (insn = first; insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
rtx *pnote; rtx *pnote;
@ -1225,7 +1225,7 @@ maybe_fix_stack_asms ()
HARD_REG_SET clobbered, allowed; HARD_REG_SET clobbered, allowed;
rtx pat; rtx pat;
if (GET_RTX_CLASS (GET_CODE (chain->insn)) != 'i' if (! INSN_P (chain->insn)
|| (noperands = asm_noperands (PATTERN (chain->insn))) < 0) || (noperands = asm_noperands (PATTERN (chain->insn))) < 0)
continue; continue;
pat = PATTERN (chain->insn); pat = PATTERN (chain->insn);
@ -1360,11 +1360,10 @@ calculate_needs_all_insns (global)
known offsets at labels. */ known offsets at labels. */
if (GET_CODE (insn) == CODE_LABEL || GET_CODE (insn) == JUMP_INSN if (GET_CODE (insn) == CODE_LABEL || GET_CODE (insn) == JUMP_INSN
|| (GET_RTX_CLASS (GET_CODE (insn)) == 'i' || (INSN_P (insn) && REG_NOTES (insn) != 0))
&& REG_NOTES (insn) != 0))
set_label_offsets (insn, insn, 0); set_label_offsets (insn, insn, 0);
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
rtx old_body = PATTERN (insn); rtx old_body = PATTERN (insn);
int old_code = INSN_CODE (insn); int old_code = INSN_CODE (insn);
@ -3746,7 +3745,7 @@ reload_as_needed (live_known)
if (GET_CODE (insn) == CODE_LABEL) if (GET_CODE (insn) == CODE_LABEL)
set_offsets_for_label (insn); set_offsets_for_label (insn);
else if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') else if (INSN_P (insn))
{ {
rtx oldpat = PATTERN (insn); rtx oldpat = PATTERN (insn);
@ -3834,7 +3833,7 @@ reload_as_needed (live_known)
if (asm_noperands (PATTERN (insn)) >= 0) if (asm_noperands (PATTERN (insn)) >= 0)
for (p = NEXT_INSN (prev); p != next; p = NEXT_INSN (p)) for (p = NEXT_INSN (prev); p != next; p = NEXT_INSN (p))
if (p != insn && GET_RTX_CLASS (GET_CODE (p)) == 'i' if (p != insn && INSN_P (p)
&& (recog_memoized (p) < 0 && (recog_memoized (p) < 0
|| (extract_insn (p), ! constrain_operands (1)))) || (extract_insn (p), ! constrain_operands (1))))
{ {
@ -6560,7 +6559,7 @@ emit_output_reload_insns (chain, rl, j)
/* Look at all insns we emitted, just to be safe. */ /* Look at all insns we emitted, just to be safe. */
for (p = get_insns (); p; p = NEXT_INSN (p)) for (p = get_insns (); p; p = NEXT_INSN (p))
if (GET_RTX_CLASS (GET_CODE (p)) == 'i') if (INSN_P (p))
{ {
rtx pat = PATTERN (p); rtx pat = PATTERN (p);
@ -7635,7 +7634,7 @@ delete_address_reloads_1 (dead_insn, x, current_insn)
{ {
if (GET_CODE (i2) == CODE_LABEL) if (GET_CODE (i2) == CODE_LABEL)
break; break;
if (GET_RTX_CLASS (GET_CODE (i2)) != 'i') if (! INSN_P (i2))
continue; continue;
if (reg_referenced_p (dst, PATTERN (i2))) if (reg_referenced_p (dst, PATTERN (i2)))
{ {
@ -7969,7 +7968,7 @@ reload_cse_regs_1 (first)
for (insn = first; insn; insn = NEXT_INSN (insn)) for (insn = first; insn; insn = NEXT_INSN (insn))
{ {
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
reload_cse_simplify (insn); reload_cse_simplify (insn);
cselib_process_insn (insn); cselib_process_insn (insn);
@ -8424,7 +8423,7 @@ reload_combine ()
if (! fixed_regs[r]) if (! fixed_regs[r])
reg_state[r].use_index = RELOAD_COMBINE_MAX_USES; reg_state[r].use_index = RELOAD_COMBINE_MAX_USES;
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
reload_combine_ruid++; reload_combine_ruid++;
@ -8855,7 +8854,7 @@ reload_cse_move2add (first)
if (GET_CODE (insn) == CODE_LABEL) if (GET_CODE (insn) == CODE_LABEL)
last_label_luid = move2add_luid; last_label_luid = move2add_luid;
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
continue; continue;
pat = PATTERN (insn); pat = PATTERN (insn);
/* For simplicity, we only perform this optimization on /* For simplicity, we only perform this optimization on

View File

@ -1631,7 +1631,7 @@ redundant_insn (insn, target, delay_list)
if (GET_CODE (trial) == CODE_LABEL) if (GET_CODE (trial) == CODE_LABEL)
return 0; return 0;
if (GET_RTX_CLASS (GET_CODE (trial)) != 'i') if (! INSN_P (trial))
continue; continue;
pat = PATTERN (trial); pat = PATTERN (trial);
@ -3594,7 +3594,7 @@ dbr_schedule (first, file)
next = NEXT_INSN (insn); next = NEXT_INSN (insn);
if (GET_CODE (insn) == INSN && GET_CODE (PATTERN (insn)) == USE if (GET_CODE (insn) == INSN && GET_CODE (PATTERN (insn)) == USE
&& GET_RTX_CLASS (GET_CODE (XEXP (PATTERN (insn), 0))) == 'i') && INSN_P (XEXP (PATTERN (insn), 0)))
next = delete_insn (insn); next = delete_insn (insn);
} }

View File

@ -452,7 +452,7 @@ find_dead_or_set_registers (target, res, jump_target, jump_count, set, needed)
/* If INSN is a USE made by update_block, we care about the /* If INSN is a USE made by update_block, we care about the
underlying insn. Any registers set by the underlying insn underlying insn. Any registers set by the underlying insn
are live since the insn is being done somewhere else. */ are live since the insn is being done somewhere else. */
if (GET_RTX_CLASS (GET_CODE (XEXP (PATTERN (insn), 0))) == 'i') if (INSN_P (XEXP (PATTERN (insn), 0)))
mark_set_resources (XEXP (PATTERN (insn), 0), res, 0, mark_set_resources (XEXP (PATTERN (insn), 0), res, 0,
MARK_SRC_DEST_CALL); MARK_SRC_DEST_CALL);
@ -991,7 +991,7 @@ mark_target_live_regs (insns, target, res)
/* If this insn is a USE made by update_block, we care about the /* If this insn is a USE made by update_block, we care about the
underlying insn. */ underlying insn. */
if (GET_CODE (insn) == INSN && GET_CODE (PATTERN (insn)) == USE if (GET_CODE (insn) == INSN && GET_CODE (PATTERN (insn)) == USE
&& GET_RTX_CLASS (GET_CODE (XEXP (PATTERN (insn), 0))) == 'i') && INSN_P (XEXP (PATTERN (insn), 0)))
real_insn = XEXP (PATTERN (insn), 0); real_insn = XEXP (PATTERN (insn), 0);
if (GET_CODE (real_insn) == CALL_INSN) if (GET_CODE (real_insn) == CALL_INSN)

View File

@ -418,7 +418,7 @@ reg_used_between_p (reg, from_insn, to_insn)
return 0; return 0;
for (insn = NEXT_INSN (from_insn); insn != to_insn; insn = NEXT_INSN (insn)) for (insn = NEXT_INSN (from_insn); insn != to_insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i' if (INSN_P (insn)
&& (reg_overlap_mentioned_p (reg, PATTERN (insn)) && (reg_overlap_mentioned_p (reg, PATTERN (insn))
|| (GET_CODE (insn) == CALL_INSN || (GET_CODE (insn) == CALL_INSN
&& (find_reg_fusage (insn, USE, reg) && (find_reg_fusage (insn, USE, reg)
@ -517,7 +517,7 @@ reg_referenced_between_p (reg, from_insn, to_insn)
return 0; return 0;
for (insn = NEXT_INSN (from_insn); insn != to_insn; insn = NEXT_INSN (insn)) for (insn = NEXT_INSN (from_insn); insn != to_insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i' if (INSN_P (insn)
&& (reg_referenced_p (reg, PATTERN (insn)) && (reg_referenced_p (reg, PATTERN (insn))
|| (GET_CODE (insn) == CALL_INSN || (GET_CODE (insn) == CALL_INSN
&& find_reg_fusage (insn, USE, reg)))) && find_reg_fusage (insn, USE, reg))))
@ -538,8 +538,7 @@ reg_set_between_p (reg, from_insn, to_insn)
return 0; return 0;
for (insn = NEXT_INSN (from_insn); insn != to_insn; insn = NEXT_INSN (insn)) for (insn = NEXT_INSN (from_insn); insn != to_insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i' if (INSN_P (insn) && reg_set_p (reg, insn))
&& reg_set_p (reg, insn))
return 1; return 1;
return 0; return 0;
} }
@ -571,7 +570,7 @@ reg_set_p (reg, insn)
/* We can be passed an insn or part of one. If we are passed an insn, /* We can be passed an insn or part of one. If we are passed an insn,
check if a side-effect of the insn clobbers REG. */ check if a side-effect of the insn clobbers REG. */
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
if (FIND_REG_INC_NOTE (insn, reg) if (FIND_REG_INC_NOTE (insn, reg)
|| (GET_CODE (insn) == CALL_INSN || (GET_CODE (insn) == CALL_INSN
@ -802,7 +801,7 @@ single_set (insn)
rtx set; rtx set;
int i; int i;
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
return 0; return 0;
if (GET_CODE (PATTERN (insn)) == SET) if (GET_CODE (PATTERN (insn)) == SET)
@ -852,7 +851,7 @@ multiple_sets (insn)
int i; int i;
/* INSN must be an insn. */ /* INSN must be an insn. */
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
return 0; return 0;
/* Only a PARALLEL can have multiple SETs. */ /* Only a PARALLEL can have multiple SETs. */
@ -891,7 +890,7 @@ find_last_value (x, pinsn, valid_to, allow_hwreg)
for (p = PREV_INSN (*pinsn); p && GET_CODE (p) != CODE_LABEL; for (p = PREV_INSN (*pinsn); p && GET_CODE (p) != CODE_LABEL;
p = PREV_INSN (p)) p = PREV_INSN (p))
if (GET_RTX_CLASS (GET_CODE (p)) == 'i') if (INSN_P (p))
{ {
rtx set = single_set (p); rtx set = single_set (p);
rtx note = find_reg_note (p, REG_EQUAL, NULL_RTX); rtx note = find_reg_note (p, REG_EQUAL, NULL_RTX);
@ -1194,7 +1193,7 @@ reg_set_last (x, insn)
&& ! (GET_CODE (insn) == CALL_INSN && ! (GET_CODE (insn) == CALL_INSN
&& reg_set_last_last_regno <= FIRST_PSEUDO_REGISTER); && reg_set_last_last_regno <= FIRST_PSEUDO_REGISTER);
insn = PREV_INSN (insn)) insn = PREV_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
note_stores (PATTERN (insn), reg_set_last_1, NULL); note_stores (PATTERN (insn), reg_set_last_1, NULL);
if (reg_set_last_unknown) if (reg_set_last_unknown)
@ -1427,7 +1426,7 @@ find_reg_note (insn, kind, datum)
register rtx link; register rtx link;
/* Ignore anything that is not an INSN, JUMP_INSN or CALL_INSN. */ /* Ignore anything that is not an INSN, JUMP_INSN or CALL_INSN. */
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
return 0; return 0;
for (link = REG_NOTES (insn); link; link = XEXP (link, 1)) for (link = REG_NOTES (insn); link; link = XEXP (link, 1))
@ -1451,7 +1450,7 @@ find_regno_note (insn, kind, regno)
register rtx link; register rtx link;
/* Ignore anything that is not an INSN, JUMP_INSN or CALL_INSN. */ /* Ignore anything that is not an INSN, JUMP_INSN or CALL_INSN. */
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
return 0; return 0;
for (link = REG_NOTES (insn); link; link = XEXP (link, 1)) for (link = REG_NOTES (insn); link; link = XEXP (link, 1))

View File

@ -301,7 +301,7 @@ sequence_uses_addressof (seq)
rtx insn; rtx insn;
for (insn = seq; insn; insn = NEXT_INSN (insn)) for (insn = seq; insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
/* If this is a CALL_PLACEHOLDER, then recursively call ourselves /* If this is a CALL_PLACEHOLDER, then recursively call ourselves
with each nonempty sequence attached to the CALL_PLACEHOLDER. */ with each nonempty sequence attached to the CALL_PLACEHOLDER. */

View File

@ -3189,7 +3189,7 @@ cselib_process_insn (insn)
return; return;
} }
if (GET_RTX_CLASS (GET_CODE (insn)) != 'i') if (! INSN_P (insn))
{ {
cselib_current_insn = 0; cselib_current_insn = 0;
return; return;

View File

@ -491,7 +491,7 @@ find_evaluations (evals, nregs)
last = BLOCK_END (bb); last = BLOCK_END (bb);
while (1) while (1)
{ {
if (GET_RTX_CLASS (GET_CODE (p)) == 'i') if (INSN_P (p))
note_stores (PATTERN (p), find_evaluations_1, NULL); note_stores (PATTERN (p), find_evaluations_1, NULL);
if (p == last) if (p == last)
@ -999,7 +999,7 @@ rename_block (bb, idom)
do do
{ {
insn = next; insn = next;
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
struct rename_context context; struct rename_context context;
context.done_renames = set_data; context.done_renames = set_data;
@ -2122,7 +2122,7 @@ rename_equivalent_regs (reg_partition)
do do
{ {
insn = next; insn = next;
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
{ {
for_each_rtx (&PATTERN (insn), for_each_rtx (&PATTERN (insn),
rename_equivalent_regs_in_insn, rename_equivalent_regs_in_insn,

View File

@ -3522,8 +3522,7 @@ loop_find_equiv_value (loop, reg)
if (GET_CODE (insn) == CODE_LABEL) if (GET_CODE (insn) == CODE_LABEL)
break; break;
else if (GET_RTX_CLASS (GET_CODE (insn)) == 'i' else if (INSN_P (insn) && reg_set_p (reg, insn))
&& reg_set_p (reg, insn))
{ {
/* We found the last insn before the loop that sets the register. /* We found the last insn before the loop that sets the register.
If it sets the entire register, and has a REG_EQUAL note, If it sets the entire register, and has a REG_EQUAL note,
@ -4125,8 +4124,7 @@ set_dominates_use (regno, first_uid, last_uid, copy_start, copy_end)
} }
/* Verify that FIRST_UID is an insn that entirely sets REGNO. */ /* Verify that FIRST_UID is an insn that entirely sets REGNO. */
if (GET_RTX_CLASS (GET_CODE (p)) != 'i' if (! INSN_P (p) || ! dead_or_set_regno_p (p, regno))
|| ! dead_or_set_regno_p (p, regno))
return 0; return 0;
/* FIRST_UID is always executed. */ /* FIRST_UID is always executed. */

View File

@ -3889,13 +3889,13 @@ mark_constant_pool ()
pool->mark = 0; pool->mark = 0;
for (insn = get_insns (); insn; insn = NEXT_INSN (insn)) for (insn = get_insns (); insn; insn = NEXT_INSN (insn))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
mark_constants (PATTERN (insn)); mark_constants (PATTERN (insn));
for (insn = current_function_epilogue_delay_list; for (insn = current_function_epilogue_delay_list;
insn; insn;
insn = XEXP (insn, 1)) insn = XEXP (insn, 1))
if (GET_RTX_CLASS (GET_CODE (insn)) == 'i') if (INSN_P (insn))
mark_constants (PATTERN (insn)); mark_constants (PATTERN (insn));
/* It's possible that the only reference to a symbol is in a symbol /* It's possible that the only reference to a symbol is in a symbol
@ -3953,7 +3953,7 @@ mark_constants (x)
/* Insns may appear inside a SEQUENCE. Only check the patterns of /* Insns may appear inside a SEQUENCE. Only check the patterns of
insns, not any notes that may be attached. We don't want to mark insns, not any notes that may be attached. We don't want to mark
a constant just because it happens to appear in a REG_EQUIV note. */ a constant just because it happens to appear in a REG_EQUIV note. */
if (GET_RTX_CLASS (GET_CODE (x)) == 'i') if (INSN_P (x))
{ {
mark_constants (PATTERN (x)); mark_constants (PATTERN (x));
return; return;