Lines Matching refs:nfpr

127     if (ngpr < maxgpr) { dp = &cc->fpr[ngpr++]; nfpr = ngpr; goto done; } \
164 cc->nsp = nsp; cc->ngpr = ngpr; cc->nfpr = nfpr; \
166 nsp = cc->nsp; ngpr = cc->ngpr; nfpr = cc->nfpr; \
176 if (nfpr + n2 <= CCALL_NARG_FPR) { \
177 dp = &cc->fpr[nfpr]; \
178 nfpr += n2; \
242 if (nfpr + (n >> 1) <= CCALL_NARG_FPR) { \
243 dp = &cc->fpr[nfpr]; \
244 nfpr += (n >> 1); \
248 if (sz > 1 && fprodd != nfpr) fprodd = 0; \
250 if (2*nfpr+n <= 2*CCALL_NARG_FPR+1) { \
252 nfpr += (n >> 1); \
253 if ((n & 1)) fprodd = 0; else fprodd = nfpr-1; \
257 if (2*nfpr+n <= 2*CCALL_NARG_FPR) { \
258 dp = (void *)&cc->fpr[nfpr]; \
259 nfpr += (n >> 1); \
260 if ((n & 1)) fprodd = ++nfpr; else fprodd = 0; \
342 if (nfpr + n2 <= CCALL_NARG_FPR) { \
343 dp = &cc->fpr[nfpr]; \
344 nfpr += n2; \
347 nfpr = CCALL_NARG_FPR; /* Prevent reordering. */ \
488 if (nfpr + 1 <= CCALL_NARG_FPR) { \
489 dp = &cc->fpr[nfpr]; \
490 nfpr += 1; \
563 if (isfp && nfpr < CCALL_NARG_FPR && !(ct->info & CTF_VARARG)) { \
565 dp = n == 1 ? (void *)&cc->fpr[nfpr].f : (void *)&cc->fpr[nfpr].d; \
566 nfpr++; ngpr += n; \
569 nfpr = CCALL_NARG_FPR; \
684 if (nfpr < CCALL_NARG_FPR) { dp = &cc->fpr[nfpr++]; goto done; } \
786 MSize ngpr = cc->ngpr, nfpr = cc->nfpr; in ccall_struct_reg() local
795 if (nfpr >= CCALL_NARG_FPR) return 1; /* Register overflow. */ in ccall_struct_reg()
796 cc->fpr[nfpr++].l[0] = dp[i]; in ccall_struct_reg()
799 cc->ngpr = ngpr; cc->nfpr = nfpr; in ccall_struct_reg()
825 MSize ngpr = 0, nfpr = 0; in ccall_struct_ret() local
831 sp[i] = cc->fpr[nfpr++].l[0]; in ccall_struct_ret()
1088 MSize nfpr = 0; in ccall_set_args() local
1224 for (i = 0; i < d->size / 8 && nfpr < CCALL_NARG_FPR; i++) in ccall_set_args()
1225 cc->fpr[nfpr++] = ((double *)dp)[i]; in ccall_set_args()
1238 for (i = 0; i < d->size / 4 && nfpr < CCALL_NARG_FPR; i++) in ccall_set_args()
1239 cc->fpr[nfpr++] = ((float *)dp)[i]; in ccall_set_args()
1241 for (i = 0; i < d->size / 8 && nfpr < CCALL_NARG_FPR; i++) in ccall_set_args()
1242 cc->fpr[nfpr++] = ((double *)dp)[i]; in ccall_set_args()
1289 if (nfpr == ngpr) in ccall_set_args()
1298 if (isfp == 2 && n == 2 && (uint8_t *)dp == (uint8_t *)&cc->fpr[nfpr-2]) { in ccall_set_args()
1299 cc->fpr[nfpr-1].d[0] = cc->fpr[nfpr-2].d[1]; /* Split complex double. */ in ccall_set_args()
1300 cc->fpr[nfpr-2].d[1] = 0; in ccall_set_args()
1315 cc->nfpr = nfpr; /* Required for vararg functions. */ in ccall_set_args()