This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: porting problem again: ICE in add_clobbers
On 19 Sep 2007 07:54:14 -0700, Ian Lance Taylor <iant@google.com> wrote:
> gcse will never convert a recognizable insn into an unrecognizable
> insn.
Ok. Do you know of any other reasons why this particular optimization
switch would cause this problem?
> You still haven't showed us the actual insn which failed to match.
>
> The problem is that whatever that insn looks like, there is no
> define_insn which matches it. For purposes of matching, a
> define_expand does not count.
One example is
(define_expand "bleu"
[(use (match_operand 0 "" ""))]
""
"expand_branch (LEU, operands[0]); DONE;")
which is heavily inspired by the or32 port of version 3.4.4, as is
expand_branch().
But this should not need a matching insn, since it ends in a DONE;,
right? Or am I missing something again?