fcsr0
movfcsr2gr \tmp, fcsr0
movgr2fcsr fcsr0, \tmp0
#define fcsr0 $fcsr0
#define LOONGARCH_FCSR0 $fcsr0
unsigned long sr, mask, fcsr, fcsr0, fcsr1;
fcsr0 = fcsr & mask;
write_fcsr(LOONGARCH_FCSR0, fcsr0);
fcsr0 = read_fcsr(LOONGARCH_FCSR0);
c->fpu_mask = ~(fcsr0 ^ fcsr1) & ~mask;
write_32bit_cp1_register(CP1_STATUS, fcsr0);
fcsr0 = read_32bit_cp1_register(CP1_STATUS);
if (fcsr0 & FPU_CSR_MAC2008)
if (!(fcsr0 & FPU_CSR_NAN2008))
if ((fcsr0 ^ fcsr1) & FPU_CSR_ABS2008)
if ((fcsr0 ^ fcsr1) & FPU_CSR_NAN2008)
unsigned long sr, mask, fcsr, fcsr0, fcsr1;
fcsr0 = fcsr & mask;
write_32bit_cp1_register(CP1_STATUS, fcsr0);
fcsr0 = read_32bit_cp1_register(CP1_STATUS);
c->fpu_msk31 = ~(fcsr0 ^ fcsr1) & ~mask;
unsigned long sr, fir, fcsr, fcsr0, fcsr1;
fcsr0 = fcsr & ~(FPU_CSR_ABS2008 | FPU_CSR_NAN2008 |