2010/12/21 Ian Lance Taylor <i...@google.com>: > Liu <pro...@gmail.com> writes: > >> I need add 256bits-register support for our MIPS-based >> processor, so I add some codes. >> When I build gcc and test it, get a error "unable to find a >> register to spill in class 'XX_REGS'" >> can you tell me how to add 256bits register file to a MIPS port? >> >> Thanks! >> >> codes: >> gcc/config/mips/constraints.md : >> (define_register_constraint 'Z' 'XX_REGS' >> '@internal') >> >> gcc/config/mips/mips-ftypes.def : >> DEF_MIPS_FTYPE (2, (UV32QI, UV32QI, UV32QI)) >> DEF_MIPS_FTYPE (2, (V32QI, V32QI, V32QI)) >> >> gcc/config/mips/mips.h : >> #define FIXED_REGISTERS >> /* XX regusters */ \ >> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, \ >> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, \ >> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, \ >> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 \ > > Setting them all as 1 in FIXED_REGISTERS means that gcc can't use them. > > Ian >
Thank you for reply. I changed FIXED_REGISTERS into 0, FIXED_REGISTERS into 1, CALL_REALLY_USED_REGISTERS into 1. build and test it, but I still get the same error.