This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: c/6543: Internal compiler error in extract_insn, at recog.c:2132

>>>>> sirl  writes:

Franz> Actually another incarnation of the CLOBBER problem, but harder to fix this time. This pattern around line 10730 in is the culprit:
Franz> (define_insn ""
Franz> [(set (match_operand:SI 0 "gpc_reg_operand" "=r,r,r,r,r")
Franz> (eq:SI (match_operand:SI 1 "gpc_reg_operand" "%r,r,r,r,r")
Franz> (match_operand:SI 2 "reg_or_cint_operand" "r,O,K,L,I")))
Franz> (clobber (match_scratch:SI 3 "=r,&r,r,r,r"))]
Franz> "@
Franz> xor %0,%1,%2\;{sfi|subfic} %3,%0,0\;{ae|adde} %0,%3,%0
Franz> {sfi|subfic} %3,%1,0\;{ae|adde} %0,%3,%1
Franz> {xoril|xori} %0,%1,%b2\;{sfi|subfic} %3,%0,0\;{ae|adde} %0,%3,%0
Franz> {xoriu|xoris} %0,%1,%u2\;{sfi|subfic} %3,%0,0\;{ae|adde} %0,%3,%0
Franz> {sfi|subfic} %0,%1,%2\;{sfi|subfic} %3,%0,0\;{ae|adde} %0,%3,%0"
Franz> [(set_attr "length" "12,8,12,12,12")])

	This is another splitter that used the pattern we changed to fix
the earlier splitter.  Why can't we simply recognize the clobber but then
never use it when we split the instruction?


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]