• Home
  • Raw
  • Download

Lines Matching refs:reg

21 static inline void fp_denormalize(struct fp_ext *reg, unsigned int cnt)  in fp_denormalize()  argument
23 reg->exp += cnt; in fp_denormalize()
27 reg->lowmant = reg->mant.m32[1] << (8 - cnt); in fp_denormalize()
28 reg->mant.m32[1] = (reg->mant.m32[1] >> cnt) | in fp_denormalize()
29 (reg->mant.m32[0] << (32 - cnt)); in fp_denormalize()
30 reg->mant.m32[0] = reg->mant.m32[0] >> cnt; in fp_denormalize()
33 reg->lowmant = reg->mant.m32[1] >> (cnt - 8); in fp_denormalize()
34 if (reg->mant.m32[1] << (40 - cnt)) in fp_denormalize()
35 reg->lowmant |= 1; in fp_denormalize()
36 reg->mant.m32[1] = (reg->mant.m32[1] >> cnt) | in fp_denormalize()
37 (reg->mant.m32[0] << (32 - cnt)); in fp_denormalize()
38 reg->mant.m32[0] = reg->mant.m32[0] >> cnt; in fp_denormalize()
41 asm volatile ("bfextu %1{%2,#8},%0" : "=d" (reg->lowmant) in fp_denormalize()
42 : "m" (reg->mant.m32[0]), "d" (64 - cnt)); in fp_denormalize()
43 if (reg->mant.m32[1] << (40 - cnt)) in fp_denormalize()
44 reg->lowmant |= 1; in fp_denormalize()
45 reg->mant.m32[1] = reg->mant.m32[0] >> (cnt - 32); in fp_denormalize()
46 reg->mant.m32[0] = 0; in fp_denormalize()
49 reg->lowmant = reg->mant.m32[0] >> (cnt - 40); in fp_denormalize()
50 if ((reg->mant.m32[0] << (72 - cnt)) || reg->mant.m32[1]) in fp_denormalize()
51 reg->lowmant |= 1; in fp_denormalize()
52 reg->mant.m32[1] = reg->mant.m32[0] >> (cnt - 32); in fp_denormalize()
53 reg->mant.m32[0] = 0; in fp_denormalize()
56 reg->lowmant = reg->mant.m32[0] || reg->mant.m32[1]; in fp_denormalize()
57 reg->mant.m32[0] = 0; in fp_denormalize()
58 reg->mant.m32[1] = 0; in fp_denormalize()
63 static inline int fp_overnormalize(struct fp_ext *reg) in fp_overnormalize() argument
67 if (reg->mant.m32[0]) { in fp_overnormalize()
68 asm ("bfffo %1{#0,#32},%0" : "=d" (shift) : "dm" (reg->mant.m32[0])); in fp_overnormalize()
69 reg->mant.m32[0] = (reg->mant.m32[0] << shift) | (reg->mant.m32[1] >> (32 - shift)); in fp_overnormalize()
70 reg->mant.m32[1] = (reg->mant.m32[1] << shift); in fp_overnormalize()
72 asm ("bfffo %1{#0,#32},%0" : "=d" (shift) : "dm" (reg->mant.m32[1])); in fp_overnormalize()
73 reg->mant.m32[0] = (reg->mant.m32[1] << shift); in fp_overnormalize()
74 reg->mant.m32[1] = 0; in fp_overnormalize()
97 static inline int fp_addcarry(struct fp_ext *reg) in fp_addcarry() argument
99 if (++reg->exp == 0x7fff) { in fp_addcarry()
100 if (reg->mant.m64) in fp_addcarry()
102 reg->mant.m64 = 0; in fp_addcarry()
106 reg->lowmant = (reg->mant.m32[1] << 7) | (reg->lowmant ? 1 : 0); in fp_addcarry()
107 reg->mant.m32[1] = (reg->mant.m32[1] >> 1) | in fp_addcarry()
108 (reg->mant.m32[0] << 31); in fp_addcarry()
109 reg->mant.m32[0] = (reg->mant.m32[0] >> 1) | 0x80000000; in fp_addcarry()