------- Additional Comments From andrewhutchinson at cox dot net 2005-03-13 04:05 ------- Subject: Re: unable to find a register to spill in class `POINTER_REGS'
You answered your own question. GCC handles variable moves just like anything else. Dealing with range of possible values and size etc and construct appropriate RTL. GCC does not need this backend define or expand. It is quite happy working out moves by itself. The pattern is *only* defined when the target can do a better job - i.e. when we have a constant byte count - but not otherwise. I have found it's a really bad idea to second guess compiler optimisations. >- how about in the case of a variable count = 0 ? > (or since only constants are handled, it falls back to letting gcc figure it > out?) > > > > -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18251