|  line  | 
 true  | 
 false  | 
 branch  | 
 
| 
37
 | 
 402  | 
 1  | 
     if(self->return_type->type_code == FFI_PL_TYPE_RECORD_VALUE  | 
 
| 
38
 | 
 1  | 
 401  | 
     || self->return_type->type_code == (FFI_PL_TYPE_RECORD_VALUE | FFI_PL_SHAPE_CUSTOM_PERL))  | 
 
| 
65
 | 
 596  | 
 399  | 
     for(i=0, perl_arg_index=(EXTRA_ARGS); i < self->ffi_cif.nargs; i++, perl_arg_index++)  | 
 
| 
 | 
 4  | 
 2  | 
     for(i=0, perl_arg_index=(EXTRA_ARGS); i < self->ffi_cif.nargs; i++, perl_arg_index++)  | 
 
| 
 | 
 2037  | 
 1651  | 
     for(i=0, perl_arg_index=(EXTRA_ARGS); i < self->ffi_cif.nargs; i++, perl_arg_index++)  | 
 
| 
70
 | 
 595  | 
 1  | 
       arg = perl_arg_index < items ? ST(perl_arg_index) : &PL_sv_undef;  | 
 
| 
 | 
 4  | 
 0  | 
       arg = perl_arg_index < items ? ST(perl_arg_index) : &PL_sv_undef;  | 
 
| 
 | 
 1880  | 
 157  | 
       arg = perl_arg_index < items ? ST(perl_arg_index) : &PL_sv_undef;  | 
 
| 
73
 | 
 68  | 
 528  | 
       if(custom_flag)  | 
 
| 
 | 
 0  | 
 4  | 
       if(custom_flag)  | 
 
| 
 | 
 86  | 
 1951  | 
       if(custom_flag)  | 
 
| 
82
 | 
 0  | 
 0  | 
           for(n=0; n < max; n++)  | 
 
| 
 | 
 0  | 
 0  | 
           for(n=0; n < max; n++)  | 
 
| 
 | 
 6  | 
 6  | 
           for(n=0; n < max; n++)  | 
 
| 
101
 | 
 0  | 
 13  | 
           ffi_pl_arguments_set_uint8(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint8(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint8(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 13  | 
           ffi_pl_arguments_set_uint8(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint8(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint8(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint8(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint8(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 6  | 
 49  | 
           ffi_pl_arguments_set_uint8(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 6  | 
 0  | 
           ffi_pl_arguments_set_uint8(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 6  | 
           ffi_pl_arguments_set_uint8(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 49  | 
           ffi_pl_arguments_set_uint8(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
104
 | 
 0  | 
 3  | 
           ffi_pl_arguments_set_sint8(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint8(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint8(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 3  | 
 0  | 
           ffi_pl_arguments_set_sint8(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint8(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint8(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint8(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint8(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 6  | 
 27  | 
           ffi_pl_arguments_set_sint8(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 6  | 
 0  | 
           ffi_pl_arguments_set_sint8(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 6  | 
           ffi_pl_arguments_set_sint8(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 27  | 
 0  | 
           ffi_pl_arguments_set_sint8(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
107
 | 
 0  | 
 2  | 
           ffi_pl_arguments_set_uint16(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint16(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint16(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 2  | 
           ffi_pl_arguments_set_uint16(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint16(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint16(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint16(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint16(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 6  | 
 39  | 
           ffi_pl_arguments_set_uint16(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 6  | 
 0  | 
           ffi_pl_arguments_set_uint16(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 6  | 
           ffi_pl_arguments_set_uint16(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 39  | 
           ffi_pl_arguments_set_uint16(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
110
 | 
 0  | 
 2  | 
           ffi_pl_arguments_set_sint16(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint16(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint16(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 2  | 
 0  | 
           ffi_pl_arguments_set_sint16(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint16(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint16(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint16(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint16(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 6  | 
 27  | 
           ffi_pl_arguments_set_sint16(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 6  | 
 0  | 
           ffi_pl_arguments_set_sint16(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 6  | 
           ffi_pl_arguments_set_sint16(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 27  | 
 0  | 
           ffi_pl_arguments_set_sint16(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
113
 | 
 0  | 
 2  | 
           ffi_pl_arguments_set_uint32(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint32(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint32(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 2  | 
           ffi_pl_arguments_set_uint32(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint32(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint32(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint32(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint32(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 6  | 
 39  | 
           ffi_pl_arguments_set_uint32(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 6  | 
 0  | 
           ffi_pl_arguments_set_uint32(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 6  | 
           ffi_pl_arguments_set_uint32(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
 | 
 0  | 
 39  | 
           ffi_pl_arguments_set_uint32(arguments, i, SvOK(arg) ? SvUV(arg) : 0);  | 
 
| 
116
 | 
 1  | 
 208  | 
           ffi_pl_arguments_set_sint32(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 1  | 
 0  | 
           ffi_pl_arguments_set_sint32(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 1  | 
           ffi_pl_arguments_set_sint32(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 208  | 
 0  | 
           ffi_pl_arguments_set_sint32(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 2  | 
           ffi_pl_arguments_set_sint32(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint32(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint32(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 2  | 
 0  | 
           ffi_pl_arguments_set_sint32(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 7  | 
 184  | 
           ffi_pl_arguments_set_sint32(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 7  | 
 0  | 
           ffi_pl_arguments_set_sint32(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 0  | 
 7  | 
           ffi_pl_arguments_set_sint32(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
 | 
 184  | 
 0  | 
           ffi_pl_arguments_set_sint32(arguments, i, SvOK(arg) ? SvIV(arg) : 0);  | 
 
| 
119
 | 
 0  | 
 2  | 
           ffi_pl_arguments_set_uint64(arguments, i, SvOK(arg) ? SvU64(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint64(arguments, i, SvOK(arg) ? SvU64(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint64(arguments, i, SvOK(arg) ? SvU64(arg) : 0);  | 
 
| 
 | 
 0  | 
 2  | 
           ffi_pl_arguments_set_uint64(arguments, i, SvOK(arg) ? SvU64(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint64(arguments, i, SvOK(arg) ? SvU64(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint64(arguments, i, SvOK(arg) ? SvU64(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint64(arguments, i, SvOK(arg) ? SvU64(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_uint64(arguments, i, SvOK(arg) ? SvU64(arg) : 0);  | 
 
| 
 | 
 6  | 
 196  | 
           ffi_pl_arguments_set_uint64(arguments, i, SvOK(arg) ? SvU64(arg) : 0);  | 
 
| 
 | 
 6  | 
 0  | 
           ffi_pl_arguments_set_uint64(arguments, i, SvOK(arg) ? SvU64(arg) : 0);  | 
 
| 
 | 
 0  | 
 6  | 
           ffi_pl_arguments_set_uint64(arguments, i, SvOK(arg) ? SvU64(arg) : 0);  | 
 
| 
 | 
 0  | 
 196  | 
           ffi_pl_arguments_set_uint64(arguments, i, SvOK(arg) ? SvU64(arg) : 0);  | 
 
| 
122
 | 
 0  | 
 2  | 
           ffi_pl_arguments_set_sint64(arguments, i, SvOK(arg) ? SvI64(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint64(arguments, i, SvOK(arg) ? SvI64(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint64(arguments, i, SvOK(arg) ? SvI64(arg) : 0);  | 
 
| 
 | 
 2  | 
 0  | 
           ffi_pl_arguments_set_sint64(arguments, i, SvOK(arg) ? SvI64(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint64(arguments, i, SvOK(arg) ? SvI64(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint64(arguments, i, SvOK(arg) ? SvI64(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint64(arguments, i, SvOK(arg) ? SvI64(arg) : 0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_sint64(arguments, i, SvOK(arg) ? SvI64(arg) : 0);  | 
 
| 
 | 
 6  | 
 27  | 
           ffi_pl_arguments_set_sint64(arguments, i, SvOK(arg) ? SvI64(arg) : 0);  | 
 
| 
 | 
 6  | 
 0  | 
           ffi_pl_arguments_set_sint64(arguments, i, SvOK(arg) ? SvI64(arg) : 0);  | 
 
| 
 | 
 0  | 
 6  | 
           ffi_pl_arguments_set_sint64(arguments, i, SvOK(arg) ? SvI64(arg) : 0);  | 
 
| 
 | 
 27  | 
 0  | 
           ffi_pl_arguments_set_sint64(arguments, i, SvOK(arg) ? SvI64(arg) : 0);  | 
 
| 
125
 | 
 0  | 
 8  | 
           ffi_pl_arguments_set_float(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_float(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_float(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 8  | 
 0  | 
           ffi_pl_arguments_set_float(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_float(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_float(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_float(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_float(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 6  | 
 60  | 
           ffi_pl_arguments_set_float(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 6  | 
 0  | 
           ffi_pl_arguments_set_float(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 0  | 
 6  | 
           ffi_pl_arguments_set_float(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 57  | 
 3  | 
           ffi_pl_arguments_set_float(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
128
 | 
 0  | 
 17  | 
           ffi_pl_arguments_set_double(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_double(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_double(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 17  | 
 0  | 
           ffi_pl_arguments_set_double(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_double(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_double(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_double(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_double(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 6  | 
 60  | 
           ffi_pl_arguments_set_double(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 6  | 
 0  | 
           ffi_pl_arguments_set_double(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 0  | 
 6  | 
           ffi_pl_arguments_set_double(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
 | 
 57  | 
 3  | 
           ffi_pl_arguments_set_double(arguments, i, SvOK(arg) ? SvNV(arg) : 0.0);  | 
 
| 
131
 | 
 6  | 
 148  | 
           ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 6  | 
 0  | 
           ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 0  | 
 6  | 
           ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 136  | 
 12  | 
           ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 20  | 
 197  | 
           ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 20  | 
 0  | 
           ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 0  | 
 20  | 
           ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 197  | 
 0  | 
           ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
134
 | 
 1  | 
 51  | 
           ffi_pl_arguments_set_string(arguments, i, SvOK(arg) ? SvPV_nolen(arg) : NULL);  | 
 
| 
 | 
 1  | 
 0  | 
           ffi_pl_arguments_set_string(arguments, i, SvOK(arg) ? SvPV_nolen(arg) : NULL);  | 
 
| 
 | 
 0  | 
 1  | 
           ffi_pl_arguments_set_string(arguments, i, SvOK(arg) ? SvPV_nolen(arg) : NULL);  | 
 
| 
 | 
 51  | 
 0  | 
           ffi_pl_arguments_set_string(arguments, i, SvOK(arg) ? SvPV_nolen(arg) : NULL);  | 
 
| 
 | 
 0  | 
 2  | 
           ffi_pl_arguments_set_string(arguments, i, SvOK(arg) ? SvPV_nolen(arg) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_string(arguments, i, SvOK(arg) ? SvPV_nolen(arg) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
           ffi_pl_arguments_set_string(arguments, i, SvOK(arg) ? SvPV_nolen(arg) : NULL);  | 
 
| 
 | 
 2  | 
 0  | 
           ffi_pl_arguments_set_string(arguments, i, SvOK(arg) ? SvPV_nolen(arg) : NULL);  | 
 
| 
 | 
 15  | 
 386  | 
           ffi_pl_arguments_set_string(arguments, i, SvOK(arg) ? SvPV_nolen(arg) : NULL);  | 
 
| 
 | 
 15  | 
 0  | 
           ffi_pl_arguments_set_string(arguments, i, SvOK(arg) ? SvPV_nolen(arg) : NULL);  | 
 
| 
 | 
 0  | 
 15  | 
           ffi_pl_arguments_set_string(arguments, i, SvOK(arg) ? SvPV_nolen(arg) : NULL);  | 
 
| 
 | 
 386  | 
 0  | 
           ffi_pl_arguments_set_string(arguments, i, SvOK(arg) ? SvPV_nolen(arg) : NULL);  | 
 
| 
142
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 3  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 3  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
 | 
 3  | 
 0  | 
             ffi_pl_perl_to_long_double(arg, ptr);  | 
 
| 
170
 | 
 8  | 
 6  | 
             if(SvROK(arg))  | 
 
| 
 | 
 0  | 
 0  | 
             if(SvROK(arg))  | 
 
| 
 | 
 33  | 
 6  | 
             if(SvROK(arg))  | 
 
| 
173
 | 
 1  | 
 7  | 
               ptr = SvOK(arg2) ? SvPV(arg2, size) : NULL;  | 
 
| 
 | 
 1  | 
 0  | 
               ptr = SvOK(arg2) ? SvPV(arg2, size) : NULL;  | 
 
| 
 | 
 0  | 
 1  | 
               ptr = SvOK(arg2) ? SvPV(arg2, size) : NULL;  | 
 
| 
 | 
 7  | 
 0  | 
               ptr = SvOK(arg2) ? SvPV(arg2, size) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
               ptr = SvOK(arg2) ? SvPV(arg2, size) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
               ptr = SvOK(arg2) ? SvPV(arg2, size) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
               ptr = SvOK(arg2) ? SvPV(arg2, size) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
               ptr = SvOK(arg2) ? SvPV(arg2, size) : NULL;  | 
 
| 
 | 
 0  | 
 33  | 
               ptr = SvOK(arg2) ? SvPV(arg2, size) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
               ptr = SvOK(arg2) ? SvPV(arg2, size) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
               ptr = SvOK(arg2) ? SvPV(arg2, size) : NULL;  | 
 
| 
 | 
 33  | 
 0  | 
               ptr = SvOK(arg2) ? SvPV(arg2, size) : NULL;  | 
 
| 
177
 | 
 2  | 
 4  | 
               ptr = SvOK(arg) ? SvPV(arg, size) : NULL;  | 
 
| 
 | 
 2  | 
 0  | 
               ptr = SvOK(arg) ? SvPV(arg, size) : NULL;  | 
 
| 
 | 
 0  | 
 2  | 
               ptr = SvOK(arg) ? SvPV(arg, size) : NULL;  | 
 
| 
 | 
 4  | 
 0  | 
               ptr = SvOK(arg) ? SvPV(arg, size) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
               ptr = SvOK(arg) ? SvPV(arg, size) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
               ptr = SvOK(arg) ? SvPV(arg, size) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
               ptr = SvOK(arg) ? SvPV(arg, size) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
               ptr = SvOK(arg) ? SvPV(arg, size) : NULL;  | 
 
| 
 | 
 3  | 
 3  | 
               ptr = SvOK(arg) ? SvPV(arg, size) : NULL;  | 
 
| 
 | 
 3  | 
 0  | 
               ptr = SvOK(arg) ? SvPV(arg, size) : NULL;  | 
 
| 
 | 
 0  | 
 3  | 
               ptr = SvOK(arg) ? SvPV(arg, size) : NULL;  | 
 
| 
 | 
 3  | 
 0  | 
               ptr = SvOK(arg) ? SvPV(arg, size) : NULL;  | 
 
| 
179
 | 
 11  | 
 3  | 
             if(ptr != NULL && expected != 0 && size != expected)  | 
 
| 
 | 
 11  | 
 0  | 
             if(ptr != NULL && expected != 0 && size != expected)  | 
 
| 
 | 
 0  | 
 11  | 
             if(ptr != NULL && expected != 0 && size != expected)  | 
 
| 
 | 
 0  | 
 0  | 
             if(ptr != NULL && expected != 0 && size != expected)  | 
 
| 
 | 
 0  | 
 0  | 
             if(ptr != NULL && expected != 0 && size != expected)  | 
 
| 
 | 
 0  | 
 0  | 
             if(ptr != NULL && expected != 0 && size != expected)  | 
 
| 
 | 
 36  | 
 3  | 
             if(ptr != NULL && expected != 0 && size != expected)  | 
 
| 
 | 
 36  | 
 0  | 
             if(ptr != NULL && expected != 0 && size != expected)  | 
 
| 
 | 
 0  | 
 36  | 
             if(ptr != NULL && expected != 0 && size != expected)  | 
 
| 
188
 | 
 6  | 
 2  | 
             if(sv_isobject(arg) && sv_derived_from(arg, record_class))  | 
 
| 
 | 
 5  | 
 1  | 
             if(sv_isobject(arg) && sv_derived_from(arg, record_class))  | 
 
| 
 | 
 0  | 
 0  | 
             if(sv_isobject(arg) && sv_derived_from(arg, record_class))  | 
 
| 
 | 
 0  | 
 0  | 
             if(sv_isobject(arg) && sv_derived_from(arg, record_class))  | 
 
| 
 | 
 0  | 
 0  | 
             if(sv_isobject(arg) && sv_derived_from(arg, record_class))  | 
 
| 
 | 
 0  | 
 0  | 
             if(sv_isobject(arg) && sv_derived_from(arg, record_class))  | 
 
| 
190
 | 
 5  | 
 0  | 
               argument_pointers[i] = SvPV_nolen(SvRV(arg));  | 
 
| 
 | 
 0  | 
 0  | 
               argument_pointers[i] = SvPV_nolen(SvRV(arg));  | 
 
| 
 | 
 0  | 
 0  | 
               argument_pointers[i] = SvPV_nolen(SvRV(arg));  | 
 
| 
194
 | 
 3  | 
 3  | 
               ffi_pl_croak("argument %d is not an instance of %s", i, record_class);  | 
 
| 
 | 
 0  | 
 0  | 
               ffi_pl_croak("argument %d is not an instance of %s", i, record_class);  | 
 
| 
 | 
 0  | 
 0  | 
               ffi_pl_croak("argument %d is not an instance of %s", i, record_class);  | 
 
| 
200
 | 
 2  | 
 12  | 
             if(!SvROK(arg))  | 
 
| 
 | 
 0  | 
 0  | 
             if(!SvROK(arg))  | 
 
| 
 | 
 30  | 
 78  | 
             if(!SvROK(arg))  | 
 
| 
202
 | 
 0  | 
 2  | 
               ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
               ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
               ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 2  | 
 0  | 
               ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
               ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
               ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
               ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
               ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 30  | 
 0  | 
               ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 30  | 
 0  | 
               ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 0  | 
 30  | 
               ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
               ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg) ? INT2PTR(void*, SvIV(arg)) : NULL);  | 
 
| 
285
 | 
 73  | 
 0  | 
                 if(SvROK(arg))  | 
 
| 
 | 
 0  | 
 0  | 
                 if(SvROK(arg))  | 
 
| 
 | 
 316  | 
 94  | 
                 if(SvROK(arg))  | 
 
| 
288
 | 
 6  | 
 67  | 
                   if(SvTYPE(arg2) < SVt_PVAV && is_pointer)  | 
 
| 
 | 
 6  | 
 0  | 
                   if(SvTYPE(arg2) < SVt_PVAV && is_pointer)  | 
 
| 
 | 
 0  | 
 0  | 
                   if(SvTYPE(arg2) < SVt_PVAV && is_pointer)  | 
 
| 
 | 
 0  | 
 0  | 
                   if(SvTYPE(arg2) < SVt_PVAV && is_pointer)  | 
 
| 
 | 
 166  | 
 150  | 
                   if(SvTYPE(arg2) < SVt_PVAV && is_pointer)  | 
 
| 
 | 
 166  | 
 0  | 
                   if(SvTYPE(arg2) < SVt_PVAV && is_pointer)  | 
 
| 
294
 | 
 0  | 
 0  | 
                         *((uint8_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint8_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint8_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint8_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint8_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint8_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint8_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint8_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 9  | 
                         *((uint8_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint8_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint8_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 9  | 
                         *((uint8_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
298
 | 
 0  | 
 0  | 
                         *((int8_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int8_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int8_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int8_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int8_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int8_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int8_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int8_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 9  | 
                         *((int8_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int8_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int8_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 9  | 
 0  | 
                         *((int8_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
302
 | 
 0  | 
 0  | 
                         *((uint16_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint16_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint16_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint16_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint16_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint16_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint16_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint16_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 9  | 
                         *((uint16_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint16_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint16_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 9  | 
                         *((uint16_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
306
 | 
 0  | 
 0  | 
                         *((int16_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int16_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int16_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int16_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int16_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int16_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int16_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int16_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 9  | 
                         *((int16_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int16_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int16_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 9  | 
 0  | 
                         *((int16_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
310
 | 
 0  | 
 0  | 
                         *((uint32_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint32_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint32_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint32_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint32_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint32_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint32_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint32_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 9  | 
                         *((uint32_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint32_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint32_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 9  | 
                         *((uint32_t*)ptr) = SvOK(arg2) ? SvUV(arg2) : 0;  | 
 
| 
314
 | 
 0  | 
 6  | 
                         *((int32_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int32_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int32_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 6  | 
 0  | 
                         *((int32_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int32_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int32_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int32_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int32_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 11  | 
                         *((int32_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int32_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int32_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
 | 
 11  | 
 0  | 
                         *((int32_t*)ptr) = SvOK(arg2) ? SvIV(arg2) : 0;  | 
 
| 
318
 | 
 0  | 
 0  | 
                         *((uint64_t*)ptr) = SvOK(arg2) ? SvU64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint64_t*)ptr) = SvOK(arg2) ? SvU64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint64_t*)ptr) = SvOK(arg2) ? SvU64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint64_t*)ptr) = SvOK(arg2) ? SvU64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint64_t*)ptr) = SvOK(arg2) ? SvU64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint64_t*)ptr) = SvOK(arg2) ? SvU64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint64_t*)ptr) = SvOK(arg2) ? SvU64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint64_t*)ptr) = SvOK(arg2) ? SvU64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 9  | 
                         *((uint64_t*)ptr) = SvOK(arg2) ? SvU64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint64_t*)ptr) = SvOK(arg2) ? SvU64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((uint64_t*)ptr) = SvOK(arg2) ? SvU64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 9  | 
                         *((uint64_t*)ptr) = SvOK(arg2) ? SvU64(arg2) : 0;  | 
 
| 
322
 | 
 0  | 
 0  | 
                         *((int64_t*)ptr) = SvOK(arg2) ? SvI64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int64_t*)ptr) = SvOK(arg2) ? SvI64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int64_t*)ptr) = SvOK(arg2) ? SvI64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int64_t*)ptr) = SvOK(arg2) ? SvI64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int64_t*)ptr) = SvOK(arg2) ? SvI64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int64_t*)ptr) = SvOK(arg2) ? SvI64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int64_t*)ptr) = SvOK(arg2) ? SvI64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int64_t*)ptr) = SvOK(arg2) ? SvI64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 9  | 
                         *((int64_t*)ptr) = SvOK(arg2) ? SvI64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int64_t*)ptr) = SvOK(arg2) ? SvI64(arg2) : 0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((int64_t*)ptr) = SvOK(arg2) ? SvI64(arg2) : 0;  | 
 
| 
 | 
 9  | 
 0  | 
                         *((int64_t*)ptr) = SvOK(arg2) ? SvI64(arg2) : 0;  | 
 
| 
326
 | 
 0  | 
 0  | 
                         *((float*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((float*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((float*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((float*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((float*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((float*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((float*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((float*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 9  | 
                         *((float*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((float*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((float*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 7  | 
 2  | 
                         *((float*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
330
 | 
 0  | 
 0  | 
                         *((double*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((double*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((double*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((double*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((double*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((double*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((double*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((double*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 9  | 
                         *((double*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((double*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 0  | 
 0  | 
                         *((double*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
 | 
 7  | 
 2  | 
                         *((double*)ptr) = SvOK(arg2) ? SvNV(arg2) : 0.0;  | 
 
| 
336
 | 
 0  | 
 0  | 
                           *((void**)ptr) = SvOK(tmp) ? INT2PTR(void *, SvIV(tmp)) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
                           *((void**)ptr) = SvOK(tmp) ? INT2PTR(void *, SvIV(tmp)) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
                           *((void**)ptr) = SvOK(tmp) ? INT2PTR(void *, SvIV(tmp)) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
                           *((void**)ptr) = SvOK(tmp) ? INT2PTR(void *, SvIV(tmp)) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
                           *((void**)ptr) = SvOK(tmp) ? INT2PTR(void *, SvIV(tmp)) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
                           *((void**)ptr) = SvOK(tmp) ? INT2PTR(void *, SvIV(tmp)) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
                           *((void**)ptr) = SvOK(tmp) ? INT2PTR(void *, SvIV(tmp)) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
                           *((void**)ptr) = SvOK(tmp) ? INT2PTR(void *, SvIV(tmp)) : NULL;  | 
 
| 
 | 
 6  | 
 6  | 
                           *((void**)ptr) = SvOK(tmp) ? INT2PTR(void *, SvIV(tmp)) : NULL;  | 
 
| 
 | 
 6  | 
 0  | 
                           *((void**)ptr) = SvOK(tmp) ? INT2PTR(void *, SvIV(tmp)) : NULL;  | 
 
| 
 | 
 0  | 
 6  | 
                           *((void**)ptr) = SvOK(tmp) ? INT2PTR(void *, SvIV(tmp)) : NULL;  | 
 
| 
 | 
 6  | 
 0  | 
                           *((void**)ptr) = SvOK(tmp) ? INT2PTR(void *, SvIV(tmp)) : NULL;  | 
 
| 
342
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 2  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 2  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
 | 
 2  | 
 0  | 
                         ffi_pl_perl_to_long_double(arg2, (long double*)ptr);  | 
 
| 
357
 | 
 0  | 
 0  | 
                         if(SvOK(arg2))  | 
 
| 
 | 
 0  | 
 0  | 
                         if(SvOK(arg2))  | 
 
| 
 | 
 0  | 
 0  | 
                         if(SvOK(arg2))  | 
 
| 
 | 
 0  | 
 0  | 
                         if(SvOK(arg2))  | 
 
| 
 | 
 0  | 
 0  | 
                         if(SvOK(arg2))  | 
 
| 
 | 
 0  | 
 0  | 
                         if(SvOK(arg2))  | 
 
| 
 | 
 3  | 
 3  | 
                         if(SvOK(arg2))  | 
 
| 
 | 
 3  | 
 0  | 
                         if(SvOK(arg2))  | 
 
| 
 | 
 0  | 
 3  | 
                         if(SvOK(arg2))  | 
 
| 
362
 | 
 0  | 
 0  | 
                           pv = SvPV(arg2, len);  | 
 
| 
 | 
 0  | 
 0  | 
                           pv = SvPV(arg2, len);  | 
 
| 
 | 
 3  | 
 0  | 
                           pv = SvPV(arg2, len);  | 
 
| 
380
 | 
 67  | 
 0  | 
                   else if(SvTYPE(arg2) == SVt_PVAV && (!is_pointer) || (is_pointer && self->platypus_api >= 2))  | 
 
| 
 | 
 12  | 
 55  | 
                   else if(SvTYPE(arg2) == SVt_PVAV && (!is_pointer) || (is_pointer && self->platypus_api >= 2))  | 
 
| 
 | 
 12  | 
 0  | 
                   else if(SvTYPE(arg2) == SVt_PVAV && (!is_pointer) || (is_pointer && self->platypus_api >= 2))  | 
 
| 
 | 
 12  | 
 0  | 
                   else if(SvTYPE(arg2) == SVt_PVAV && (!is_pointer) || (is_pointer && self->platypus_api >= 2))  | 
 
| 
 | 
 0  | 
 0  | 
                   else if(SvTYPE(arg2) == SVt_PVAV && (!is_pointer) || (is_pointer && self->platypus_api >= 2))  | 
 
| 
 | 
 0  | 
 0  | 
                   else if(SvTYPE(arg2) == SVt_PVAV && (!is_pointer) || (is_pointer && self->platypus_api >= 2))  | 
 
| 
 | 
 0  | 
 0  | 
                   else if(SvTYPE(arg2) == SVt_PVAV && (!is_pointer) || (is_pointer && self->platypus_api >= 2))  | 
 
| 
 | 
 0  | 
 0  | 
                   else if(SvTYPE(arg2) == SVt_PVAV && (!is_pointer) || (is_pointer && self->platypus_api >= 2))  | 
 
| 
 | 
 150  | 
 0  | 
                   else if(SvTYPE(arg2) == SVt_PVAV && (!is_pointer) || (is_pointer && self->platypus_api >= 2))  | 
 
| 
 | 
 21  | 
 129  | 
                   else if(SvTYPE(arg2) == SVt_PVAV && (!is_pointer) || (is_pointer && self->platypus_api >= 2))  | 
 
| 
 | 
 21  | 
 0  | 
                   else if(SvTYPE(arg2) == SVt_PVAV && (!is_pointer) || (is_pointer && self->platypus_api >= 2))  | 
 
| 
 | 
 21  | 
 0  | 
                   else if(SvTYPE(arg2) == SVt_PVAV && (!is_pointer) || (is_pointer && self->platypus_api >= 2))  | 
 
| 
383
 | 
 55  | 
 12  | 
                     if(!is_pointer)  | 
 
| 
 | 
 0  | 
 0  | 
                     if(!is_pointer)  | 
 
| 
 | 
 129  | 
 21  | 
                     if(!is_pointer)  | 
 
| 
387
 | 
 49  | 
 18  | 
                     if(count == 0)  | 
 
| 
 | 
 0  | 
 0  | 
                     if(count == 0)  | 
 
| 
 | 
 76  | 
 74  | 
                     if(count == 0)  | 
 
| 
395
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
397
 | 
 0  | 
 0  | 
                           ((uint8_t*)ptr)[n] = SvUV(*av_fetch(av, n, 1));  | 
 
| 
 | 
 0  | 
 0  | 
                           ((uint8_t*)ptr)[n] = SvUV(*av_fetch(av, n, 1));  | 
 
| 
 | 
 0  | 
 110  | 
                           ((uint8_t*)ptr)[n] = SvUV(*av_fetch(av, n, 1));  | 
 
| 
402
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
404
 | 
 0  | 
 0  | 
                           ((int8_t*)ptr)[n] = SvIV(*av_fetch(av, n, 1));  | 
 
| 
 | 
 0  | 
 0  | 
                           ((int8_t*)ptr)[n] = SvIV(*av_fetch(av, n, 1));  | 
 
| 
 | 
 110  | 
 0  | 
                           ((int8_t*)ptr)[n] = SvIV(*av_fetch(av, n, 1));  | 
 
| 
408
 | 
 0  | 
 0  | 
                         Newx(ptr, count, uint16_t);  | 
 
| 
 | 
 0  | 
 0  | 
                         Newx(ptr, count, uint16_t);  | 
 
| 
 | 
 0  | 
 11  | 
                         Newx(ptr, count, uint16_t);  | 
 
| 
409
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
411
 | 
 0  | 
 0  | 
                           ((uint16_t*)ptr)[n] = SvUV(*av_fetch(av, n, 1));  | 
 
| 
 | 
 0  | 
 0  | 
                           ((uint16_t*)ptr)[n] = SvUV(*av_fetch(av, n, 1));  | 
 
| 
 | 
 0  | 
 110  | 
                           ((uint16_t*)ptr)[n] = SvUV(*av_fetch(av, n, 1));  | 
 
| 
415
 | 
 0  | 
 0  | 
                         Newx(ptr, count, int16_t);  | 
 
| 
 | 
 0  | 
 0  | 
                         Newx(ptr, count, int16_t);  | 
 
| 
 | 
 0  | 
 11  | 
                         Newx(ptr, count, int16_t);  | 
 
| 
416
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
418
 | 
 0  | 
 0  | 
                           ((int16_t*)ptr)[n] = SvIV(*av_fetch(av, n, 1));  | 
 
| 
 | 
 0  | 
 0  | 
                           ((int16_t*)ptr)[n] = SvIV(*av_fetch(av, n, 1));  | 
 
| 
 | 
 110  | 
 0  | 
                           ((int16_t*)ptr)[n] = SvIV(*av_fetch(av, n, 1));  | 
 
| 
422
 | 
 0  | 
 0  | 
                         Newx(ptr, count, uint32_t);  | 
 
| 
 | 
 0  | 
 0  | 
                         Newx(ptr, count, uint32_t);  | 
 
| 
 | 
 0  | 
 11  | 
                         Newx(ptr, count, uint32_t);  | 
 
| 
423
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
425
 | 
 0  | 
 0  | 
                           ((uint32_t*)ptr)[n] = SvUV(*av_fetch(av, n, 1));  | 
 
| 
 | 
 0  | 
 0  | 
                           ((uint32_t*)ptr)[n] = SvUV(*av_fetch(av, n, 1));  | 
 
| 
 | 
 0  | 
 110  | 
                           ((uint32_t*)ptr)[n] = SvUV(*av_fetch(av, n, 1));  | 
 
| 
429
 | 
 0  | 
 0  | 
                         Newx(ptr, count, int32_t);  | 
 
| 
 | 
 0  | 
 0  | 
                         Newx(ptr, count, int32_t);  | 
 
| 
 | 
 0  | 
 11  | 
                         Newx(ptr, count, int32_t);  | 
 
| 
430
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
432
 | 
 0  | 
 0  | 
                           ((int32_t*)ptr)[n] = SvIV(*av_fetch(av, n, 1));  | 
 
| 
 | 
 0  | 
 0  | 
                           ((int32_t*)ptr)[n] = SvIV(*av_fetch(av, n, 1));  | 
 
| 
 | 
 110  | 
 0  | 
                           ((int32_t*)ptr)[n] = SvIV(*av_fetch(av, n, 1));  | 
 
| 
436
 | 
 0  | 
 0  | 
                         Newx(ptr, count, uint64_t);  | 
 
| 
 | 
 0  | 
 0  | 
                         Newx(ptr, count, uint64_t);  | 
 
| 
 | 
 0  | 
 11  | 
                         Newx(ptr, count, uint64_t);  | 
 
| 
437
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
439
 | 
 0  | 
 0  | 
                           ((uint64_t*)ptr)[n] = SvU64(*av_fetch(av, n, 1));  | 
 
| 
 | 
 0  | 
 0  | 
                           ((uint64_t*)ptr)[n] = SvU64(*av_fetch(av, n, 1));  | 
 
| 
 | 
 0  | 
 110  | 
                           ((uint64_t*)ptr)[n] = SvU64(*av_fetch(av, n, 1));  | 
 
| 
443
 | 
 0  | 
 0  | 
                         Newx(ptr, count, int64_t);  | 
 
| 
 | 
 0  | 
 0  | 
                         Newx(ptr, count, int64_t);  | 
 
| 
 | 
 0  | 
 11  | 
                         Newx(ptr, count, int64_t);  | 
 
| 
444
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
446
 | 
 0  | 
 0  | 
                           ((int64_t*)ptr)[n] = SvI64(*av_fetch(av, n, 1));  | 
 
| 
 | 
 0  | 
 0  | 
                           ((int64_t*)ptr)[n] = SvI64(*av_fetch(av, n, 1));  | 
 
| 
 | 
 110  | 
 0  | 
                           ((int64_t*)ptr)[n] = SvI64(*av_fetch(av, n, 1));  | 
 
| 
450
 | 
 0  | 
 0  | 
                         Newx(ptr, count, float);  | 
 
| 
 | 
 0  | 
 0  | 
                         Newx(ptr, count, float);  | 
 
| 
 | 
 0  | 
 11  | 
                         Newx(ptr, count, float);  | 
 
| 
451
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
453
 | 
 0  | 
 0  | 
                           ((float*)ptr)[n] = SvNV(*av_fetch(av, n, 1));  | 
 
| 
 | 
 0  | 
 0  | 
                           ((float*)ptr)[n] = SvNV(*av_fetch(av, n, 1));  | 
 
| 
 | 
 80  | 
 30  | 
                           ((float*)ptr)[n] = SvNV(*av_fetch(av, n, 1));  | 
 
| 
457
 | 
 0  | 
 0  | 
                         Newx(ptr, count, double);  | 
 
| 
 | 
 0  | 
 0  | 
                         Newx(ptr, count, double);  | 
 
| 
 | 
 0  | 
 11  | 
                         Newx(ptr, count, double);  | 
 
| 
458
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
460
 | 
 0  | 
 0  | 
                           ((double*)ptr)[n] = SvNV(*av_fetch(av, n, 1));  | 
 
| 
 | 
 0  | 
 0  | 
                           ((double*)ptr)[n] = SvNV(*av_fetch(av, n, 1));  | 
 
| 
 | 
 80  | 
 30  | 
                           ((double*)ptr)[n] = SvNV(*av_fetch(av, n, 1));  | 
 
| 
464
 | 
 0  | 
 1  | 
                         Newx(ptr, count, void*);  | 
 
| 
 | 
 0  | 
 0  | 
                         Newx(ptr, count, void*);  | 
 
| 
 | 
 0  | 
 38  | 
                         Newx(ptr, count, void*);  | 
 
| 
465
 | 
 2  | 
 1  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 393  | 
 38  | 
                         for(n=0; n
 | 
 
| 
468
 | 
 1  | 
 1  | 
                           ((void**)ptr)[n] = SvOK(sv) ? INT2PTR(void*, SvIV(sv)) : NULL;  | 
 
| 
 | 
 1  | 
 0  | 
                           ((void**)ptr)[n] = SvOK(sv) ? INT2PTR(void*, SvIV(sv)) : NULL;  | 
 
| 
 | 
 0  | 
 1  | 
                           ((void**)ptr)[n] = SvOK(sv) ? INT2PTR(void*, SvIV(sv)) : NULL;  | 
 
| 
 | 
 1  | 
 0  | 
                           ((void**)ptr)[n] = SvOK(sv) ? INT2PTR(void*, SvIV(sv)) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
                           ((void**)ptr)[n] = SvOK(sv) ? INT2PTR(void*, SvIV(sv)) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
                           ((void**)ptr)[n] = SvOK(sv) ? INT2PTR(void*, SvIV(sv)) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
                           ((void**)ptr)[n] = SvOK(sv) ? INT2PTR(void*, SvIV(sv)) : NULL;  | 
 
| 
 | 
 0  | 
 0  | 
                           ((void**)ptr)[n] = SvOK(sv) ? INT2PTR(void*, SvIV(sv)) : NULL;  | 
 
| 
 | 
 45  | 
 348  | 
                           ((void**)ptr)[n] = SvOK(sv) ? INT2PTR(void*, SvIV(sv)) : NULL;  | 
 
| 
 | 
 45  | 
 0  | 
                           ((void**)ptr)[n] = SvOK(sv) ? INT2PTR(void*, SvIV(sv)) : NULL;  | 
 
| 
 | 
 0  | 
 45  | 
                           ((void**)ptr)[n] = SvOK(sv) ? INT2PTR(void*, SvIV(sv)) : NULL;  | 
 
| 
 | 
 348  | 
 0  | 
                           ((void**)ptr)[n] = SvOK(sv) ? INT2PTR(void*, SvIV(sv)) : NULL;  | 
 
| 
476
 | 
 0  | 
 0  | 
                           Newx(ptr, count, long double);  | 
 
| 
 | 
 0  | 
 0  | 
                           Newx(ptr, count, long double);  | 
 
| 
 | 
 0  | 
 2  | 
                           Newx(ptr, count, long double);  | 
 
| 
482
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 6  | 
 2  | 
                         for(n=0; n
 | 
 
| 
485
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 6  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 6  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 6  | 
                           ffi_pl_perl_to_long_double(sv, &((long double*)ptr)[n]);  | 
 
| 
491
 | 
 0  | 
 16  | 
                         Newx(ptr, count, float complex);  | 
 
| 
 | 
 0  | 
 0  | 
                         Newx(ptr, count, float complex);  | 
 
| 
 | 
 0  | 
 0  | 
                         Newx(ptr, count, float complex);  | 
 
| 
492
 | 
 48  | 
 16  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
499
 | 
 0  | 
 16  | 
                         Newx(ptr, count, double complex);  | 
 
| 
 | 
 0  | 
 0  | 
                         Newx(ptr, count, double complex);  | 
 
| 
 | 
 0  | 
 0  | 
                         Newx(ptr, count, double complex);  | 
 
| 
500
 | 
 48  | 
 16  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
508
 | 
 0  | 
 34  | 
                         Newx(ptr, count, char *);  | 
 
| 
 | 
 0  | 
 0  | 
                         Newx(ptr, count, char *);  | 
 
| 
 | 
 0  | 
 0  | 
                         Newx(ptr, count, char *);  | 
 
| 
509
 | 
 148  | 
 34  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
512
 | 
 34  | 
 114  | 
                           if(SvOK(sv))  | 
 
| 
 | 
 34  | 
 0  | 
                           if(SvOK(sv))  | 
 
| 
 | 
 0  | 
 0  | 
                           if(SvOK(sv))  | 
 
| 
 | 
 0  | 
 0  | 
                           if(SvOK(sv))  | 
 
| 
 | 
 0  | 
 0  | 
                           if(SvOK(sv))  | 
 
| 
517
 | 
 114  | 
 0  | 
                             pv = SvPV(sv, len);  | 
 
| 
 | 
 0  | 
 0  | 
                             pv = SvPV(sv, len);  | 
 
| 
 | 
 0  | 
 0  | 
                             pv = SvPV(sv, len);  | 
 
| 
543
 | 
 0  | 
 0  | 
                   if(is_pointer)  | 
 
| 
 | 
 0  | 
 0  | 
                   if(is_pointer)  | 
 
| 
 | 
 64  | 
 30  | 
                   if(is_pointer)  | 
 
| 
552
 | 
 0  | 
 73  | 
                 if(is_bad)  | 
 
| 
 | 
 0  | 
 0  | 
                 if(is_bad)  | 
 
| 
 | 
 30  | 
 380  | 
                 if(is_bad)  | 
 
| 
554
 | 
 0  | 
 0  | 
                   if(is_pointer)  | 
 
| 
 | 
 0  | 
 0  | 
                   if(is_pointer)  | 
 
| 
 | 
 0  | 
 30  | 
                   if(is_pointer)  | 
 
| 
556
 | 
 0  | 
 0  | 
                     if(self->platypus_api >= 2)  | 
 
| 
 | 
 0  | 
 0  | 
                     if(self->platypus_api >= 2)  | 
 
| 
 | 
 0  | 
 0  | 
                     if(self->platypus_api >= 2)  | 
 
| 
583
 | 
 20  | 
 0  | 
                 if(sv_isobject(arg) && sv_derived_from(arg, self->argument_types[i]->extra[0].object.class))  | 
 
| 
 | 
 20  | 
 0  | 
                 if(sv_isobject(arg) && sv_derived_from(arg, self->argument_types[i]->extra[0].object.class))  | 
 
| 
 | 
 0  | 
 0  | 
                 if(sv_isobject(arg) && sv_derived_from(arg, self->argument_types[i]->extra[0].object.class))  | 
 
| 
 | 
 0  | 
 0  | 
                 if(sv_isobject(arg) && sv_derived_from(arg, self->argument_types[i]->extra[0].object.class))  | 
 
| 
 | 
 0  | 
 0  | 
                 if(sv_isobject(arg) && sv_derived_from(arg, self->argument_types[i]->extra[0].object.class))  | 
 
| 
 | 
 0  | 
 0  | 
                 if(sv_isobject(arg) && sv_derived_from(arg, self->argument_types[i]->extra[0].object.class))  | 
 
| 
589
 | 
 0  | 
 2  | 
                       ffi_pl_arguments_set_uint8(arguments, i, SvUV(arg2) );  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_uint8(arguments, i, SvUV(arg2) );  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_uint8(arguments, i, SvUV(arg2) );  | 
 
| 
592
 | 
 2  | 
 0  | 
                       ffi_pl_arguments_set_sint8(arguments, i, SvIV(arg2) );  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_sint8(arguments, i, SvIV(arg2) );  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_sint8(arguments, i, SvIV(arg2) );  | 
 
| 
595
 | 
 0  | 
 2  | 
                       ffi_pl_arguments_set_uint16(arguments, i, SvUV(arg2) );  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_uint16(arguments, i, SvUV(arg2) );  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_uint16(arguments, i, SvUV(arg2) );  | 
 
| 
598
 | 
 2  | 
 0  | 
                       ffi_pl_arguments_set_sint16(arguments, i, SvIV(arg2) );  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_sint16(arguments, i, SvIV(arg2) );  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_sint16(arguments, i, SvIV(arg2) );  | 
 
| 
601
 | 
 0  | 
 2  | 
                       ffi_pl_arguments_set_uint32(arguments, i, SvUV(arg2) );  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_uint32(arguments, i, SvUV(arg2) );  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_uint32(arguments, i, SvUV(arg2) );  | 
 
| 
604
 | 
 2  | 
 0  | 
                       ffi_pl_arguments_set_sint32(arguments, i, SvIV(arg2) );  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_sint32(arguments, i, SvIV(arg2) );  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_sint32(arguments, i, SvIV(arg2) );  | 
 
| 
607
 | 
 0  | 
 2  | 
                       ffi_pl_arguments_set_uint64(arguments, i, SvU64(arg2) );  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_uint64(arguments, i, SvU64(arg2) );  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_uint64(arguments, i, SvU64(arg2) );  | 
 
| 
610
 | 
 2  | 
 0  | 
                       ffi_pl_arguments_set_sint64(arguments, i, SvI64(arg2) );  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_sint64(arguments, i, SvI64(arg2) );  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_sint64(arguments, i, SvI64(arg2) );  | 
 
| 
613
 | 
 0  | 
 4  | 
                       ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg2) ? INT2PTR(void*, SvIV(arg2)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg2) ? INT2PTR(void*, SvIV(arg2)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg2) ? INT2PTR(void*, SvIV(arg2)) : NULL);  | 
 
| 
 | 
 4  | 
 0  | 
                       ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg2) ? INT2PTR(void*, SvIV(arg2)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg2) ? INT2PTR(void*, SvIV(arg2)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg2) ? INT2PTR(void*, SvIV(arg2)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg2) ? INT2PTR(void*, SvIV(arg2)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg2) ? INT2PTR(void*, SvIV(arg2)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg2) ? INT2PTR(void*, SvIV(arg2)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg2) ? INT2PTR(void*, SvIV(arg2)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg2) ? INT2PTR(void*, SvIV(arg2)) : NULL);  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_arguments_set_pointer(arguments, i, SvOK(arg2) ? INT2PTR(void*, SvIV(arg2)) : NULL);  | 
 
| 
616
 | 
 0  | 
 0  | 
                       ffi_pl_croak("Object argument %d type not supported %d", i, type_code);  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_croak("Object argument %d type not supported %d", i, type_code);  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_croak("Object argument %d type not supported %d", i, type_code);  | 
 
| 
621
 | 
 0  | 
 0  | 
                   ffi_pl_croak("Object argument %d must be an object of class %s", i, self->argument_types[i]->extra[0].object.class);  | 
 
| 
 | 
 0  | 
 0  | 
                   ffi_pl_croak("Object argument %d must be an object of class %s", i, self->argument_types[i]->extra[0].object.class);  | 
 
| 
 | 
 0  | 
 0  | 
                   ffi_pl_croak("Object argument %d must be an object of class %s", i, self->argument_types[i]->extra[0].object.class);  | 
 
| 
636
 | 
 67  | 
 525  | 
       if(custom_flag)  | 
 
| 
 | 
 0  | 
 4  | 
       if(custom_flag)  | 
 
| 
 | 
 68  | 
 1951  | 
       if(custom_flag)  | 
 
| 
640
 | 
 0  | 
 67  | 
         for(n=0; n < max; n++)  | 
 
| 
 | 
 0  | 
 0  | 
         for(n=0; n < max; n++)  | 
 
| 
 | 
 0  | 
 68  | 
         for(n=0; n < max; n++)  | 
 
| 
699
 | 
 592  | 
 398  | 
     for(i=self->ffi_cif.nargs-1,perl_arg_index--; i >= 0; i--, perl_arg_index--)  | 
 
| 
 | 
 4  | 
 2  | 
     for(i=self->ffi_cif.nargs-1,perl_arg_index--; i >= 0; i--, perl_arg_index--)  | 
 
| 
 | 
 2025  | 
 1651  | 
     for(i=self->ffi_cif.nargs-1,perl_arg_index--; i >= 0; i--, perl_arg_index--)  | 
 
| 
703
 | 
 14  | 
 578  | 
       switch(type_code)  | 
 
| 
 | 
 0  | 
 4  | 
       switch(type_code)  | 
 
| 
 | 
 108  | 
 1917  | 
       switch(type_code)  | 
 
| 
712
 | 
 14  | 
 0  | 
             arg = perl_arg_index < items ? ST(perl_arg_index) : &PL_sv_undef;  | 
 
| 
 | 
 0  | 
 0  | 
             arg = perl_arg_index < items ? ST(perl_arg_index) : &PL_sv_undef;  | 
 
| 
 | 
 78  | 
 30  | 
             arg = perl_arg_index < items ? ST(perl_arg_index) : &PL_sv_undef;  | 
 
| 
713
 | 
 12  | 
 2  | 
             if(SvROK(arg))  | 
 
| 
 | 
 0  | 
 0  | 
             if(SvROK(arg))  | 
 
| 
 | 
 78  | 
 30  | 
             if(SvROK(arg))  | 
 
| 
733
 | 
 73  | 
 0  | 
                 arg = perl_arg_index < items ? ST(perl_arg_index) : &PL_sv_undef;  | 
 
| 
 | 
 0  | 
 0  | 
                 arg = perl_arg_index < items ? ST(perl_arg_index) : &PL_sv_undef;  | 
 
| 
 | 
 350  | 
 60  | 
                 arg = perl_arg_index < items ? ST(perl_arg_index) : &PL_sv_undef;  | 
 
| 
734
 | 
 73  | 
 0  | 
                 if(ptr != NULL && SvOK(arg))  | 
 
| 
 | 
 0  | 
 73  | 
                 if(ptr != NULL && SvOK(arg))  | 
 
| 
 | 
 0  | 
 0  | 
                 if(ptr != NULL && SvOK(arg))  | 
 
| 
 | 
 0  | 
 0  | 
                 if(ptr != NULL && SvOK(arg))  | 
 
| 
 | 
 0  | 
 0  | 
                 if(ptr != NULL && SvOK(arg))  | 
 
| 
 | 
 0  | 
 0  | 
                 if(ptr != NULL && SvOK(arg))  | 
 
| 
 | 
 0  | 
 0  | 
                 if(ptr != NULL && SvOK(arg))  | 
 
| 
 | 
 0  | 
 0  | 
                 if(ptr != NULL && SvOK(arg))  | 
 
| 
 | 
 346  | 
 64  | 
                 if(ptr != NULL && SvOK(arg))  | 
 
| 
 | 
 30  | 
 316  | 
                 if(ptr != NULL && SvOK(arg))  | 
 
| 
 | 
 30  | 
 0  | 
                 if(ptr != NULL && SvOK(arg))  | 
 
| 
 | 
 0  | 
 30  | 
                 if(ptr != NULL && SvOK(arg))  | 
 
| 
736
 | 
 73  | 
 0  | 
                   SV *arg2 = SvROK(arg) ? SvRV(arg) : &PL_sv_undef;  | 
 
| 
 | 
 0  | 
 0  | 
                   SV *arg2 = SvROK(arg) ? SvRV(arg) : &PL_sv_undef;  | 
 
| 
 | 
 316  | 
 0  | 
                   SV *arg2 = SvROK(arg) ? SvRV(arg) : &PL_sv_undef;  | 
 
| 
737
 | 
 67  | 
 6  | 
                   if(SvTYPE(arg2) == SVt_PVAV)  | 
 
| 
 | 
 0  | 
 0  | 
                   if(SvTYPE(arg2) == SVt_PVAV)  | 
 
| 
 | 
 150  | 
 166  | 
                   if(SvTYPE(arg2) == SVt_PVAV)  | 
 
| 
741
 | 
 55  | 
 12  | 
                     if((type_code & FFI_PL_SHAPE_MASK) == FFI_PL_SHAPE_ARRAY)  | 
 
| 
 | 
 0  | 
 0  | 
                     if((type_code & FFI_PL_SHAPE_MASK) == FFI_PL_SHAPE_ARRAY)  | 
 
| 
 | 
 129  | 
 21  | 
                     if((type_code & FFI_PL_SHAPE_MASK) == FFI_PL_SHAPE_ARRAY)  | 
 
| 
745
 | 
 49  | 
 18  | 
                     if(count == 0)  | 
 
| 
 | 
 0  | 
 0  | 
                     if(count == 0)  | 
 
| 
 | 
 76  | 
 74  | 
                     if(count == 0)  | 
 
| 
752
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
758
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
764
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
770
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
776
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
782
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
788
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
794
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
800
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
807
 | 
 150  | 
 35  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 393  | 
 38  | 
                         for(n=0; n
 | 
 
| 
809
 | 
 32  | 
 118  | 
                           if( ((void**)ptr)[n] == NULL)  | 
 
| 
 | 
 0  | 
 0  | 
                           if( ((void**)ptr)[n] == NULL)  | 
 
| 
 | 
 42  | 
 351  | 
                           if( ((void**)ptr)[n] == NULL)  | 
 
| 
827
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 110  | 
 11  | 
                         for(n=0; n
 | 
 
| 
834
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 6  | 
 2  | 
                         for(n=0; n
 | 
 
| 
838
 | 
 0  | 
 0  | 
                           ffi_pl_long_double_to_perl(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_long_double_to_perl(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_long_double_to_perl(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_long_double_to_perl(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_long_double_to_perl(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_long_double_to_perl(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_long_double_to_perl(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_long_double_to_perl(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 6  | 
                           ffi_pl_long_double_to_perl(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_long_double_to_perl(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 0  | 
                           ffi_pl_long_double_to_perl(sv, &((long double*)ptr)[n]);  | 
 
| 
 | 
 0  | 
 6  | 
                           ffi_pl_long_double_to_perl(sv, &((long double*)ptr)[n]);  | 
 
| 
844
 | 
 48  | 
 16  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
852
 | 
 48  | 
 16  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
 | 
 0  | 
 0  | 
                         for(n=0; n
 | 
 
| 
862
 | 
 6  | 
 0  | 
                   else if(SvTYPE(arg2) < SVt_PVAV && !SvREADONLY(arg2))  | 
 
| 
 | 
 6  | 
 0  | 
                   else if(SvTYPE(arg2) < SVt_PVAV && !SvREADONLY(arg2))  | 
 
| 
 | 
 0  | 
 0  | 
                   else if(SvTYPE(arg2) < SVt_PVAV && !SvREADONLY(arg2))  | 
 
| 
 | 
 0  | 
 0  | 
                   else if(SvTYPE(arg2) < SVt_PVAV && !SvREADONLY(arg2))  | 
 
| 
 | 
 166  | 
 0  | 
                   else if(SvTYPE(arg2) < SVt_PVAV && !SvREADONLY(arg2))  | 
 
| 
 | 
 103  | 
 63  | 
                   else if(SvTYPE(arg2) < SVt_PVAV && !SvREADONLY(arg2))  | 
 
| 
894
 | 
 0  | 
 0  | 
                         if( *((void**)ptr) == NULL)  | 
 
| 
 | 
 0  | 
 0  | 
                         if( *((void**)ptr) == NULL)  | 
 
| 
 | 
 3  | 
 6  | 
                         if( *((void**)ptr) == NULL)  | 
 
| 
904
 | 
 0  | 
 0  | 
                         ffi_pl_long_double_to_perl(arg2,(long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_long_double_to_perl(arg2,(long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_long_double_to_perl(arg2,(long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_long_double_to_perl(arg2,(long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_long_double_to_perl(arg2,(long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_long_double_to_perl(arg2,(long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_long_double_to_perl(arg2,(long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_long_double_to_perl(arg2,(long double*)ptr);  | 
 
| 
 | 
 0  | 
 2  | 
                         ffi_pl_long_double_to_perl(arg2,(long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_long_double_to_perl(arg2,(long double*)ptr);  | 
 
| 
 | 
 0  | 
 0  | 
                         ffi_pl_long_double_to_perl(arg2,(long double*)ptr);  | 
 
| 
 | 
 0  | 
 2  | 
                         ffi_pl_long_double_to_perl(arg2,(long double*)ptr);  | 
 
| 
918
 | 
 0  | 
 0  | 
                           if(*pv == NULL)  | 
 
| 
 | 
 0  | 
 0  | 
                           if(*pv == NULL)  | 
 
| 
 | 
 0  | 
 6  | 
                           if(*pv == NULL)  | 
 
| 
944
 | 
 62  | 
 5  | 
                   if(coderef != NULL)  | 
 
| 
 | 
 0  | 
 0  | 
                   if(coderef != NULL)  | 
 
| 
 | 
 23  | 
 51  | 
                   if(coderef != NULL)  | 
 
| 
946
 | 
 62  | 
 0  | 
                     arg = perl_arg_index < items ? ST(perl_arg_index) : &PL_sv_undef;  | 
 
| 
 | 
 0  | 
 0  | 
                     arg = perl_arg_index < items ? ST(perl_arg_index) : &PL_sv_undef;  | 
 
| 
 | 
 23  | 
 0  | 
                     arg = perl_arg_index < items ? ST(perl_arg_index) : &PL_sv_undef;  | 
 
| 
952
 | 
 0  | 
 66  | 
                   if(SvOK(sv))  | 
 
| 
 | 
 0  | 
 0  | 
                   if(SvOK(sv))  | 
 
| 
 | 
 0  | 
 0  | 
                   if(SvOK(sv))  | 
 
| 
 | 
 6  | 
 0  | 
                   if(SvOK(sv))  | 
 
| 
 | 
 0  | 
 6  | 
                   if(SvOK(sv))  | 
 
| 
971
 | 
 378  | 
 20  | 
       if((type_code & FFI_PL_SHAPE_MASK) != FFI_PL_SHAPE_CUSTOM_PERL  | 
 
| 
 | 
 2  | 
 0  | 
       if((type_code & FFI_PL_SHAPE_MASK) != FFI_PL_SHAPE_CUSTOM_PERL  | 
 
| 
 | 
 1591  | 
 60  | 
       if((type_code & FFI_PL_SHAPE_MASK) != FFI_PL_SHAPE_CUSTOM_PERL  | 
 
| 
972
 | 
 377  | 
 1  | 
       &&  type_code != FFI_PL_TYPE_RECORD_VALUE)  | 
 
| 
 | 
 0  | 
 2  | 
       &&  type_code != FFI_PL_TYPE_RECORD_VALUE)  | 
 
| 
 | 
 1591  | 
 0  | 
       &&  type_code != FFI_PL_TYPE_RECORD_VALUE)  | 
 
| 
973
 | 
 444  | 
 377  | 
         ffi_pl_heap_free();  | 
 
| 
 | 
 0  | 
 0  | 
         ffi_pl_heap_free();  | 
 
| 
 | 
 1747  | 
 1591  | 
         ffi_pl_heap_free();  | 
 
| 
997
 | 
 1  | 
 1  | 
             ffi_pl_heap_free();  | 
 
| 
 | 
 2  | 
 2  | 
             ffi_pl_heap_free();  | 
 
| 
1019
 | 
 1  | 
 1  | 
             ffi_pl_heap_free();  | 
 
| 
 | 
 0  | 
 0  | 
             ffi_pl_heap_free();  | 
 
| 
1092
 | 
 16  | 
 149  | 
           if(result.pointer == NULL)  | 
 
| 
 | 
 17  | 
 523  | 
           if(result.pointer == NULL)  | 
 
| 
1094
 | 
 4  | 
 12  | 
             if(self->platypus_api >= 2)  | 
 
| 
 | 
 5  | 
 12  | 
             if(self->platypus_api >= 2)  | 
 
| 
1120
 | 
 0  | 
 0  | 
           if(MY_CXT.loaded_math_longdouble == 1)  | 
 
| 
 | 
 0  | 
 1  | 
           if(MY_CXT.loaded_math_longdouble == 1)  | 
 
| 
1168
 | 
 5  | 
 6  | 
           if(result.pointer == NULL)  | 
 
| 
 | 
 3  | 
 12  | 
           if(result.pointer == NULL)  | 
 
| 
1170
 | 
 1  | 
 4  | 
             if((type_code & FFI_PL_SHAPE_MASK) == FFI_PL_SHAPE_CUSTOM_PERL)  | 
 
| 
 | 
 0  | 
 3  | 
             if((type_code & FFI_PL_SHAPE_MASK) == FFI_PL_SHAPE_CUSTOM_PERL)  | 
 
| 
1181
 | 
 1  | 
 1  | 
               ffi_pl_heap_free();  | 
 
| 
 | 
 0  | 
 0  | 
               ffi_pl_heap_free();  | 
 
| 
1184
 | 
 1  | 
 3  | 
             if(self->platypus_api >= 2)  | 
 
| 
 | 
 1  | 
 2  | 
             if(self->platypus_api >= 2)  | 
 
| 
1208
 | 
 1  | 
 5  | 
             if((type_code & FFI_PL_SHAPE_MASK) == FFI_PL_SHAPE_CUSTOM_PERL)  | 
 
| 
 | 
 0  | 
 12  | 
             if((type_code & FFI_PL_SHAPE_MASK) == FFI_PL_SHAPE_CUSTOM_PERL)  | 
 
| 
1219
 | 
 1  | 
 1  | 
               ffi_pl_heap_free();  | 
 
| 
 | 
 0  | 
 0  | 
               ffi_pl_heap_free();  | 
 
| 
1230
 | 
 4  | 
 4  | 
           if(result.pointer == NULL)  | 
 
| 
 | 
 0  | 
 0  | 
           if(result.pointer == NULL)  | 
 
| 
1232
 | 
 2  | 
 2  | 
             if(self->platypus_api >= 2)  | 
 
| 
 | 
 0  | 
 0  | 
             if(self->platypus_api >= 2)  | 
 
| 
1261
 | 
 0  | 
 0  | 
               if(result.pointer == NULL)  | 
 
| 
 | 
 39  | 
 79  | 
               if(result.pointer == NULL)  | 
 
| 
1263
 | 
 0  | 
 0  | 
                 if(self->platypus_api >= 2)  | 
 
| 
 | 
 13  | 
 26  | 
                 if(self->platypus_api >= 2)  | 
 
| 
1318
 | 
 0  | 
 0  | 
                     if( *((void**)result.pointer) == NULL )  | 
 
| 
 | 
 3  | 
 3  | 
                     if( *((void**)result.pointer) == NULL )  | 
 
| 
1329
 | 
 0  | 
 0  | 
                     ffi_pl_long_double_to_perl(value, (long double*)result.pointer);  | 
 
| 
 | 
 0  | 
 0  | 
                     ffi_pl_long_double_to_perl(value, (long double*)result.pointer);  | 
 
| 
 | 
 0  | 
 0  | 
                     ffi_pl_long_double_to_perl(value, (long double*)result.pointer);  | 
 
| 
 | 
 0  | 
 0  | 
                     ffi_pl_long_double_to_perl(value, (long double*)result.pointer);  | 
 
| 
 | 
 0  | 
 1  | 
                     ffi_pl_long_double_to_perl(value, (long double*)result.pointer);  | 
 
| 
 | 
 0  | 
 0  | 
                     ffi_pl_long_double_to_perl(value, (long double*)result.pointer);  | 
 
| 
 | 
 0  | 
 0  | 
                     ffi_pl_long_double_to_perl(value, (long double*)result.pointer);  | 
 
| 
 | 
 0  | 
 1  | 
                     ffi_pl_long_double_to_perl(value, (long double*)result.pointer);  | 
 
| 
1375
 | 
 6  | 
 27  | 
               if(result.pointer == NULL)  | 
 
| 
 | 
 30  | 
 49  | 
               if(result.pointer == NULL)  | 
 
| 
1377
 | 
 2  | 
 4  | 
                 if(self->platypus_api >= 2)  | 
 
| 
 | 
 10  | 
 20  | 
                 if(self->platypus_api >= 2)  | 
 
| 
1389
 | 
 9  | 
 18  | 
                 if(count == 0 && type_code & FFI_PL_TYPE_OPAQUE)  | 
 
| 
 | 
 9  | 
 0  | 
                 if(count == 0 && type_code & FFI_PL_TYPE_OPAQUE)  | 
 
| 
 | 
 4  | 
 45  | 
                 if(count == 0 && type_code & FFI_PL_TYPE_OPAQUE)  | 
 
| 
 | 
 4  | 
 0  | 
                 if(count == 0 && type_code & FFI_PL_TYPE_OPAQUE)  | 
 
| 
1391
 | 
 12  | 
 9  | 
                   while(((void**)result.pointer)[count] != NULL)  | 
 
| 
 | 
 14  | 
 4  | 
                   while(((void**)result.pointer)[count] != NULL)  | 
 
| 
1396
 | 
 0  | 
 27  | 
                 Newx(sv, count, SV*);  | 
 
| 
 | 
 0  | 
 49  | 
                 Newx(sv, count, SV*);  | 
 
| 
1400
 | 
 24  | 
 6  | 
                     for(i=0; i
 | 
 
| 
 | 
 33  | 
 4  | 
                     for(i=0; i
 | 
 
| 
1406
 | 
 0  | 
 0  | 
                     for(i=0; i
 | 
 
| 
 | 
 33  | 
 4  | 
                     for(i=0; i
 | 
 
| 
1412
 | 
 0  | 
 0  | 
                     for(i=0; i
 | 
 
| 
 | 
 33  | 
 4  | 
                     for(i=0; i
 | 
 
| 
1418
 | 
 0  | 
 0  | 
                     for(i=0; i
 | 
 
| 
 | 
 33  | 
 4  | 
                     for(i=0; i
 | 
 
| 
1424
 | 
 0  | 
 0  | 
                     for(i=0; i
 | 
 
| 
 | 
 33  | 
 4  | 
                     for(i=0; i
 | 
 
| 
1430
 | 
 0  | 
 0  | 
                     for(i=0; i
 | 
 
| 
 | 
 33  | 
 4  | 
                     for(i=0; i
 | 
 
| 
1436
 | 
 0  | 
 0  | 
                     for(i=0; i
 | 
 
| 
 | 
 33  | 
 4  | 
                     for(i=0; i
 | 
 
| 
1442
 | 
 0  | 
 0  | 
                     for(i=0; i
 | 
 
| 
 | 
 33  | 
 4  | 
                     for(i=0; i
 | 
 
| 
1448
 | 
 0  | 
 0  | 
                     for(i=0; i
 | 
 
| 
 | 
 30  | 
 3  | 
                     for(i=0; i
 | 
 
| 
1454
 | 
 0  | 
 0  | 
                     for(i=0; i
 | 
 
| 
 | 
 30  | 
 3  | 
                     for(i=0; i
 | 
 
| 
1461
 | 
 30  | 
 15  | 
                     for(i=0; i
 | 
 
| 
 | 
 32  | 
 10  | 
                     for(i=0; i
 | 
 
| 
1463
 | 
 3  | 
 27  | 
                       if( ((void**)result.pointer)[i] == NULL)  | 
 
| 
 | 
 9  | 
 23  | 
                       if( ((void**)result.pointer)[i] == NULL)  | 
 
| 
1482
 | 
 0  | 
 0  | 
                     for(i=0; i
 | 
 
| 
 | 
 3  | 
 1  | 
                     for(i=0; i
 | 
 
| 
1485
 | 
 0  | 
 0  | 
                       ffi_pl_long_double_to_perl(sv[i], &((long double*)result.pointer)[i]);  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_long_double_to_perl(sv[i], &((long double*)result.pointer)[i]);  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_long_double_to_perl(sv[i], &((long double*)result.pointer)[i]);  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_long_double_to_perl(sv[i], &((long double*)result.pointer)[i]);  | 
 
| 
 | 
 0  | 
 3  | 
                       ffi_pl_long_double_to_perl(sv[i], &((long double*)result.pointer)[i]);  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_long_double_to_perl(sv[i], &((long double*)result.pointer)[i]);  | 
 
| 
 | 
 0  | 
 0  | 
                       ffi_pl_long_double_to_perl(sv[i], &((long double*)result.pointer)[i]);  | 
 
| 
 | 
 0  | 
 3  | 
                       ffi_pl_long_double_to_perl(sv[i], &((long double*)result.pointer)[i]);  | 
 
| 
1491
 | 
 9  | 
 3  | 
                     for(i=0; i
 | 
 
| 
 | 
 0  | 
 0  | 
                     for(i=0; i
 | 
 
| 
1502
 | 
 9  | 
 3  | 
                     for(i=0; i
 | 
 
| 
 | 
 0  | 
 0  | 
                     for(i=0; i
 | 
 
| 
1597
 | 
 13  | 
 3  | 
                     if(result.pointer != NULL)  | 
 
| 
 | 
 29  | 
 1  | 
                     if(result.pointer != NULL)  | 
 
| 
1601
 | 
 0  | 
 0  | 
                     ffi_pl_heap_free();  | 
 
| 
 | 
 0  | 
 0  | 
                     ffi_pl_heap_free();  | 
 
| 
1608
 | 
 14  | 
 3  | 
                 ret_out = ffi_pl_custom_perl(  | 
 
| 
 | 
 59  | 
 1  | 
                 ret_out = ffi_pl_custom_perl(  | 
 
| 
1616
 | 
 16  | 
 16  | 
                 ffi_pl_heap_free();  | 
 
| 
 | 
 84  | 
 60  | 
                 ffi_pl_heap_free();  | 
 
| 
1618
 | 
 13  | 
 3  | 
                 if(ret_in != NULL)  | 
 
| 
 | 
 59  | 
 1  | 
                 if(ret_in != NULL)  | 
 
| 
1623
 | 
 2  | 
 14  | 
                 if(ret_out == NULL)  | 
 
| 
 | 
 1  | 
 59  | 
                 if(ret_out == NULL)  | 
 
| 
1625
 | 
 0  | 
 2  | 
                   if(self->platypus_api >= 2)  | 
 
| 
 | 
 0  | 
 1  | 
                   if(self->platypus_api >= 2)  |