Example #1
0
File: runner.py Project: ieure/pypy
 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))
Example #2
0
    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)
Example #3
0
 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)