def calldescrof_dynamic(self, ffi_args, ffi_result, extrainfo=None): from pypy.jit.backend.llsupport.ffisupport import get_ffi_type_kind arg_types = [] for arg in ffi_args: kind = get_ffi_type_kind(arg) if kind != history.VOID: arg_types.append(kind) reskind = get_ffi_type_kind(ffi_result) return self.getdescr(0, reskind, extrainfo=extrainfo, arg_types=''.join(arg_types))
def calldescrof_dynamic(self, ffi_args, ffi_result, extrainfo, ffi_flags): from pypy.jit.backend.llsupport.ffisupport import get_ffi_type_kind from pypy.jit.backend.llsupport.ffisupport import UnsupportedKind arg_types = [] try: for arg in ffi_args: kind = get_ffi_type_kind(self, arg) if kind != history.VOID: arg_types.append(kind) reskind = get_ffi_type_kind(self, ffi_result) except UnsupportedKind: return None return self.getdescr(0, reskind, extrainfo=extrainfo, arg_types="".join(arg_types), ffi_flags=ffi_flags)
def calldescrof_dynamic(self, ffi_args, ffi_result, extrainfo, ffi_flags): from pypy.jit.backend.llsupport.ffisupport import get_ffi_type_kind from pypy.jit.backend.llsupport.ffisupport import UnsupportedKind arg_types = [] try: for arg in ffi_args: kind = get_ffi_type_kind(self, arg) if kind != history.VOID: arg_types.append(kind) reskind = get_ffi_type_kind(self, ffi_result) except UnsupportedKind: return None return self.getdescr(0, reskind, extrainfo=extrainfo, arg_types=''.join(arg_types), ffi_flags=ffi_flags)