This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Invalid gen_rtx_INSN_LIST usage?
- From: Marcin Dalecki <martin at dalecki dot de>
- To: GCC Development <gcc at gcc dot gnu dot org>
- Date: Wed, 22 Feb 2006 05:30:48 +0100
- Subject: Invalid gen_rtx_INSN_LIST usage?
Looking at the regor.c code I came across the function
try_merge_delay_insns().
There around the line 1488 we will find the following code:
merged_insns = gen_rtx_INSN_LIST (SImode, dtrial,
merged_insns);
Please note that in literally *all* other cases the gen_rtx_INSN_LIST
function is supposed to take an enum reg_note as first argument and
not the somehow arbitrary value SImode. All subsequent rtx tree
processing
is assuming that in case of instruction lists we have a reg_note
present in
this field.
I assume therefore that the value REG_DEP_TRUE should be assed as
first argument
to gen_rtx_INSN_LIST there. I think only the fact that the code in
question
isn't likely to trigger didn't make this occur immediately as a bug.
Is this analysis correct?
Marcin Dalecki