[Vm-dev] VM Maker: VMMaker.oscog-eem.592.mcz
commits at source.squeak.org
commits at source.squeak.org
Sat Jan 25 00:56:37 UTC 2014
Eliot Miranda uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-eem.592.mcz
==================== Summary ====================
Name: VMMaker.oscog-eem.592
Author: eem
Time: 24 January 2014, 4:52:54.33 pm
UUID: 98758c41-4bb5-4d45-87c9-77e5cf416120
Ancestors: VMMaker.oscog-eem.591
Fix regression in mapProfileState committed in VMMaker.oscog-eem.380.
=============== Diff against VMMaker.oscog-eem.591 ===============
Item was changed:
----- Method: StackInterpreter>>mapProfileState (in category 'object memory support') -----
mapProfileState
(objectMemory shouldRemapObj: profileProcess) ifTrue:
[profileProcess := objectMemory remapObj: profileProcess].
(objectMemory shouldRemapObj: profileMethod) ifTrue:
+ [profileMethod := objectMemory remapObj: profileMethod].
- [profileMethod := objectMemory remapObj: profileProcess].
(objectMemory shouldRemapObj: profileSemaphore) ifTrue:
[profileSemaphore := objectMemory remapObj: profileSemaphore].
"The longRunningPrimitiveCheckMethod (LRPCM) is sampled in an interrupt. Be very careful with it.
If longRunningPrimitiveCheckSequenceNumber (LRPCSN) = statCheckForEvents then LRPCM has
been recenty sampled and could be mapped or not, but it must be newMethod and we can simply
copy newMethod. If LRPCSN ~= statCheckForEvents then LRPCM must be some extant object and
needs to be remapped."
self sqLowLevelMFence.
longRunningPrimitiveCheckMethod ifNotNil:
[longRunningPrimitiveCheckSequenceNumber = statCheckForEvents
ifTrue: [longRunningPrimitiveCheckMethod := newMethod]
ifFalse:
[(objectMemory shouldRemapObj: longRunningPrimitiveCheckMethod) ifTrue:
[longRunningPrimitiveCheckMethod := self remapObj: longRunningPrimitiveCheckMethod]].
self sqLowLevelMFence].
longRunningPrimitiveCheckSemaphore ifNotNil:
[(objectMemory shouldRemapObj: longRunningPrimitiveCheckSemaphore) ifTrue:
[longRunningPrimitiveCheckSemaphore := objectMemory remapObj: longRunningPrimitiveCheckSemaphore]]!
More information about the Vm-dev
mailing list