problem with 2.91.47 and 2.92.00

Jeffrey A Law law@cygnus.com
Wed Aug 26 18:53:00 GMT 1998


  In message < r267ffeigl.fsf@happy.cygnus.com >you write:
  > Hi,
  > 
  > I've put up at
  > 
  > 	http://www.cygnus.com/~drepper/cancel.i.gz
  > 
  > the preprocessed sources for a file which causes every x86 gcc version
  > I have around to stop with an ICE:
  > 
  > 
  > ../../egcs/gcc/jump.c:3081: Internal compiler error in function reverse_con
  > dition
  > 
  > 
  > I have no egcs-1.1 version around so it might be good if somebody with
  > such a version can test the file.
You have bad asms.  You have asms which specify %c1 in the output
template and operand 1 is supposed to be a constant, register, etc.

%c means to print out a reversed condition code.

(insn 36 49 51 (set (reg/v:QI 0 %al)
        (asm_operands/v ("movb %%gs:%c1,%b0") ("=r") 0[ 
                (reg:SI 0 %eax)
                (const_int 60)
            ] 
            [ 
                (asm_input:SI ("0"))
                (asm_input:SI ("i"))
            ]  ("cancel.c") 28)) -1 (nil)
    (nil))

Note carefully the %c1 and the operand 1 -- (const_int 60).


jeff



More information about the Gcc-bugs mailing list