Hi all, I had a single movsf insn that accepts all alternatives for the reload to work.
(define_insn "movsf" [(set (match_operand:SF 0 "nonimmediate_operand" "=f,m,f,f,d,d") (match_operand:SF 1 "general_operand" "m,f,f,d,f,i")) ] But for moving an immediate value, compiler should use a data register but it is using a floating point register. Still i get an ICE for constrain not satisfied. Regards, Rohit On 3/15/07, Jim Wilson <[EMAIL PROTECTED]> wrote:
Rohit Arul Raj wrote: > (define_insn "movsf_store" > [(set (match_operand:SF 0 "memory_operand" "=m") > (match_operand:SF 1 "float_reg" "f"))] You must have a single movsf define_insn that accepts all alternatives so that reload will work. You can't have separate define_insns for movsf and movsf_store. -- Jim Wilson, GNU Tools Support, http://www.specifix.com