Re: register class constraints question

2008-10-08 Thread DJ Delorie
Joern Rennecke <[EMAIL PROTECTED]> writes: > I'm not sure if this changed with IRA, Acts the same with 4.3 and 4.4. > reload will look for the alternative with the cheapest total cost of > alternative and reloads. This was the key. Disparaging the smaller class's alternative with '?' works -

Re: register class constraints question

2008-10-08 Thread Joern Rennecke
I'm not sure if this changed with IRA, but at least with the old reload code, if the instruction doesn't match, reload will look for the alternative with the cheapest total cost of alternative and reloads. Unfortunately, the fact that some reloads might be impossible does not figure in the decisio

register class constraints question

2008-10-07 Thread DJ Delorie
I've got this code: (define_insn "andhi3_24" [(set (match_operand:HI 0 "mra_operand" "=Sd,Sd,*Rhl,*Rhl,RhiSd,??Rmm,RhiSd,??Rmm") (and:HI (match_operand:HI 1 "mra_operand" "%0,0,*0,*0,0,0,0,0") (match_operand:HI 2 "mrai_operand" "Imb,Imw,*Imb,*Imw,iRhiSd,?Rmm,?Rmm,iRhiS