VM Maker: VMMaker-oscog.49.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

VM Maker: VMMaker-oscog.49.mcz

squeak-dev-noreply
 
Eliot Miranda uploaded a new version of VMMaker to project VM Maker:
http://www.squeaksource.com/VMMaker/VMMaker-oscog.49.mcz

==================== Summary ====================

Name: VMMaker-oscog.49
Author: eem
Time: 16 March 2011, 10:45:47 am
UUID: 24fe55e7-63be-4845-b137-2f9714906c99
Ancestors: VMMaker-eem.732, VMMaker-oscog.47

Implement cannotInterpret: hook in the JIT.  Refactor JIT MNU handling
so that lookupMethodNoMNUEtcInClass: can answer the splObj: index
for the selector to use to lookup failure (doesNotUnderstand: or
cannotInterpret:).

StackToRegisterMappingCogit:
        Fix bug with storeRemoteTemp (e.g. StarMorph initialize in Cuis
        3.x) which causes a stack off-by-one.
        Rename merge:afterReturn: to merge:afterContinuation: and
        revamp merge code to treat byte ode following an unconditional
        branch the same as after a return.
        Add spill tracing.

Minor cleanups for recent blog posts:
        Refactor ceSend:super:to:numArgs: pulling abort support out to
                ceSendAbort:to:numArgs:
        Rename activateInterpreterMethodFromMachineCode to
                interpretMethodFromMachineCode
        Remove unused linkSends: flag.

Move the genExternalizePointersForPrimitiveCall and
genLoadCStackPointersForPrimCall to the front of
compileInterpreterPrimitive so that
a) reg args are pushed before any calls, and
b) ceCheckProfileTick is run on the C stack.
The first fixes the StackToRegisterBasedCogit's crash when profiling.
The second is safer than running it on a Smalltalk stack page.

Fix simulation of the profling machinery (to debug the above).


Make printProcsOnList: & printProcessStack: part of the VM api for
debug printing.

Typos, use of splObj: instead of direct specialObjectsOop access

Fix simulation of primitiveScanCharacters (send slotSizeOf: to objectMemory).

Simulator cleanups (make simulated objectBefore: answer 0 on failure).
print oop... & print frame... on the utilities menu.
printop: prints fields of word objects.

Fix primitiveExternalCall's simulation version; specifically disabling
Matrix2x3Plugin, because it broke bezier subdivision.

Fix compileOpenPICPrototype openPICSize bug.  Need to use a real
selector to compute the right map size.

Typo and redundant code in genSpecialSelectorComparison.
Make genAndDis: take a doit string or a method.
Define CogSimStackEntry's inst vars in house style

Slang:
Eliminate final explicit returns in super expansions since these
can cause premature exit, failing to execute code in the subclass
method.

Fix super expansion when super expression is returned.  i.e.
final return should only be elided if subclass method does
not return the result of the super send.

Reply | Threaded
Open this post in threaded view
|

Re: VM Maker: VMMaker-oscog.49.mcz

Eliot Miranda-2
 
Hmm... I've managed to upload one of three distinct versions.  Copy to repository from a Monticello browser in image hasn;t worked.  Import Versions via a web browser to www.squeaksource.com/VMMaker hasn't worked.  Is there any other way to get the package files there?

TIA
Eliot

On Wed, Mar 16, 2011 at 1:05 PM, <[hidden email]> wrote:

Eliot Miranda uploaded a new version of VMMaker to project VM Maker:
http://www.squeaksource.com/VMMaker/VMMaker-oscog.49.mcz

==================== Summary ====================

Name: VMMaker-oscog.49
Author: eem
Time: 16 March 2011, 10:45:47 am
UUID: 24fe55e7-63be-4845-b137-2f9714906c99
Ancestors: VMMaker-eem.732, VMMaker-oscog.47

Implement cannotInterpret: hook in the JIT.  Refactor JIT MNU handling
so that lookupMethodNoMNUEtcInClass: can answer the splObj: index
for the selector to use to lookup failure (doesNotUnderstand: or
cannotInterpret:).

StackToRegisterMappingCogit:
       Fix bug with storeRemoteTemp (e.g. StarMorph initialize in Cuis
       3.x) which causes a stack off-by-one.
       Rename merge:afterReturn: to merge:afterContinuation: and
       revamp merge code to treat byte ode following an unconditional
       branch the same as after a return.
       Add spill tracing.

Minor cleanups for recent blog posts:
       Refactor ceSend:super:to:numArgs: pulling abort support out to
               ceSendAbort:to:numArgs:
       Rename activateInterpreterMethodFromMachineCode to
               interpretMethodFromMachineCode
       Remove unused linkSends: flag.

Move the genExternalizePointersForPrimitiveCall and
genLoadCStackPointersForPrimCall to the front of
compileInterpreterPrimitive so that
a) reg args are pushed before any calls, and
b) ceCheckProfileTick is run on the C stack.
The first fixes the StackToRegisterBasedCogit's crash when profiling.
The second is safer than running it on a Smalltalk stack page.

Fix simulation of the profling machinery (to debug the above).


Make printProcsOnList: & printProcessStack: part of the VM api for
debug printing.

Typos, use of splObj: instead of direct specialObjectsOop access

Fix simulation of primitiveScanCharacters (send slotSizeOf: to objectMemory).

Simulator cleanups (make simulated objectBefore: answer 0 on failure).
print oop... & print frame... on the utilities menu.
printop: prints fields of word objects.

Fix primitiveExternalCall's simulation version; specifically disabling
Matrix2x3Plugin, because it broke bezier subdivision.

Fix compileOpenPICPrototype openPICSize bug.  Need to use a real
selector to compute the right map size.

Typo and redundant code in genSpecialSelectorComparison.
Make genAndDis: take a doit string or a method.
Define CogSimStackEntry's inst vars in house style

Slang:
Eliminate final explicit returns in super expansions since these
can cause premature exit, failing to execute code in the subclass
method.

Fix super expansion when super expression is returned.  i.e.
final return should only be elided if subclass method does
not return the result of the super send.