From: David Malcolm <dmalcolm@redhat.com>
To: gcc-patches@gcc.gnu.org
Cc: David Malcolm <dmalcolm@redhat.com>
Subject: [PATCH 139/236] config/mep: Use rtx_insn and rtx_code_label
Date: Wed, 06 Aug 2014 17:44:00 -0000 [thread overview]
Message-ID: <1407345815-14551-140-git-send-email-dmalcolm@redhat.com> (raw)
In-Reply-To: <1407345815-14551-1-git-send-email-dmalcolm@redhat.com>
gcc/
* config/mep/mep-protos.h (mep_mulr_source): Strengthen first
param from rtx to rtx_insn *.
(mep_reuse_lo): Likewise for third param.
(mep_use_post_modify_p): Likewise for first param.
(mep_core_address_length): Likewise.
(mep_cop_address_length): Likewise.
(mep_final_prescan_insn): Likewise.
(mep_store_data_bypass_p): Likewise for both params.
(mep_mul_hilo_bypass_p): Likewise.
(mep_ipipe_ldc_p): Likewise for param.
* config/mep/mep.c (mep_mulr_source): Likewise for param "insn".
(mep_rewrite_mult): Likewise.
(mep_rewrite_mulsi3): Likewise.
(mep_rewrite_maddsi3): Likewise.
(mep_reuse_lo_p_1): Likewise.
(mep_reuse_lo_p): Likewise.
(mep_frame_expr): Likewise.
(mep_make_parallel): Likewise for both params.
(mep_use_post_modify_p_1): Likewise for param "set_insn" and
local "insn".
(mep_use_post_modify_p): Likewise for param "insn".
(mep_core_address_length): Likewise.
(mep_cop_address_length): Likewise.
(mep_reg_set_in_function): Likewise for local "insn".
(mep_asm_without_operands_p): Likewise.
(F): Likewise for return type and param "x".
(add_constant): Likewise for local "insn".
(maybe_dead_move): Likewise for return type and local "insn".
(mep_expand_prologue): Likewise for local "insn".
(mep_final_prescan_insn): Likewise for param "insn".
(mep_reorg_regmove): Likewise for param "insns" and locals "insn",
"next", "follow", "x".
(mep_insert_repeat_label_last): Likewise for return type, param
"last_insn", and locals "next", "prev". Strengthen param "label"
from rtx to rtx_code_label *.
(struct mep_doloop_begin): Strengthen field "insn" from rtx to
rtx_insn *.
(struct mep_doloop_end): Likewise for fields "insn" and
"fallthrough".
(mep_reorg_repeat): Likewise for param "insns" and local "insn".
Strengthen local "repeat_label" from rtx to rtx_code_label *.
(mep_invertable_branch_p): Strengthen param "insn" from rtx to
rtx_insn *.
(mep_invert_branch): Likewise for params "insn" and "after".
(mep_reorg_erepeat): Likewise for param "insns" and locals
"insn", "prev", "new_last", "barrier", "user". Strengthen local
"l" from rtx to rtx_code_label *.
(mep_jmp_return_reorg): Strengthen param "insns" and local "insn"
from rtx to rtx_insn *.
(mep_reorg_addcombine): Likewise for param "insns" and locals
"i", "n".
(add_sp_insn_p): Likewise for param "insn".
(mep_reorg_noframe): Likewise for param "insns" and locals
"start_frame_insn", "end_frame_insn", "next".
(mep_reorg): Likewise for local "insns".
(mep_store_data_bypass_1): Likewise for param "prev". Add checked
cast.
(mep_store_data_bypass_p): Likewise for params "prev", "insn".
(mep_mul_hilo_bypass_p): Likewise.
(mep_ipipe_ldc_p): Likewise for param "insn".
(mep_make_bundle): Likewise for return type, param "cop" and local
"insn", splitting out the latter into a new local "seq" for when it
is a SEQUENCE rather than an insn.
(core_insn_p): Likewise for param "insn".
(mep_bundle_insns): Likewise for param "insns" and locals "insn",
"last", "first", "note", "prev", "core_insn".
---
gcc/config/mep/mep-protos.h | 18 ++---
gcc/config/mep/mep.c | 179 +++++++++++++++++++++++---------------------
2 files changed, 103 insertions(+), 94 deletions(-)
diff --git a/gcc/config/mep/mep-protos.h b/gcc/config/mep/mep-protos.h
index c4b74e5..e1903c7 100644
--- a/gcc/config/mep/mep-protos.h
+++ b/gcc/config/mep/mep-protos.h
@@ -19,9 +19,9 @@ along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
extern int mep_regno_reg_class (int);
-extern rtx mep_mulr_source (rtx, rtx, rtx, rtx);
-extern bool mep_reuse_lo_p (rtx, rtx, rtx, bool);
-extern bool mep_use_post_modify_p (rtx, rtx, rtx);
+extern rtx mep_mulr_source (rtx_insn *, rtx, rtx, rtx);
+extern bool mep_reuse_lo_p (rtx, rtx, rtx_insn *, bool);
+extern bool mep_use_post_modify_p (rtx_insn *, rtx, rtx);
extern bool mep_allow_clip (rtx, rtx, int);
extern bool mep_bit_position_p (rtx, bool);
extern bool mep_split_mov (rtx *, int);
@@ -31,8 +31,8 @@ extern bool mep_multi_slot (rtx);
extern bool mep_legitimate_address (enum machine_mode, rtx, int);
extern int mep_legitimize_address (rtx *, rtx, enum machine_mode);
extern int mep_legitimize_reload_address (rtx *, enum machine_mode, int, /*enum reload_type*/ int, int);
-extern int mep_core_address_length (rtx, int);
-extern int mep_cop_address_length (rtx, int);
+extern int mep_core_address_length (rtx_insn *, int);
+extern int mep_cop_address_length (rtx_insn *, int);
extern bool mep_expand_mov (rtx *, enum machine_mode);
extern bool mep_mov_ok (rtx *, enum machine_mode);
extern void mep_split_wide_move (rtx *, enum machine_mode);
@@ -65,7 +65,7 @@ extern void mep_function_profiler (FILE *);
extern const char *mep_emit_bb_trace_ret (void);
extern void mep_print_operand_address (FILE *, rtx);
extern void mep_print_operand (FILE *, rtx, int);
-extern void mep_final_prescan_insn (rtx, rtx *, int);
+extern void mep_final_prescan_insn (rtx_insn *, rtx *, int);
extern void mep_init_cumulative_args (CUMULATIVE_ARGS *, tree, rtx, tree);
extern bool mep_return_in_memory (const_tree, const_tree);
extern rtx mep_function_value (const_tree, const_tree);
@@ -79,9 +79,9 @@ extern void mep_output_aligned_common (FILE *, tree, const char *,
int, int, int);
extern void mep_emit_doloop (rtx *, int);
extern bool mep_vliw_function_p (tree);
-extern bool mep_store_data_bypass_p (rtx, rtx);
-extern bool mep_mul_hilo_bypass_p (rtx, rtx);
-extern bool mep_ipipe_ldc_p (rtx);
+extern bool mep_store_data_bypass_p (rtx_insn *, rtx_insn *);
+extern bool mep_mul_hilo_bypass_p (rtx_insn *, rtx_insn *);
+extern bool mep_ipipe_ldc_p (rtx_insn *);
extern bool mep_emit_intrinsic (int, const rtx *);
extern bool mep_expand_unary_intrinsic (int, rtx *);
extern bool mep_expand_binary_intrinsic (int, int, int, int, rtx *);
diff --git a/gcc/config/mep/mep.c b/gcc/config/mep/mep.c
index 544f267..3a58efb 100644
--- a/gcc/config/mep/mep.c
+++ b/gcc/config/mep/mep.c
@@ -153,10 +153,10 @@ static bool symbolref_p (rtx);
static void encode_pattern_1 (rtx);
static void encode_pattern (rtx);
static bool const_in_range (rtx, int, int);
-static void mep_rewrite_mult (rtx, rtx);
-static void mep_rewrite_mulsi3 (rtx, rtx, rtx, rtx);
-static void mep_rewrite_maddsi3 (rtx, rtx, rtx, rtx, rtx);
-static bool mep_reuse_lo_p_1 (rtx, rtx, rtx, bool);
+static void mep_rewrite_mult (rtx_insn *, rtx);
+static void mep_rewrite_mulsi3 (rtx_insn *, rtx, rtx, rtx);
+static void mep_rewrite_maddsi3 (rtx_insn *, rtx, rtx, rtx, rtx);
+static bool mep_reuse_lo_p_1 (rtx, rtx, rtx_insn *, bool);
static bool move_needs_splitting (rtx, rtx, enum machine_mode);
static bool mep_expand_setcc_1 (enum rtx_code, rtx, rtx, rtx);
static bool mep_nongeneral_reg (rtx);
@@ -171,9 +171,9 @@ static bool mep_reg_set_p (rtx, rtx);
static bool mep_reg_set_in_function (int);
static bool mep_interrupt_saved_reg (int);
static bool mep_call_saves_register (int);
-static rtx F (rtx);
+static rtx_insn *F (rtx_insn *);
static void add_constant (int, int, int, int);
-static rtx maybe_dead_move (rtx, rtx, bool);
+static rtx_insn *maybe_dead_move (rtx, rtx, bool);
static void mep_reload_pointer (int, const char *);
static void mep_start_function (FILE *, HOST_WIDE_INT);
static bool mep_function_ok_for_sibcall (tree, tree);
@@ -198,14 +198,15 @@ static void mep_unique_section (tree, int);
static unsigned int mep_section_type_flags (tree, const char *, int);
static void mep_asm_named_section (const char *, unsigned int, tree);
static bool mep_mentioned_p (rtx, rtx, int);
-static void mep_reorg_regmove (rtx);
-static rtx mep_insert_repeat_label_last (rtx, rtx, bool, bool);
-static void mep_reorg_repeat (rtx);
-static bool mep_invertable_branch_p (rtx);
-static void mep_invert_branch (rtx, rtx);
-static void mep_reorg_erepeat (rtx);
-static void mep_jmp_return_reorg (rtx);
-static void mep_reorg_addcombine (rtx);
+static void mep_reorg_regmove (rtx_insn *);
+static rtx_insn *mep_insert_repeat_label_last (rtx_insn *, rtx_code_label *,
+ bool, bool);
+static void mep_reorg_repeat (rtx_insn *);
+static bool mep_invertable_branch_p (rtx_insn *);
+static void mep_invert_branch (rtx_insn *, rtx_insn *);
+static void mep_reorg_erepeat (rtx_insn *);
+static void mep_jmp_return_reorg (rtx_insn *);
+static void mep_reorg_addcombine (rtx_insn *);
static void mep_reorg (void);
static void mep_init_intrinsics (void);
static void mep_init_builtins (void);
@@ -222,8 +223,8 @@ static int mep_issue_rate (void);
static rtx mep_find_ready_insn (rtx *, int, enum attr_slot, int);
static void mep_move_ready_insn (rtx *, int, rtx);
static int mep_sched_reorder (FILE *, int, rtx *, int *, int);
-static rtx mep_make_bundle (rtx, rtx);
-static void mep_bundle_insns (rtx);
+static rtx_insn *mep_make_bundle (rtx, rtx_insn *);
+static void mep_bundle_insns (rtx_insn *);
static bool mep_rtx_cost (rtx, int, int, int, int *, bool);
static int mep_address_cost (rtx, enum machine_mode, addr_space_t, bool);
static void mep_setup_incoming_varargs (cumulative_args_t, enum machine_mode,
@@ -623,7 +624,7 @@ const_in_range (rtx x, int minv, int maxv)
at the end of the insn stream. */
rtx
-mep_mulr_source (rtx insn, rtx dest, rtx src1, rtx src2)
+mep_mulr_source (rtx_insn *insn, rtx dest, rtx src1, rtx src2)
{
if (rtx_equal_p (dest, src1))
return src2;
@@ -644,7 +645,7 @@ mep_mulr_source (rtx insn, rtx dest, rtx src1, rtx src2)
to (clobber (reg:SI HI_REGNO)). */
static void
-mep_rewrite_mult (rtx insn, rtx pattern)
+mep_rewrite_mult (rtx_insn *insn, rtx pattern)
{
rtx hi_clobber;
@@ -659,7 +660,7 @@ mep_rewrite_mult (rtx insn, rtx pattern)
store the result in DEST if nonnull. */
static void
-mep_rewrite_mulsi3 (rtx insn, rtx dest, rtx src1, rtx src2)
+mep_rewrite_mulsi3 (rtx_insn *insn, rtx dest, rtx src1, rtx src2)
{
rtx lo, pattern;
@@ -677,7 +678,7 @@ mep_rewrite_mulsi3 (rtx insn, rtx dest, rtx src1, rtx src2)
be deleted by a peephole2 if SRC3 is already in $lo. */
static void
-mep_rewrite_maddsi3 (rtx insn, rtx dest, rtx src1, rtx src2, rtx src3)
+mep_rewrite_maddsi3 (rtx_insn *insn, rtx dest, rtx src1, rtx src2, rtx src3)
{
rtx lo, pattern;
@@ -719,7 +720,7 @@ mep_rewrite_maddsi3 (rtx insn, rtx dest, rtx src1, rtx src2, rtx src3)
if GPR is no longer used. */
static bool
-mep_reuse_lo_p_1 (rtx lo, rtx gpr, rtx insn, bool gpr_dead_p)
+mep_reuse_lo_p_1 (rtx lo, rtx gpr, rtx_insn *insn, bool gpr_dead_p)
{
do
{
@@ -775,7 +776,7 @@ mep_reuse_lo_p_1 (rtx lo, rtx gpr, rtx insn, bool gpr_dead_p)
/* A wrapper around mep_reuse_lo_p_1 that preserves recog_data. */
bool
-mep_reuse_lo_p (rtx lo, rtx gpr, rtx insn, bool gpr_dead_p)
+mep_reuse_lo_p (rtx lo, rtx gpr, rtx_insn *insn, bool gpr_dead_p)
{
bool result = mep_reuse_lo_p_1 (lo, gpr, insn, gpr_dead_p);
extract_insn (insn);
@@ -856,7 +857,7 @@ mep_use_post_modify_for_set_p (rtx set, rtx gpr, rtx offset)
/* Return the effect of frame-related instruction INSN. */
static rtx
-mep_frame_expr (rtx insn)
+mep_frame_expr (rtx_insn *insn)
{
rtx note, expr;
@@ -870,7 +871,7 @@ mep_frame_expr (rtx insn)
new pattern in INSN1; INSN2 will be deleted by the caller. */
static void
-mep_make_parallel (rtx insn1, rtx insn2)
+mep_make_parallel (rtx_insn *insn1, rtx_insn *insn2)
{
rtx expr;
@@ -895,9 +896,9 @@ mep_make_parallel (rtx insn1, rtx insn2)
be persuaded to do SET_INSN as a side-effect. Return true if so. */
static bool
-mep_use_post_modify_p_1 (rtx set_insn, rtx reg, rtx offset)
+mep_use_post_modify_p_1 (rtx_insn *set_insn, rtx reg, rtx offset)
{
- rtx insn;
+ rtx_insn *insn;
insn = set_insn;
do
@@ -924,7 +925,7 @@ mep_use_post_modify_p_1 (rtx set_insn, rtx reg, rtx offset)
/* A wrapper around mep_use_post_modify_p_1 that preserves recog_data. */
bool
-mep_use_post_modify_p (rtx insn, rtx reg, rtx offset)
+mep_use_post_modify_p (rtx_insn *insn, rtx reg, rtx offset)
{
bool result = mep_use_post_modify_p_1 (insn, reg, offset);
extract_insn (insn);
@@ -1235,7 +1236,7 @@ mep_legitimize_reload_address (rtx *x, enum machine_mode mode, int opnum,
}
int
-mep_core_address_length (rtx insn, int opn)
+mep_core_address_length (rtx_insn *insn, int opn)
{
rtx set = single_set (insn);
rtx mem = XEXP (set, opn);
@@ -1282,7 +1283,7 @@ mep_core_address_length (rtx insn, int opn)
}
int
-mep_cop_address_length (rtx insn, int opn)
+mep_cop_address_length (rtx_insn *insn, int opn)
{
rtx set = single_set (insn);
rtx mem = XEXP (set, opn);
@@ -2337,7 +2338,8 @@ mep_reg_set_p (rtx reg, rtx insn)
static bool
mep_reg_set_in_function (int regno)
{
- rtx reg, insn;
+ rtx reg;
+ rtx_insn *insn;
if (mep_interrupt_p () && df_regs_ever_live_p(regno))
return true;
@@ -2365,7 +2367,7 @@ mep_asm_without_operands_p (void)
{
if (cfun->machine->asms_without_operands == 0)
{
- rtx insn;
+ rtx_insn *insn;
push_topmost_sequence ();
insn = get_insns ();
@@ -2536,8 +2538,8 @@ mep_elimination_offset (int from, int to)
gcc_unreachable ();
}
-static rtx
-F (rtx x)
+static rtx_insn *
+F (rtx_insn *x)
{
RTX_FRAME_RELATED_P (x) = 1;
return x;
@@ -2551,7 +2553,7 @@ F (rtx x)
static void
add_constant (int dest, int src, int value, int mark_frame)
{
- rtx insn;
+ rtx_insn *insn;
int hi, lo;
if (src == dest && value == 0)
@@ -2611,10 +2613,10 @@ add_constant (int dest, int src, int value, int mark_frame)
/* Move SRC to DEST. Mark the move as being potentially dead if
MAYBE_DEAD_P. */
-static rtx
+static rtx_insn *
maybe_dead_move (rtx dest, rtx src, bool ATTRIBUTE_UNUSED maybe_dead_p)
{
- rtx insn = emit_move_insn (dest, src);
+ rtx_insn *insn = emit_move_insn (dest, src);
#if 0
if (maybe_dead_p)
REG_NOTES (insn) = gen_rtx_EXPR_LIST (REG_MAYBE_DEAD, const0_rtx, NULL);
@@ -2739,7 +2741,7 @@ mep_expand_prologue (void)
F(maybe_dead_move (mem, gen_rtx_REG (rmode, i), maybe_dead_p));
else if (rmode == DImode)
{
- rtx insn;
+ rtx_insn *insn;
int be = TARGET_BIG_ENDIAN ? 4 : 0;
mem = gen_rtx_MEM (SImode,
@@ -2773,7 +2775,7 @@ mep_expand_prologue (void)
}
else
{
- rtx insn;
+ rtx_insn *insn;
maybe_dead_move (gen_rtx_REG (rmode, REGSAVE_CONTROL_TEMP),
gen_rtx_REG (rmode, i),
maybe_dead_p);
@@ -3370,7 +3372,7 @@ mep_print_operand (FILE *file, rtx x, int code)
}
void
-mep_final_prescan_insn (rtx insn, rtx *operands ATTRIBUTE_UNUSED,
+mep_final_prescan_insn (rtx_insn *insn, rtx *operands ATTRIBUTE_UNUSED,
int noperands ATTRIBUTE_UNUSED)
{
/* Despite the fact that MeP is perfectly capable of branching and
@@ -4890,9 +4892,10 @@ mep_compatible_reg_class (int r1, int r2)
}
static void
-mep_reorg_regmove (rtx insns)
+mep_reorg_regmove (rtx_insn *insns)
{
- rtx insn, next, pat, follow, *where;
+ rtx_insn *insn, *next, *follow;
+ rtx pat, *where;
int count = 0, done = 0, replace, before = 0;
if (dump_file)
@@ -4968,7 +4971,7 @@ mep_reorg_regmove (rtx insns)
{
if (dump_file)
{
- rtx x;
+ rtx_insn *x;
fprintf (dump_file, "----- Candidate for superfluous move deletion:\n\n");
for (x = insn; x ;x = NEXT_INSN (x))
@@ -5012,11 +5015,11 @@ mep_reorg_regmove (rtx insns)
Return the last instruction in the adjusted loop. */
-static rtx
-mep_insert_repeat_label_last (rtx last_insn, rtx label, bool including,
- bool shared)
+static rtx_insn *
+mep_insert_repeat_label_last (rtx_insn *last_insn, rtx_code_label *label,
+ bool including, bool shared)
{
- rtx next, prev;
+ rtx_insn *next, *prev;
int count = 0, code, icode;
if (dump_file)
@@ -5040,7 +5043,7 @@ mep_insert_repeat_label_last (rtx last_insn, rtx label, bool including,
if (INSN_P (prev))
{
if (GET_CODE (PATTERN (prev)) == SEQUENCE)
- prev = XVECEXP (PATTERN (prev), 0, 1);
+ prev = as_a <rtx_insn *> (XVECEXP (PATTERN (prev), 0, 1));
/* Other insns that should not be in the last two opcodes. */
icode = recog_memoized (prev);
@@ -5210,7 +5213,7 @@ struct mep_doloop_begin {
struct mep_doloop_begin *next;
/* The instruction itself. */
- rtx insn;
+ rtx_insn *insn;
/* The initial counter value. This is known to be a general register. */
rtx counter;
@@ -5222,10 +5225,10 @@ struct mep_doloop_end {
struct mep_doloop_end *next;
/* The instruction itself. */
- rtx insn;
+ rtx_insn *insn;
/* The first instruction after INSN when the branch isn't taken. */
- rtx fallthrough;
+ rtx_insn *fallthrough;
/* The location of the counter value. Since doloop_end_internal is a
jump instruction, it has to allow the counter to be stored anywhere
@@ -5288,9 +5291,9 @@ mep_repeat_loop_p (struct mep_doloop *loop)
/* The main repeat reorg function. See comment above for details. */
static void
-mep_reorg_repeat (rtx insns)
+mep_reorg_repeat (rtx_insn *insns)
{
- rtx insn;
+ rtx_insn *insn;
struct mep_doloop *loops, *loop;
struct mep_doloop_begin *begin;
struct mep_doloop_end *end;
@@ -5351,7 +5354,8 @@ mep_reorg_repeat (rtx insns)
if (mep_repeat_loop_p (loop))
{
/* Case (1) or (2). */
- rtx repeat_label, label_ref;
+ rtx_code_label *repeat_label;
+ rtx label_ref;
/* Create a new label for the repeat insn. */
repeat_label = gen_label_rtx ();
@@ -5435,7 +5439,7 @@ mep_reorg_repeat (rtx insns)
static bool
-mep_invertable_branch_p (rtx insn)
+mep_invertable_branch_p (rtx_insn *insn)
{
rtx cond, set;
enum rtx_code old_code;
@@ -5473,7 +5477,7 @@ mep_invertable_branch_p (rtx insn)
}
static void
-mep_invert_branch (rtx insn, rtx after)
+mep_invert_branch (rtx_insn *insn, rtx_insn *after)
{
rtx cond, set, label;
int i;
@@ -5519,9 +5523,11 @@ mep_invert_branch (rtx insn, rtx after)
}
static void
-mep_reorg_erepeat (rtx insns)
+mep_reorg_erepeat (rtx_insn *insns)
{
- rtx insn, prev, l, x;
+ rtx_insn *insn, *prev;
+ rtx_code_label *l;
+ rtx x;
int count;
for (insn = insns; insn; insn = NEXT_INSN (insn))
@@ -5542,7 +5548,7 @@ mep_reorg_erepeat (rtx insns)
if (prev == JUMP_LABEL (insn))
{
- rtx newlast;
+ rtx_insn *newlast;
if (dump_file)
fprintf (dump_file, "found loop top, %d insns\n", count);
@@ -5554,7 +5560,7 @@ mep_reorg_erepeat (rtx insns)
so, we know nobody inside the loop uses it.
But we must be careful to put the erepeat
*after* the label. */
- rtx barrier;
+ rtx_insn *barrier;
for (barrier = PREV_INSN (prev);
barrier && NOTE_P (barrier);
barrier = PREV_INSN (barrier))
@@ -5598,7 +5604,7 @@ mep_reorg_erepeat (rtx insns)
{
/* A label is OK if there is exactly one user, and we
can find that user before the next label. */
- rtx user = 0;
+ rtx_insn *user = 0;
int safe = 0;
if (LABEL_NUSES (prev) == 1)
{
@@ -5632,9 +5638,10 @@ mep_reorg_erepeat (rtx insns)
always do this on its own. */
static void
-mep_jmp_return_reorg (rtx insns)
+mep_jmp_return_reorg (rtx_insn *insns)
{
- rtx insn, label, ret;
+ rtx_insn *insn;
+ rtx label, ret;
int ret_code;
for (insn = insns; insn; insn = NEXT_INSN (insn))
@@ -5668,9 +5675,9 @@ mep_jmp_return_reorg (rtx insns)
static void
-mep_reorg_addcombine (rtx insns)
+mep_reorg_addcombine (rtx_insn *insns)
{
- rtx i, n;
+ rtx_insn *i, *n;
for (i = insns; i; i = NEXT_INSN (i))
if (INSN_P (i)
@@ -5706,7 +5713,7 @@ mep_reorg_addcombine (rtx insns)
/* If this insn adjusts the stack, return the adjustment, else return
zero. */
static int
-add_sp_insn_p (rtx insn)
+add_sp_insn_p (rtx_insn *insn)
{
rtx pat;
@@ -5731,10 +5738,10 @@ add_sp_insn_p (rtx insn)
/* Check for trivial functions that set up an unneeded stack
frame. */
static void
-mep_reorg_noframe (rtx insns)
+mep_reorg_noframe (rtx_insn *insns)
{
- rtx start_frame_insn;
- rtx end_frame_insn = 0;
+ rtx_insn *start_frame_insn;
+ rtx_insn *end_frame_insn = 0;
int sp_adjust, sp2;
rtx sp;
@@ -5755,7 +5762,7 @@ mep_reorg_noframe (rtx insns)
while (insns)
{
- rtx next = next_real_insn (insns);
+ rtx_insn *next = next_real_insn (insns);
if (!next)
break;
@@ -5786,7 +5793,7 @@ mep_reorg_noframe (rtx insns)
static void
mep_reorg (void)
{
- rtx insns = get_insns ();
+ rtx_insn *insns = get_insns ();
/* We require accurate REG_DEAD notes. */
compute_bb_for_insn ();
@@ -6673,7 +6680,7 @@ mep_store_find_set (rtx *x, void *prev)
not the containing insn. */
static bool
-mep_store_data_bypass_1 (rtx prev, rtx pat)
+mep_store_data_bypass_1 (rtx_insn *prev, rtx pat)
{
/* Cope with intrinsics like swcpa. */
if (GET_CODE (pat) == PARALLEL)
@@ -6681,7 +6688,8 @@ mep_store_data_bypass_1 (rtx prev, rtx pat)
int i;
for (i = 0; i < XVECLEN (pat, 0); i++)
- if (mep_store_data_bypass_p (prev, XVECEXP (pat, 0, i)))
+ if (mep_store_data_bypass_p (prev,
+ as_a <rtx_insn *> (XVECEXP (pat, 0, i))))
return true;
return false;
@@ -6717,7 +6725,7 @@ mep_store_data_bypass_1 (rtx prev, rtx pat)
has no true dependence on PREV. */
bool
-mep_store_data_bypass_p (rtx prev, rtx insn)
+mep_store_data_bypass_p (rtx_insn *prev, rtx_insn *insn)
{
return INSN_P (insn) ? mep_store_data_bypass_1 (prev, PATTERN (insn)) : false;
}
@@ -6738,7 +6746,7 @@ mep_mul_hilo_bypass_1 (rtx *x, void *prev)
between multiplication instructions PREV and INSN. */
bool
-mep_mul_hilo_bypass_p (rtx prev, rtx insn)
+mep_mul_hilo_bypass_p (rtx_insn *prev, rtx_insn *insn)
{
rtx pat;
@@ -6754,7 +6762,7 @@ mep_mul_hilo_bypass_p (rtx prev, rtx insn)
read from PSW, LP, SAR, HI and LO. */
bool
-mep_ipipe_ldc_p (rtx insn)
+mep_ipipe_ldc_p (rtx_insn *insn)
{
rtx pat, src;
@@ -6794,10 +6802,11 @@ mep_ipipe_ldc_p (rtx insn)
Emit the bundle in place of COP and return it. */
-static rtx
-mep_make_bundle (rtx core, rtx cop)
+static rtx_insn *
+mep_make_bundle (rtx core, rtx_insn *cop)
{
- rtx insn;
+ rtx seq;
+ rtx_insn *insn;
/* If CORE is an existing instruction, remove it, otherwise put
the new pattern in an INSN harness. */
@@ -6807,8 +6816,8 @@ mep_make_bundle (rtx core, rtx cop)
core = make_insn_raw (core);
/* Generate the bundle sequence and replace COP with it. */
- insn = gen_rtx_SEQUENCE (VOIDmode, gen_rtvec (2, core, cop));
- insn = emit_insn_after (insn, cop);
+ seq = gen_rtx_SEQUENCE (VOIDmode, gen_rtvec (2, core, cop));
+ insn = emit_insn_after (seq, cop);
remove_insn (cop);
/* Set up the links of the insns inside the SEQUENCE. */
@@ -6867,7 +6876,7 @@ mep_insn_dependent_p (rtx x, rtx y)
}
static int
-core_insn_p (rtx insn)
+core_insn_p (rtx_insn *insn)
{
if (GET_CODE (PATTERN (insn)) == USE)
return 0;
@@ -6888,9 +6897,9 @@ core_insn_p (rtx insn)
Called from mep_insn_reorg. */
static void
-mep_bundle_insns (rtx insns)
+mep_bundle_insns (rtx_insn *insns)
{
- rtx insn, last = NULL_RTX, first = NULL_RTX;
+ rtx_insn *insn, *last = NULL, *first = NULL;
int saw_scheduling = 0;
/* Only do bundling if we're in vliw mode. */
@@ -6915,7 +6924,7 @@ mep_bundle_insns (rtx insns)
else if (NONJUMP_INSN_P (insn) && GET_MODE (insn) == VOIDmode && first)
{
- rtx note, prev;
+ rtx_insn *note, *prev;
/* INSN is part of a bundle; FIRST is the first insn in that
bundle. Move all intervening notes out of the bundle.
@@ -6971,7 +6980,7 @@ mep_bundle_insns (rtx insns)
if (TARGET_IVC2)
{
- rtx core_insn = NULL_RTX;
+ rtx_insn *core_insn = NULL;
/* IVC2 slots are scheduled by DFA, so we just accept
whatever the scheduler gives us. However, we must make
--
1.8.5.3
next prev parent reply other threads:[~2014-08-06 17:44 UTC|newest]
Thread overview: 433+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-06 17:19 [PATCH 000/236] Introduce rtx subclasses David Malcolm
2014-08-06 17:19 ` [PATCH 063/236] compare-elim.c: Use rtx_insn David Malcolm
2014-08-06 17:19 ` [PATCH 040/236] Use rtx_insn internally within generated functions David Malcolm
2014-08-13 18:03 ` Jeff Law
2014-08-21 7:50 ` David Malcolm
2014-08-06 17:19 ` [PATCH 047/236] PHASE 2: Per-file commits in main source directory David Malcolm
2014-08-13 18:10 ` Jeff Law
2014-08-21 15:09 ` David Malcolm
2014-08-06 17:19 ` [PATCH 012/236] Convert DF_REF_INSN to a function for now David Malcolm
2014-08-12 21:20 ` Jeff Law
2014-08-13 20:32 ` David Malcolm
2014-08-13 20:34 ` Jeff Law
2014-08-14 0:14 ` David Malcolm
2014-08-14 2:56 ` Jeff Law
2014-08-14 20:23 ` David Malcolm
2014-08-19 15:22 ` David Malcolm
2014-08-06 17:19 ` [PATCH 058/236] cfgloop.c: Use rtx_insn David Malcolm
2014-08-06 17:19 ` [PATCH 007/236] New function: for_each_rtx_in_insn David Malcolm
2014-08-12 21:08 ` Jeff Law
2014-08-14 21:08 ` David Malcolm
2014-08-14 21:36 ` Richard Sandiford
2014-08-15 5:19 ` Jeff Law
2014-08-18 20:27 ` David Malcolm
2014-08-06 17:19 ` [PATCH 027/236] asan_emit_stack_protection returns an insn David Malcolm
2014-08-13 4:50 ` Jeff Law
2014-08-19 19:48 ` David Malcolm
2014-08-06 17:19 ` [PATCH 001/236] Convert lab_rtx_for_bb from pointer_map_t to pointer_map<rtx> David Malcolm
2014-08-12 20:50 ` Jeff Law
2014-08-12 21:16 ` Trevor Saunders
2014-08-13 0:48 ` David Malcolm
2014-08-13 2:51 ` Jeff Law
2014-08-06 17:19 ` [PATCH 004/236] PHASE 1: Initial "scaffolding" commits David Malcolm
2014-08-12 20:55 ` Jeff Law
2014-08-18 19:42 ` David Malcolm
2014-08-06 17:19 ` [PATCH 021/236] entry_of_function returns an insn David Malcolm
2014-08-13 3:04 ` Jeff Law
2014-08-19 18:45 ` David Malcolm
2014-08-06 17:19 ` [PATCH 002/236] JUMP_LABEL is not always a LABEL David Malcolm
2014-08-12 20:52 ` Jeff Law
2014-08-06 17:19 ` [PATCH 009/236] Replace BB_HEAD et al macros with functions David Malcolm
2014-08-12 21:16 ` Jeff Law
2014-08-19 0:32 ` David Malcolm
2014-08-23 18:49 ` [BUILDROBOT][PATCH] frv-linux fallout (was: [PATCH 009/236] Replace BB_HEAD et al macros with functions) Jan-Benedict Glaw
2014-08-25 14:11 ` David Malcolm
2014-08-25 19:29 ` Mike Stump
2014-08-25 19:46 ` Steven Bosscher
2014-08-25 19:52 ` Mike Stump
2014-08-06 17:19 ` [PATCH 034/236] next_cc0_user and prev_cc0_setter scaffolding David Malcolm
2014-08-13 17:56 ` Jeff Law
2014-08-19 21:12 ` David Malcolm
2014-08-06 17:19 ` [PATCH 006/236] Introduce rtx_insn subclass of rtx_def David Malcolm
2014-08-12 21:06 ` Jeff Law
2014-08-18 20:05 ` David Malcolm
2014-08-06 17:19 ` [PATCH 056/236] cfgbuild.c: Use rtx_insn David Malcolm
2014-08-06 17:19 ` [PATCH 054/236] calls.c: " David Malcolm
2014-08-06 17:19 ` [PATCH 080/236] haifa-sched.c: " David Malcolm
2014-08-06 17:19 ` [PATCH 018/236] Strengthen return types of various {next|prev}_*insn from rtx to rtx_insn * David Malcolm
2014-08-12 21:59 ` Jeff Law
2014-08-19 17:42 ` David Malcolm
2014-08-06 17:19 ` [PATCH 042/236] try_split returns an rtx_insn David Malcolm
2014-08-13 18:06 ` Jeff Law
2014-08-21 8:54 ` David Malcolm
2014-08-06 17:19 ` [PATCH 013/236] DEP_PRO/DEP_CON scaffolding David Malcolm
2014-08-12 21:21 ` Jeff Law
2014-08-19 15:36 ` David Malcolm
2014-08-06 17:19 ` [PATCH 019/236] Strengthen return type of gen_label_rtx David Malcolm
2014-08-12 22:00 ` Jeff Law
2014-08-19 18:14 ` David Malcolm
2014-08-06 17:19 ` [PATCH 008/236] Split BB_HEAD et al into BB_HEAD/SET_BB_HEAD variants David Malcolm
2014-08-12 21:15 ` Jeff Law
2014-08-18 20:52 ` David Malcolm
2014-08-06 17:20 ` [PATCH 087/236] loop-doloop.c: Use rtx_insn in a few places David Malcolm
2014-08-06 17:20 ` [PATCH 003/236] config/mn10300: Fix missing PATTERN in PARALLEL handling David Malcolm
2014-08-12 20:53 ` Jeff Law
2014-08-19 18:02 ` Richard Henderson
2014-08-27 15:51 ` David Malcolm
2014-08-27 16:11 ` Richard Henderson
2014-08-27 16:35 ` David Malcolm
2014-08-27 16:42 ` Richard Henderson
2014-08-06 17:20 ` [PATCH 125/236] config/aarch64/aarch64.c: Use rtx_insn David Malcolm
2014-08-13 15:14 ` Richard Earnshaw
2014-08-06 17:20 ` [PATCH 109/236] resource.c: " David Malcolm
2014-08-14 2:51 ` Jeff Law
2014-08-06 17:20 ` [PATCH 030/236] Convert various rtx to rtx_note * David Malcolm
2014-08-19 20:14 ` David Malcolm
2014-08-06 17:20 ` [PATCH 092/236] lra: use rtx_insn David Malcolm
2014-08-13 20:20 ` Jeff Law
2014-08-06 17:20 ` [PATCH 104/236] regcprop.c: Use rtx_insn David Malcolm
2014-08-06 17:20 ` [PATCH 077/236] fwprop.c: " David Malcolm
2014-08-06 17:20 ` [PATCH 099/236] predict.*: Use rtx_insn (also touches function.c and config/cris/cris.c) David Malcolm
2014-08-06 17:20 ` [PATCH 048/236] alias.c: Use rtx_insn David Malcolm
2014-08-13 18:11 ` Jeff Law
2014-08-06 17:20 ` [PATCH 084/236] internal-fn.c: Use rtx_insn and rtx_code_label David Malcolm
2014-08-06 17:20 ` [PATCH 068/236] df-*.c: Use rtx_insn David Malcolm
2014-08-06 17:20 ` [PATCH 049/236] asan.c: strengthen some rtx locals David Malcolm
2014-08-13 18:11 ` Jeff Law
2014-08-06 17:20 ` [PATCH 120/236] valtrack.c: Use rtx_insn David Malcolm
2014-08-06 17:20 ` [PATCH 142/236] config/nds32: " David Malcolm
2014-08-24 3:25 ` Chung-Ju Wu
2014-08-06 17:20 ` [PATCH 137/236] config/iq2000: " David Malcolm
2014-08-06 17:20 ` [PATCH 090/236] loop-unroll.c: Use rtx_insn (also touches basic-block.h) David Malcolm
2014-08-06 17:20 ` [PATCH 111/236] sched-deps.c: Use rtx_insn David Malcolm
2014-08-06 17:20 ` [PATCH 144/236] config/picochip: " David Malcolm
2014-08-06 17:20 ` [PATCH 116/236] shrink-wrap.*: Use rtx_insn (touches config/i386/i386.c) David Malcolm
2014-08-06 17:20 ` [PATCH 020/236] Return rtx_insn from get_insns/get_last_insn David Malcolm
2014-08-12 22:01 ` Jeff Law
2014-08-19 18:26 ` David Malcolm
2014-08-06 17:20 ` [PATCH 145/236] config/rs6000: Use rtx_insn David Malcolm
2014-08-06 17:20 ` [PATCH 066/236] dce.c: Use rtx subclasses David Malcolm
2014-08-06 17:20 ` [PATCH 123/236] web.c: Use rtx_insn David Malcolm
2014-08-06 17:20 ` [PATCH 151/236] config/spu/spu.c: " David Malcolm
2014-08-06 17:20 ` [PATCH 132/236] config/epiphany: " David Malcolm
2014-08-06 17:20 ` [PATCH 175/236] Remove DEP_PRO/CON scaffolding David Malcolm
2014-08-06 17:21 ` [PATCH 130/236] config/bfin: Use rtx_insn David Malcolm
2014-08-14 19:52 ` Jeff Law
2014-08-06 17:21 ` [PATCH 189/236] Various scheduling strengthenings David Malcolm
2014-08-06 17:21 ` [PATCH 171/236] du_chain.insn is an rtx_insn David Malcolm
2014-08-06 17:21 ` [PATCH 191/236] Remove DF_REF_INSN scaffolding David Malcolm
2014-08-06 17:21 ` [PATCH 170/236] Eliminate BB_NOTE_LIST scaffolding David Malcolm
2014-08-06 17:21 ` [PATCH 107/236] regstat.c: Use rtx_insn David Malcolm
2014-08-06 17:21 ` [PATCH 200/236] Use rtx_insn_list in various places David Malcolm
2014-08-06 17:21 ` [PATCH 236/236] END OF PATCHES: Delete rtx-classes-status.txt David Malcolm
2014-08-19 21:05 ` Richard Henderson
2014-08-06 17:21 ` [PATCH 159/236] Convert edge_def.insns.r to rtx_insn * David Malcolm
2014-08-06 17:21 ` [PATCH 201/236] Introduce rtx_sequence subclass of rtx_def David Malcolm
2014-08-06 17:21 ` [PATCH 162/236] delete_insn_and_edges takes an rtx_insn * David Malcolm
2014-08-06 17:21 ` [PATCH 182/236] get_last_insn_anywhere returns an rtx_insn David Malcolm
2014-08-06 17:21 ` [PATCH 217/236] Add JUMP_LABEL_AS_INSN David Malcolm
2014-08-06 17:21 ` [PATCH 186/236] Various condition-handling calls David Malcolm
2014-08-06 17:21 ` [PATCH 223/236] inside_basic_block_p requires a const rtx_insn * David Malcolm
2014-08-06 17:21 ` [PATCH 177/236] Tighten up params of create_basic_block_structure David Malcolm
2014-08-06 17:21 ` [PATCH 206/236] jump.c: Use rtx_sequence David Malcolm
2014-08-06 17:21 ` [PATCH 232/236] Use rtx_insn in various places in resource.[ch] David Malcolm
2014-08-06 17:21 ` [PATCH 212/236] Use rtx_expr_list for expr_status.x_forced_labels David Malcolm
2014-08-07 11:32 ` Bernd Schmidt
2014-08-07 15:23 ` David Malcolm
2014-08-12 21:24 ` Jeff Law
2014-08-06 17:21 ` [PATCH 219/236] Make SET_NEXT_INSN/SET_PREV_INSN require an rtx_insn David Malcolm
2014-08-06 17:21 ` [PATCH 202/236] dwarf2cfi.c: Use rtx_sequence David Malcolm
2014-08-06 17:21 ` [PATCH 140/236] config/microblaze/microblaze.c: Use rtx_insn and rtx_code_label David Malcolm
2014-08-13 16:21 ` Michael Eager
2014-08-06 17:22 ` [PATCH 185/236] Use rtx_insn in more places in fwprop.c David Malcolm
2014-08-06 17:22 ` [PATCH 220/236] Strengthen return_label and naked_return_label to rtx_code_label * David Malcolm
2014-08-19 20:51 ` Richard Henderson
2014-08-06 17:22 ` [PATCH 205/236] function.c: Use rtx_sequence David Malcolm
2014-08-15 22:25 ` Jeff Law
2014-08-06 17:22 ` [PATCH 213/236] rtl_data.x_nonlocal_goto_handler_labels becomes an rtx_expr_list David Malcolm
2014-08-06 17:22 ` [PATCH 230/236] Make INSN_HAS_LOCATION require an rtx_insn David Malcolm
2014-08-06 17:22 ` [PATCH 032/236] emit_* functions return rtx_insn David Malcolm
2014-08-13 17:53 ` Jeff Law
2014-08-19 20:39 ` David Malcolm
2014-08-06 17:22 ` [PATCH 226/236] Delete find_last_value David Malcolm
2014-08-06 17:22 ` [PATCH 222/236] Use rtx_insn in more places in dwarf2cfi.c David Malcolm
2014-08-19 20:56 ` Richard Henderson
2014-08-19 21:31 ` David Malcolm
2014-08-06 17:22 ` [PATCH 192/236] Tweak to dse.c David Malcolm
2014-08-06 17:22 ` [PATCH 194/236] Use rtx_insn for various target.def hooks David Malcolm
2014-08-15 22:21 ` Jeff Law
2014-08-06 17:22 ` [PATCH 164/236] Add rtx_jump_table_data::get_labels method David Malcolm
2014-08-06 17:22 ` [PATCH 209/236] sched-vis.c: Use rtx_sequence David Malcolm
2014-08-06 17:22 ` [PATCH 156/236] PHASE 4: Removal of scaffolding David Malcolm
2014-08-15 5:30 ` Jeff Law
2014-08-16 0:35 ` David Malcolm
2014-08-06 17:22 ` [PATCH 203/236] except.c: Use rtx_sequence David Malcolm
2014-08-06 17:22 ` [PATCH 166/236] shorten_branches takes an rtx_insn David Malcolm
2014-08-06 17:22 ` [PATCH 215/236] Use rtx_expr_list in various places David Malcolm
2014-08-06 17:22 ` [PATCH 102/236] ree.c: Use rtx_insn David Malcolm
2014-08-06 17:22 ` [PATCH 227/236] find_first_parameter_load params and return type David Malcolm
2014-08-06 17:22 ` [PATCH 229/236] NEXT_INSN and PREV_INSN take a const rtx_insn David Malcolm
2014-08-19 21:04 ` Richard Henderson
2014-08-06 17:22 ` [PATCH 233/236] dfa_clear_single_insn_cache takes an rtx_insn David Malcolm
2014-08-06 17:22 ` [PATCH 224/236] insn_current_reference_address " David Malcolm
2014-08-19 20:58 ` Richard Henderson
2014-08-06 17:22 ` [PATCH 225/236] Work towards NEXT_INSN/PREV_INSN requiring insns as their params David Malcolm
2014-08-19 20:57 ` Richard Henderson
2014-08-19 21:38 ` David Malcolm
2014-08-19 22:15 ` Bootstrap failure/ ICE in rtl.h (was: Re: [PATCH 225/236] Work towardgmane.comp.gcc.patchess NEXT_INSN/PREV_INSN requiring insns as their params) Tobias Burnus
2014-08-20 1:59 ` David Malcolm
2014-08-20 0:05 ` [PATCH 225/236] Work towards NEXT_INSN/PREV_INSN requiring insns as their params Richard Henderson
2014-08-25 14:25 ` Jeff Law
2014-08-26 17:18 ` David Malcolm
2014-08-28 16:38 ` Richard Henderson
2014-08-29 0:09 ` H.J. Lu
2014-08-29 0:50 ` David Malcolm
2014-08-29 1:02 ` Richard Henderson
2014-08-06 17:22 ` [PATCH 165/236] struct haifa_sched_info: prev_head and next_tail David Malcolm
2014-08-06 17:37 ` [PATCH 134/236] config/i386/i386.c: Use rtx_code_label David Malcolm
2014-08-06 17:37 ` [PATCH 086/236] jump.c: Use rtx_insn in a few places (also touches rtl.h and cfgexpand.c) David Malcolm
2014-08-06 17:37 ` [PATCH 025/236] make_insn_raw returns an rtx_insn David Malcolm
2014-08-13 4:50 ` Jeff Law
2014-08-19 19:38 ` David Malcolm
2014-08-06 17:37 ` [PATCH 157/236] struct eh_landing_pad_d: field "landing_pad" is an rtx_code_label David Malcolm
2014-08-06 17:37 ` [PATCH 017/236] Add subclasses for the various kinds of instruction David Malcolm
2014-08-13 3:07 ` Jeff Law
2014-08-19 17:01 ` David Malcolm
2014-08-06 17:37 ` [PATCH 028/236] cfgexpand.c: Use rtx_insn David Malcolm
2014-08-13 13:42 ` Jeff Law
2014-08-19 19:53 ` David Malcolm
2014-08-06 17:37 ` [PATCH 168/236] final_start_function takes an rtx_insn David Malcolm
2014-08-06 17:37 ` [PATCH 108/236] reload: Use rtx_insn (also touches caller-save.c and config/arc/arc) David Malcolm
2014-08-14 2:43 ` Jeff Law
2014-08-06 17:37 ` [PATCH 121/236] varasm.c: Use rtx_insn David Malcolm
2014-08-06 17:37 ` [PATCH 082/236] ifcvt.c: " David Malcolm
2014-08-06 17:38 ` [PATCH 193/236] cselib (also touches sched-deps.c) David Malcolm
2014-08-06 17:38 ` [PATCH 112/236] sched-ebb.c: Use rtx_insn (requires touching sched-int.h and config/c6x/c6x.c) David Malcolm
2014-08-06 17:38 ` [PATCH 061/236] combine.c: Use rtx_insn David Malcolm
2014-08-13 18:39 ` Jeff Law
2014-08-13 18:46 ` Jeff Law
2014-08-06 17:38 ` [PATCH 138/236] config/m68k: " David Malcolm
2014-08-06 17:38 ` [PATCH 187/236] duplicate_insn_chain accepts rtx_insn David Malcolm
2014-08-06 17:38 ` [PATCH 026/236] bb_note returns a rtx_note * David Malcolm
2014-08-13 4:50 ` Jeff Law
2014-08-19 19:44 ` David Malcolm
2014-08-06 17:38 ` [PATCH 005/236] Introduce as_a_nullable David Malcolm
2014-08-12 21:03 ` Jeff Law
2014-08-13 10:01 ` Martin Jambor
2014-08-13 10:07 ` Richard Biener
2014-08-13 13:48 ` Jeff Law
2014-08-18 19:53 ` David Malcolm
2014-08-13 19:58 ` David Malcolm
2014-08-06 17:38 ` [PATCH 067/236] ddg: Use rtx_insn David Malcolm
2014-08-06 17:39 ` [PATCH 181/236] Strengthen fields in struct sequence_stack and struct emit_status David Malcolm
2014-08-06 17:39 ` [PATCH 096/236] optabs.c: Use rtx_insn and rtx_code_label David Malcolm
2014-08-06 17:39 ` [PATCH 149/236] config/sh: " David Malcolm
2014-08-06 21:04 ` Oleg Endo
2014-08-06 17:39 ` [PATCH 155/236] config/xtensa: " David Malcolm
2014-08-06 17:39 ` [PATCH 127/236] config/arc: Use rtx_insn David Malcolm
2014-08-06 17:39 ` [PATCH 199/236] Introduce rtx_insn_list subclass of rtx_def David Malcolm
2014-08-07 1:31 ` Trevor Saunders
2014-08-07 15:36 ` David Malcolm
2014-08-30 6:24 ` Jeff Law
2014-08-06 17:39 ` [PATCH 218/236] Use rtx subclasses in more places in reorg.c David Malcolm
2014-08-06 17:39 ` [PATCH 231/236] Make insn_addresses_new require an rtx_insn David Malcolm
2014-08-06 17:39 ` [PATCH 103/236] reg-stack.c: Use rtx_insn David Malcolm
2014-08-06 17:40 ` [PATCH 085/236] ira: Use rtx_insn in various places David Malcolm
2014-08-06 17:40 ` [PATCH 055/236] caller-save.c: Use rtx_insn David Malcolm
2014-08-06 17:40 ` [PATCH 016/236] BND_TO scaffolding David Malcolm
2014-08-12 21:22 ` Jeff Law
2014-08-19 16:43 ` David Malcolm
2014-08-06 17:40 ` [PATCH 150/236] config/sparc: Use rtx_insn David Malcolm
2014-08-06 17:40 ` [PATCH 065/236] cse.c: " David Malcolm
2014-08-06 17:40 ` [PATCH 143/236] config/pa: " David Malcolm
2014-08-06 17:40 ` [PATCH 169/236] Strengthen haifa_sched_info callbacks and 3 scheduler hooks David Malcolm
2014-08-15 22:04 ` Jeff Law
2014-08-16 0:52 ` David Malcolm
2014-08-06 17:40 ` [PATCH 074/236] expr.c: Use rtx_insn and rtx_code_label David Malcolm
2014-08-06 17:40 ` [PATCH 141/236] config/mips: " David Malcolm
2014-08-06 17:41 ` [PATCH 146/236] config/rx: Use rtx_insn David Malcolm
2014-08-06 17:41 ` [PATCH 178/236] Remove BB_HEAD, BB_END, BB_HEADER scaffolding David Malcolm
2014-08-06 17:41 ` [PATCH 114/236] sel-sched.c: Use rtx_insn David Malcolm
2014-08-06 17:41 ` [PATCH 117/236] stack-ptr-mod.c: " David Malcolm
2014-08-06 17:41 ` [PATCH 204/236] final.c: Use rtx_sequence David Malcolm
2014-08-15 22:24 ` Jeff Law
2014-08-15 22:39 ` Trevor Saunders
2014-08-16 1:00 ` David Malcolm
2014-08-25 17:25 ` Jeff Law
2014-08-25 17:22 ` Jeff Law
2014-08-06 17:41 ` [PATCH 076/236] function.c: Use rtx_insn David Malcolm
2014-08-06 17:41 ` [PATCH 136/236] config/ia64/ia64.c: " David Malcolm
2014-08-06 17:41 ` [PATCH 122/236] var-tracking.c: " David Malcolm
2014-08-06 17:42 ` [PATCH 036/236] get_last_bb_insn returns an rtx_insn David Malcolm
2014-08-13 17:57 ` Jeff Law
2014-08-21 0:03 ` David Malcolm
2014-08-06 17:42 ` [PATCH 131/236] config/c6x: Use rtx_insn David Malcolm
2014-08-06 17:42 ` [PATCH 133/236] config/h8300: " David Malcolm
2014-08-06 17:42 ` [PATCH 045/236] define_bypass guard functions take a pair of rtx_insn David Malcolm
2014-08-13 18:07 ` Jeff Law
2014-08-21 14:02 ` David Malcolm
2014-08-06 17:42 ` [PATCH 069/236] dwarf2cfi.c: Use rtx_insn David Malcolm
2014-08-06 17:42 ` [PATCH 128/236] config/arm: Use rtx_insn and rtx_code_label David Malcolm
2014-08-13 15:21 ` Richard Earnshaw
2014-08-06 17:42 ` [PATCH 041/236] Debug hooks: use " David Malcolm
2014-08-13 18:05 ` Jeff Law
2014-08-21 8:21 ` David Malcolm
2014-08-06 17:42 ` [PATCH 207/236] reorg.c: Use rtx_sequence David Malcolm
2014-08-15 22:26 ` Jeff Law
2014-08-06 17:42 ` [PATCH 071/236] except.*: Use rtx_insn (also touches function.h) David Malcolm
2014-08-06 17:42 ` [PATCH 124/236] PHASE 3: Per-config subdir commits David Malcolm
2014-08-14 3:02 ` Jeff Law
2014-08-06 17:42 ` [PATCH 010/236] Split NEXT_INSN/PREV_INSN into lvalue and rvalue forms David Malcolm
2014-08-12 21:17 ` Jeff Law
2014-08-19 0:56 ` David Malcolm
2014-08-06 17:42 ` [PATCH 081/236] hw-doloop: Use rtx_insn (touches config/bfin/bfin.c) David Malcolm
2014-08-06 17:42 ` [PATCH 015/236] BB_NOTE_LIST scaffolding David Malcolm
2014-08-12 21:22 ` Jeff Law
2014-08-19 16:06 ` David Malcolm
2014-08-06 17:42 ` [PATCH 221/236] Add insn method to rtx_expr_list David Malcolm
2014-08-19 20:41 ` Richard Henderson
2014-08-25 14:22 ` Jeff Law
2014-08-26 15:54 ` [PATCH 0/3] Updated patches to eliminate need for rtx_expr_list::insn (was Re: [PATCH 221/236] Add insn method to rtx_expr_list) David Malcolm
2014-08-26 15:54 ` [PATCH 1/3] Convert nonlocal_goto_handler_labels from an EXPR_LIST to an INSN_LIST David Malcolm
2014-08-26 15:54 ` [PATCH 3/3] Use rtx_insn in more places in dwarf2cfi.c David Malcolm
2014-08-26 15:54 ` [PATCH 2/3] Convert forced_labels from an EXPR_LIST to an INSN_LIST David Malcolm
2014-08-26 16:25 ` [PATCH 0/3] Updated patches to eliminate need for rtx_expr_list::insn (was Re: [PATCH 221/236] Add insn method to rtx_expr_list) Richard Henderson
2014-08-06 17:42 ` [PATCH 179/236] cselib_record_sets_hook takes an rtx_insn David Malcolm
2014-08-06 17:42 ` [PATCH 044/236] Pass "insn" as an rtx_insn within generated get_attr_ fns in insn-attrtab.c David Malcolm
2014-08-13 18:07 ` Jeff Law
2014-08-21 10:14 ` David Malcolm
2014-08-06 17:42 ` [PATCH 211/236] Introduce rtx_expr_list subclass of rtx_def David Malcolm
2014-08-06 17:42 ` [PATCH 234/236] Strengthen params to active_insn_between David Malcolm
2014-08-06 17:42 ` [PATCH 195/236] Convert PATTERN from a macro to a pair of inline functions David Malcolm
2014-08-06 18:03 ` Jakub Jelinek
2014-08-06 20:00 ` David Malcolm
2014-08-06 17:42 ` [PATCH 214/236] rtl_data.x_stack_slot_list becomes an rtx_expr_list David Malcolm
2014-08-06 17:42 ` [PATCH 023/236] delete_trivially_dead_insns works on insns David Malcolm
2014-08-13 4:50 ` Jeff Law
2014-08-19 19:28 ` David Malcolm
2014-08-06 17:42 ` [PATCH 088/236] loop-invariant.c: Use rtx_insn in various places David Malcolm
2014-08-06 17:42 ` [PATCH 029/236] rtl_data.x_parm_birth_insn is an insn David Malcolm
2014-08-13 13:44 ` Jeff Law
2014-08-13 17:11 ` David Malcolm
2014-08-13 17:13 ` Jeff Law
2014-08-26 7:03 ` [COMMITTED] Update rs6000.c's pass_analyze_swaps to use rtx_insn [was Re: [PATCH 029/236] rtl_data.x_parm_birth_insn is an insn] David Malcolm
2014-08-19 19:58 ` [PATCH 029/236] rtl_data.x_parm_birth_insn is an insn David Malcolm
2014-08-06 17:43 ` [PATCH 072/236] explow.c: Use rtx_insn and rtx_code_label David Malcolm
2014-08-06 17:43 ` [PATCH 024/236] last_call_insn returns an rtx_call_insn * David Malcolm
2014-08-13 4:50 ` Jeff Law
2014-08-19 19:34 ` David Malcolm
2014-08-06 17:43 ` [PATCH 180/236] Params of add_insn and unlink_insn_chain David Malcolm
2014-08-06 17:43 ` [PATCH 235/236] Make next_insn and previous_insn require an rtx_insn * David Malcolm
2014-08-06 17:43 ` [PATCH 216/236] PHASE 6: Use extra rtx_def subclasses David Malcolm
2014-08-06 17:43 ` [PATCH 039/236] create_insn_rtx_from_pattern and create_copy_of_insn_rtx return rtx_insn David Malcolm
2014-08-13 18:02 ` Jeff Law
2014-08-21 1:07 ` David Malcolm
2014-08-21 16:28 ` Mike Stump
2014-08-06 17:43 ` [PATCH 174/236] Remove VINSN_INSN_RTX scaffolding David Malcolm
2014-08-06 17:43 ` [PATCH 153/236] config/tilepro: Use rtx_insn David Malcolm
2014-08-06 17:43 ` [PATCH 094/236] get_ebb_head_tail works with rtx_insn David Malcolm
2014-08-06 17:43 ` [PATCH 115/236] sel-sched-ir.c: Use rtx_insn David Malcolm
2014-08-06 17:43 ` [PATCH 148/236] config/score/score.c: " David Malcolm
2014-08-06 17:43 ` [PATCH 110/236] rtlanal.c: " David Malcolm
2014-08-06 17:43 ` [PATCH 035/236] Return types of unlink_insn_chain and duplicate_insn_chain David Malcolm
2014-08-13 17:56 ` Jeff Law
2014-08-19 21:23 ` David Malcolm
2014-08-20 8:20 ` Andreas Schwab
2014-08-20 10:22 ` David Malcolm
2014-08-20 16:12 ` PR62203 (was Re: [PATCH 035/236] Return types of unlink_insn_chain and duplicate_insn_chain) David Malcolm
2014-08-20 17:42 ` David Malcolm
2014-08-06 17:43 ` [PATCH 078/236] genpeep.c: peephole requires an rtx_insn David Malcolm
2014-08-06 17:43 ` [PATCH 196/236] Convert various INSN accessors in rtl.h to inline functions David Malcolm
2014-08-06 17:43 ` [PATCH 161/236] reorder_insns requires rtx_insn * David Malcolm
2014-08-06 17:43 ` [PATCH 070/236] dwarf2out.c: Use rtx_insn David Malcolm
2014-08-06 17:43 ` [PATCH 098/236] postreload.c: Use rtx_insn (also touches rtl.h and cprop.c) David Malcolm
2014-08-06 17:44 ` [PATCH 163/236] unshare_all_rtl_again takes an rtx_insn * David Malcolm
2014-08-06 17:44 ` [PATCH 089/236] loop-iv.c: Use rtx_insn (also touches cfgloop.h and loop-unroll.c) David Malcolm
2014-08-06 17:44 ` [PATCH 106/236] regrename.c: Use rtx_insn David Malcolm
2014-08-06 17:44 ` [PATCH 033/236] emit_move et al return rtx_insn * David Malcolm
2014-08-13 17:54 ` Jeff Law
2014-08-19 20:55 ` David Malcolm
2014-08-06 17:44 ` [PATCH 073/236] expmed.c: Use rtx_insn and rtx_code_label David Malcolm
2014-08-06 17:44 ` [PATCH 100/236] print-rtl.c: Use rtx_insn for various debug_ functions (also touches config/rs6000/rs6000.c) David Malcolm
2014-08-06 17:44 ` [PATCH 022/236] Make tablejump_p accept a rtx_jump_table_data ** David Malcolm
2014-08-13 4:50 ` Jeff Law
2014-08-19 19:21 ` David Malcolm
2014-08-06 17:44 ` [PATCH 172/236] sel-sched-ir.h: Make ilist_t work on insn_t rather than rtx David Malcolm
2014-08-06 17:44 ` [PATCH 031/236] emit_jump_table_data returns an rtx_jump_table_data * David Malcolm
2014-08-13 13:45 ` Jeff Law
2014-08-19 20:23 ` David Malcolm
2014-08-06 17:44 ` [PATCH 228/236] tablejump_p takes an rtx_insn David Malcolm
2014-08-19 20:59 ` Richard Henderson
2014-08-06 17:44 ` [PATCH 051/236] bb-reorder.c: Use rtx_insn David Malcolm
2014-08-13 18:16 ` Jeff Law
2014-08-06 17:44 ` [PATCH 052/236] bt-load.c: " David Malcolm
2014-08-06 17:44 ` [PATCH 011/236] Replace PREV_INSN et al macros with functions David Malcolm
2014-08-12 21:20 ` Jeff Law
2014-08-19 14:58 ` David Malcolm
2014-08-06 17:44 ` [PATCH 095/236] modulo-sched.c: Use rtx_insn in various places David Malcolm
2014-08-06 17:44 ` [PATCH 119/236] store-motion.c: Use rtx_insn David Malcolm
2014-08-06 17:44 ` David Malcolm [this message]
2014-08-06 17:44 ` [PATCH 147/236] config/s390: Use rtx_insn and rtx_code_label David Malcolm
2014-08-06 17:44 ` [PATCH 188/236] Use rtx_insn in more places in haifa-sched.c David Malcolm
2014-08-06 17:44 ` [PATCH 101/236] recog.c: Use rtx_insn David Malcolm
2014-08-06 17:44 ` [PATCH 184/236] Use rtx_insn in more places in sel-sched.c David Malcolm
2014-08-06 17:45 ` [PATCH 091/236] lower-subreg.c: Use rtx_insn David Malcolm
2014-08-06 17:45 ` [PATCH 158/236] Remove BB_FOOTER scaffolding David Malcolm
2014-08-06 17:45 ` [PATCH 046/236] delete_related_insns returns an rtx_insn David Malcolm
2014-08-13 18:10 ` Jeff Law
2014-08-21 15:01 ` David Malcolm
2014-08-06 17:45 ` [PATCH 057/236] cfgcleanup.c: Use rtx_insn (also touches basic-block.h and ifcvt.c) David Malcolm
2014-08-13 18:23 ` Jeff Law
2014-08-06 17:45 ` [PATCH 097/236] postreload-gcse.c: Use rtx_insn in various places David Malcolm
2014-08-06 17:45 ` [PATCH 183/236] Strengthen various insn emission functions David Malcolm
2014-08-06 17:45 ` [PATCH 093/236] mode-switching.c: Use rtx_insn David Malcolm
2014-08-06 17:45 ` [PATCH 075/236] final.c: Use rtx_insn (also touches output.c and config/arc/arc.c) David Malcolm
2014-08-13 19:47 ` Jeff Law
2014-08-06 17:45 ` [PATCH 053/236] builtins.c: strengthen various rtx to rtx_insn * and other subclasses David Malcolm
2014-08-06 17:45 ` [PATCH 105/236] reginfo.c: Use rtx_insn (also touches rtl.h) David Malcolm
2014-08-06 17:45 ` [PATCH 043/236] peephole returns an rtx_insn David Malcolm
2014-08-13 18:06 ` Jeff Law
2014-08-21 9:40 ` David Malcolm
2014-08-06 18:02 ` [PATCH 060/236] cfgrtl.c: Use rtx subclasses David Malcolm
2014-08-13 18:28 ` Jeff Law
2014-08-06 18:02 ` [PATCH 190/236] Remove insn_addresses_new from 'various scheduling strengthenings' David Malcolm
2014-08-13 19:40 ` David Malcolm
2014-08-13 20:25 ` Jeff Law
2014-08-06 18:02 ` [PATCH 198/236] PHASE 5: Additional rtx subclasses David Malcolm
2014-08-06 18:02 ` [PATCH 152/236] config/tilegx: Use rtx_insn David Malcolm
2014-08-06 18:02 ` [PATCH 176/236] cselib and incdec David Malcolm
2014-08-06 18:02 ` [PATCH 126/236] config/alpha/alpha.c: Use rtx_insn David Malcolm
2014-08-06 18:02 ` [PATCH 160/236] function.c and shrink-wrap.*: more rtx_insn David Malcolm
2014-08-06 18:02 ` [PATCH 197/236] Tweak to ira-lives.c David Malcolm
2014-08-06 18:02 ` [PATCH 064/236] cprop.c: Use rtx_insn David Malcolm
2014-08-06 18:02 ` [PATCH 014/236] VINSN_INSN_RTX scaffolding David Malcolm
2014-08-12 21:21 ` Jeff Law
2014-08-19 15:46 ` David Malcolm
2014-08-06 18:03 ` [PATCH 062/236] combine-stack-adj.c: Use rtx_insn David Malcolm
2014-08-06 18:03 ` [PATCH 208/236] resource.c: Use rtx_sequence David Malcolm
2014-08-06 18:04 ` [PATCH 210/236] varasm.c: " David Malcolm
2014-08-06 18:04 ` [PATCH 113/236] sched-rgn.c: Use rtx_insn in a couple of places David Malcolm
2014-08-06 18:04 ` [PATCH 059/236] cfgloopanal.c: Use rtx_insn David Malcolm
2014-08-06 18:04 ` [PATCH 135/236] config/i386/i386: " David Malcolm
2014-08-06 18:04 ` [PATCH 037/236] sel_bb_{head|end} return rtx_insn David Malcolm
2014-08-13 18:00 ` Jeff Law
2014-08-21 0:08 ` David Malcolm
2014-08-06 18:04 ` [PATCH 129/236] config/avr: Use rtx_insn David Malcolm
2014-08-06 18:04 ` [PATCH 154/236] config/v850: " David Malcolm
2014-08-06 18:05 ` [PATCH 079/236] gcse.c: " David Malcolm
2014-08-06 18:05 ` [PATCH 038/236] find_first_parameter_load returns an rtx_insn David Malcolm
2014-08-13 18:01 ` Jeff Law
2014-08-21 1:00 ` David Malcolm
2014-08-06 18:05 ` [PATCH 167/236] final accepts " David Malcolm
2014-08-06 18:05 ` [PATCH 173/236] insn_t becomes an rtx_insn * David Malcolm
2014-08-06 18:05 ` [PATCH 118/236] stmt.c: Use rtx_insn David Malcolm
2014-08-06 18:05 ` [PATCH 050/236] auto-inc-dec.c: strengthen various rtx to rtx_insn * David Malcolm
2014-08-13 18:14 ` Jeff Law
2014-08-06 18:06 ` [PATCH 083/236] init-regs.c: rtx_insn David Malcolm
2014-08-07 10:31 ` [PATCH 000/236] Introduce rtx subclasses Trevor Saunders
2014-08-12 20:39 ` Jeff Law
2014-08-13 0:29 ` David Malcolm
2014-08-13 13:59 ` Jeff Law
2014-08-18 19:18 ` David Malcolm
2014-08-14 0:16 ` David Malcolm
2014-08-14 16:32 ` David Malcolm
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1407345815-14551-140-git-send-email-dmalcolm@redhat.com \
--to=dmalcolm@redhat.com \
--cc=gcc-patches@gcc.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).