This is the mail archive of the gcc-bugs@gcc.gnu.org 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]

[Bug middle-end/35492] ICE building kernel sk_stream_wait_connect output_operand: invalid operand for 'p' modifier



------- Comment #5 from hp at gcc dot gnu dot org  2008-07-08 10:26 -------
Created an attachment (id=15875)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=15875&action=view)
patch for trunk/4.4

This is one part of a correction (regtested on trunk for cris-elf). By itself,
it hides the bug by adding a constraint (redefining K to be a constraint
prefix, renaming current uses to Kc, and introducing Kp) such that the
constraints don't allow what the condition refuses.  Lots of editing, mostly
because of renaming.

Thus, it doesn't matter that the condition isn't checked.  It's correct to do
this: putting as much of the description as possible into the constraints. 
Having that check in the condition was an artefact from when GCC didn't have
multi-letter constraints.

But, reload must also be fixed to not do operand transformations that don't
also check the insn condition.  I'm still working on that part.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35492


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