Author: Lars Wassermann <[email protected]> Branch: Changeset: r449:c4ab2046ee2a Date: 2013-06-11 11:44 +0200 http://bitbucket.org/pypy/lang-smalltalk/changeset/c4ab2046ee2a/
Log: added interpreter proxy minor 5 & 6 stubs diff --git a/spyvm/interpreter_proxy.py b/spyvm/interpreter_proxy.py --- a/spyvm/interpreter_proxy.py +++ b/spyvm/interpreter_proxy.py @@ -705,15 +705,44 @@ # #endif # #if VM_PROXY_MINOR > 5 -# sqInt (*isArray)(sqInt oop); -# sqInt (*forceInterruptCheck)(void); +@expose_on_virtual_machine_proxy([oop], bool, minor=5) +def isArray(w_object): + if not isinstance(w_object, model.W_PointersObject): + return False + space = IProxy.space + s_class = w_object.shadow_of_my_class(space) + if s_class.instsize() == 0 and s_class.isvariable(): + return True + else: + return False + +@expose_on_virtual_machine_proxy([], int, minor=5) +def forceInterruptCheck(): + print 'Called InterpreterProxy >> forceInterruptCheck' + raise ProxyFunctionFailed # #endif # #if VM_PROXY_MINOR > 6 -# sqInt (*fetchLong32ofObject)(sqInt fieldFieldIndex, sqInt oop); -# sqInt (*getThisSessionID)(void); -# sqInt (*ioFilenamefromStringofLengthresolveAliases)(char* aCharBuffer, char* filenameIndex, sqInt filenameLength, sqInt resolveFlag); -# sqInt (*vmEndianness)(void); +@expose_on_virtual_machine_proxy([int, oop], oop, minor=6) +def fetchLong32ofObject(fieldFieldIndex, oop): + print 'Called InterpreterProxy >> fetchLong32ofObject' + raise ProxyFunctionFailed + +@expose_on_virtual_machine_proxy([int, oop], int, minor=6) +def getThisSessionID(fieldFieldIndex, oop): + # return random int + print 'Called InterpreterProxy >> getThisSessionID' + raise ProxyFunctionFailed + +@expose_on_virtual_machine_proxy([str, str, int, int], oop, minor=6) +def ioFilenamefromStringofLengthresolveAliases(aCharBuffer, filenameIndex, filenameLength, resolveFlag): + print 'Called InterpreterProxy >> ioFilenamefromStringofLengthresolveAliases' + raise ProxyFunctionFailed + +@expose_on_virtual_machine_proxy([], int, minor=6) +def vmEndianness(): + print 'Called InterpreterProxy >> vmEndianness' + return 0 # return 1 for big endian # #endif # #if VM_PROXY_MINOR > 7 _______________________________________________ pypy-commit mailing list [email protected] http://mail.python.org/mailman/listinfo/pypy-commit
