public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* IRA is not looking into the predicates ?
@ 2009-10-30 13:20 Mohamed Shafi
  2009-10-30 18:18 ` Ian Lance Taylor
  2009-10-30 18:31 ` Jeff Law
  0 siblings, 2 replies; 6+ messages in thread
From: Mohamed Shafi @ 2009-10-30 13:20 UTC (permalink / raw)
  To: GCC

Hi,

I am doing a port for a 32bit target in GCC 4.4.0. The target does not
have support for symbolic address in QImode for load operations. In
order to do this what i have done is in define_expand for moveqi
reject symbolic address it they come in source operands and i have
also written a predicate for *moveqi_internal to reject such cases.
But i get the following ICE:

 insn does not satisfy its constraints:
(insn 24 5 6 2 ice4.c:4 (set (reg:QI 17 r1)
        (mem/c/i:QI (symbol_ref:SI ("s") [flags 0x2] <var_decl
0xb7bfd000 s>) [0 s+0 S1 A32])) 0 {*movqi_internal} (nil))


From ice4.c.172r.ira

(insn 24 5 6 2 ice4.c:4 (set (reg:QI 17 r1)
        (mem/c/i:QI (symbol_ref:SI ("s") [flags 0x2] <var_decl
0xb7bfd000 s>) [0 s+0 S1 A32])) 0 {*movqi_internal} (nil))

(insn 6 24 7 2 ice4.c:4 (set (reg:QI 16 r0 [62])
        (plus:QI (reg:QI 17 r1)
            (const_int -100 [0xffffff9c]))) 16 {addqi3} (nil))

From ice4.c.168r.asmcons

(insn 5 2 6 2 ice4.c:4 (set (reg:SI 61 [ s ])
        (mem/c/i:SI (symbol_ref:SI ("s") [flags 0x2] <var_decl
0xb7bfd000 s>) [0 s+0 S4 A32])) 2 {*movsi_internal} (nil))

(insn 6 5 7 2 ice4.c:4 (set (reg:QI 62)
        (plus:QI (subreg:QI (reg:SI 61 [ s ]) 0)
            (const_int -100 [0xffffff9c]))) 16 {addqi3}
(expr_list:REG_DEAD (reg:SI 61 [ s ])
        (nil)))

How can i prevent this ICE ?

Regards,
Shafi

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2009-11-04 14:41 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-10-30 13:20 IRA is not looking into the predicates ? Mohamed Shafi
2009-10-30 18:18 ` Ian Lance Taylor
2009-11-04 13:43   ` Mohamed Shafi
2009-10-30 18:31 ` Jeff Law
2009-11-04 13:42   ` Mohamed Shafi
2009-11-04 14:41     ` Jeff Law

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).