Lines Matching refs:gpcount
296 long i, avn, gpcount, fpcount; in ffi_call() local
308 gpcount = fpcount = 0; in ffi_call()
315 stack->gp_regs[gpcount++] = *(SINT8 *)avalue[i]; in ffi_call()
318 stack->gp_regs[gpcount++] = *(UINT8 *)avalue[i]; in ffi_call()
321 stack->gp_regs[gpcount++] = *(SINT16 *)avalue[i]; in ffi_call()
324 stack->gp_regs[gpcount++] = *(UINT16 *)avalue[i]; in ffi_call()
327 stack->gp_regs[gpcount++] = *(SINT32 *)avalue[i]; in ffi_call()
330 stack->gp_regs[gpcount++] = *(UINT32 *)avalue[i]; in ffi_call()
334 stack->gp_regs[gpcount++] = *(UINT64 *)avalue[i]; in ffi_call()
338 stack->gp_regs[gpcount++] = (UINT64)(PTR64) *(void **)avalue[i]; in ffi_call()
342 if (gpcount < 8 && fpcount < 8) in ffi_call()
347 stack->gp_regs[gpcount++] = tmp; in ffi_call()
352 if (gpcount < 8 && fpcount < 8) in ffi_call()
354 memcpy (&stack->gp_regs[gpcount++], avalue[i], sizeof (UINT64)); in ffi_call()
358 if (gpcount & 1) in ffi_call()
359 gpcount++; in ffi_call()
360 if (LDBL_MANT_DIG == 64 && gpcount < 8 && fpcount < 8) in ffi_call()
362 memcpy (&stack->gp_regs[gpcount], avalue[i], 16); in ffi_call()
363 gpcount += 2; in ffi_call()
373 if (align == 16 && (gpcount & 1)) in ffi_call()
374 gpcount++; in ffi_call()
380 size_t gp_offset = gpcount * 8; in ffi_call()
394 memcpy (&stack->gp_regs[gpcount], avalue[i], size); in ffi_call()
395 gpcount += (size + 7) / 8; in ffi_call()
473 long i, avn, gpcount, fpcount, nfixedargs; in ffi_closure_unix_inner() local
485 gpcount = fpcount = 0; in ffi_closure_unix_inner()
493 avalue[i] = endian_adjust(&stack->gp_regs[gpcount++], 1); in ffi_closure_unix_inner()
497 avalue[i] = endian_adjust(&stack->gp_regs[gpcount++], 2); in ffi_closure_unix_inner()
501 avalue[i] = endian_adjust(&stack->gp_regs[gpcount++], 4); in ffi_closure_unix_inner()
505 avalue[i] = &stack->gp_regs[gpcount++]; in ffi_closure_unix_inner()
508 avalue[i] = endian_adjust(&stack->gp_regs[gpcount++], sizeof(void*)); in ffi_closure_unix_inner()
512 if (named && gpcount < 8 && fpcount < 8) in ffi_closure_unix_inner()
521 avalue[i] = endian_adjust(&stack->gp_regs[gpcount], 4); in ffi_closure_unix_inner()
522 gpcount++; in ffi_closure_unix_inner()
526 if (named && gpcount < 8 && fpcount < 8) in ffi_closure_unix_inner()
535 avalue[i] = &stack->gp_regs[gpcount]; in ffi_closure_unix_inner()
536 gpcount++; in ffi_closure_unix_inner()
540 if (gpcount & 1) in ffi_closure_unix_inner()
541 gpcount++; in ffi_closure_unix_inner()
542 if (LDBL_MANT_DIG == 64 && named && gpcount < 8 && fpcount < 8) in ffi_closure_unix_inner()
551 avalue[i] = &stack->gp_regs[gpcount]; in ffi_closure_unix_inner()
552 gpcount += 2; in ffi_closure_unix_inner()
562 if (align == 16 && (gpcount & 1)) in ffi_closure_unix_inner()
563 gpcount++; in ffi_closure_unix_inner()
569 size_t gp_offset = gpcount * 8; in ffi_closure_unix_inner()
590 avalue[i] = &stack->gp_regs[gpcount]; in ffi_closure_unix_inner()
592 gpcount += (size + 7) / 8; in ffi_closure_unix_inner()