From mboxrd@z Thu Jan 1 00:00:00 1970 From: Richard Henderson To: David Edelsohn Cc: Geoffrey KEATING , egcs@cygnus.com Subject: Re: asm clobbers, !SMALL_REGISTER_CLASSES patch. Date: Fri, 13 Feb 1998 02:28:00 -0000 Message-id: <19980213010129.15560@dot.cygnus.com> References: <199802130301.OAA15403@discus.anu.edu.au> <9802130410.AA27074@rios1.watson.ibm.com> X-SW-Source: 1998-02/msg00604.html On Thu, Feb 12, 1998 at 11:10:32PM -0500, David Edelsohn wrote: > This is a good effort and I am glad that you are continuing to > pursue this needed feature, but I am curious why you are choosing to > implement it this way instead of as a match_scratch of the appropriate > register class? A SCRATCH only has a mode, not a register class. There is nowhere to set a register class except in the output constraint of an asm_output. So the obvious (clobber (scratch:XX )) doesn't do the trick. Of course, why + gen_reg_rtx(reg_raw_mode[regno]), instead of + gen_rtx_SCRATCH (reg_raw_mode[regno]), I don't know. And in the PowerPC example, isn't the problem that you're clobbering CC, which wants an input of CCmode? It is still technically possible to get these cases with (clobber (match_scratch:XX)) in which GET_MODE_CLASS(XX) is MODE_CC or MODE_RANDOM. Whether it is worth the additional hastle while solving the larger problem I don't know. r~