Ian Lance Taylor wrote:
David Livshin <[EMAIL PROTECTED]> writes:

x.c: In function ‘bar’:
x.c:13: error: unrecognizable insn:
(jump_insn 26 25 27 2 (set (pc)
        (reg:SI 52)) -1 (nil)
    (nil))
x.c:13: internal compiler error: in extract_insn, at recog.c:2084


The .md file defines ( mandatory ) "indirect_jump" which allows ( a certain 
kind of ) register as parameter.
What is missing?

Either the pattern doesn't match indirect_jump, or the instruction
predicate returns zero, or the operand predicate returns zero.

Beyond that we don't have enough information to say.

Ian
Is there a way to find out what was the pattern? And if the operand predicate fails, shouldn't gcc attempt to reassign the ( register , "(reg:SI 52)" ) operand in order to satisfy the predicate?

--
David Livshin

http://www.dalsoft.com

Reply via email to