[Vm-dev] VM Maker: VMMaker-oscog.49.mcz

squeak-dev-noreply at lists.squeakfoundation.org squeak-dev-noreply at lists.squeakfoundation.org
Wed Mar 16 20:05:59 UTC 2011


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.



More information about the Vm-dev mailing list