<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style>
</head>
<body lang="EN-US" link="blue" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal">Unfortunately no crash.dmp has been created, the VM (3147) shows the error immediately after starting up, no image opened, just the info. But 3148 works fine so I guess you fixed it :)
</p>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="border:none;padding:0in"><b>From: </b><a href="mailto:eliot.miranda@gmail.com">Eliot Miranda</a><br>
<b>Sent: </b>Tuesday, February 8, 2022 3:26<br>
<b>To: </b><a href="mailto:vm-dev@lists.squeakfoundation.org">Open Smalltalk Virtual Machine Development Discussion</a><br>
<b>Subject: </b>Re: [Vm-dev] VM Maker: VMMaker.oscog-eem.3147.mcz</p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal"><span style="font-size:12.0pt">can you post the crash.dmp?<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Sun, Feb 6, 2022 at 3:14 PM Jaromir Matas <<a href="mailto:mail@jaromir.net">mail@jaromir.net</a>> wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt">
<p class="MsoNormal" style="margin-left:4.8pt">  <o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt">
Hi,</p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt">
I get this error when starting a fresh updated image with this squeak.cog.spur_win64x64 VM on latest Win 10 x64</p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt">
<img border="0" width="301" height="267" style="width:3.1354in;height:2.7812in" id="gmail-m_3568463958349569892Picture_x0020_3" src="cid:17ed7271c9137b6398a1"></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt">
Thanks for help,</p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt">
jaromir</p>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt">
<b>From: </b><a href="mailto:commits@source.squeak.org" target="_blank">commits@source.squeak.org</a><br>
<b>Sent: </b>Sunday, February 6, 2022 22:52<br>
<b>To: </b><a href="mailto:vm-dev@lists.squeakfoundation.org" target="_blank">vm-dev@lists.squeakfoundation.org</a><br>
<b>Subject: </b>[Vm-dev] VM Maker: VMMaker.oscog-eem.3147.mcz</p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt">
 </p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt;margin-left:4.8pt">
<br>
Eliot Miranda uploaded a new version of VMMaker to project VM Maker:<br>
<a href="http://source.squeak.org/VMMaker/VMMaker.oscog-eem.3147.mcz" target="_blank">http://source.squeak.org/VMMaker/VMMaker.oscog-eem.3147.mcz</a><br>
<br>
==================== Summary ====================<br>
<br>
Name: VMMaker.oscog-eem.3147<br>
Author: eem<br>
Time: 6 February 2022, 1:51:16.763917 pm<br>
UUID: 409be388-ed75-49dc-a648-c7051eb48168<br>
Ancestors: VMMaker.oscog-eem.3146<br>
<br>
Fix regressions in the stack interpreter generated sources from VMMaker.oscog-eem.3144, and in primitiveSupend[V2] from VMMaker.oscog-eem.3142,VMMaker.oscog-eem.3134,VMMaker.oscog-eem.3127.<br>
<br>
=============== Diff against VMMaker.oscog-eem.3146 ===============<br>
<br>
Item was removed:<br>
- ----- Method: CoInterpreter>>accessorDepthForExternalPrimitiveMethod: (in category 'plugin primitive support') -----<br>
- accessorDepthForExternalPrimitiveMethod: methodObj<br>
-        <option: #SpurObjectMemory><br>
-        | flags lit |<br>
-        self assert: (self isLinkedExternalPrimitive: methodObj).<br>
-        lit := self literal: 0 ofMethod: methodObj.<br>
-         flags := objectMemory fetchPointer: ExternalCallLiteralFlagsIndex ofObject: lit.<br>
-         ^(objectMemory integerValueOf: flags) >>> SpurPrimitiveAccessorDepthShift!<br>
<br>
Item was removed:<br>
- ----- Method: CoInterpreter>>isLinkedExternalPrimitive: (in category 'plugin primitive support') -----<br>
- isLinkedExternalPrimitive: methodObj<br>
-        | header primIdx literal targetFunctionIndex |<br>
-        header := objectMemory methodHeaderOf: methodObj.<br>
-        primIdx := self primitiveIndexOfMethod: methodObj header: header.<br>
-        ^primIdx = PrimNumberExternalCall<br>
-         and: [(objectMemory literalCountOfMethodHeader: header) > 0<br>
-         and: [(objectMemory isArray: (literal := self literal: 0 ofMethod: methodObj))<br>
-         and: [(objectMemory numSlotsOf: literal) = 4<br>
-         and: [targetFunctionIndex := objectMemory fetchPointer: ExternalCallLiteralTargetFunctionIndex ofObject: literal.<br>
-                (objectMemory isIntegerObject: targetFunctionIndex)<br>
-         and: [(objectMemory integerValueOf: targetFunctionIndex) > 0]]]]] "A 0 byte module name implies a primitive in the main VM; these can't change"!<br>
<br>
Item was added:<br>
+ ----- Method: StackInterpreter>>accessorDepthForExternalPrimitiveMethod: (in category 'plugin primitive support') -----<br>
+ accessorDepthForExternalPrimitiveMethod: methodObj<br>
+        <option: #SpurObjectMemory><br>
+        | flags lit |<br>
+        self assert: (self isLinkedExternalPrimitive: methodObj).<br>
+        lit := self literal: 0 ofMethod: methodObj.<br>
+         flags := objectMemory fetchPointer: ExternalCallLiteralFlagsIndex ofObject: lit.<br>
+         ^(objectMemory integerValueOf: flags) >>> SpurPrimitiveAccessorDepthShift!<br>
<br>
Item was added:<br>
+ ----- Method: StackInterpreter>>isLinkedExternalPrimitive: (in category 'plugin primitive support') -----<br>
+ isLinkedExternalPrimitive: methodObj<br>
+        | header primIdx literal targetFunctionIndex |<br>
+        header := objectMemory methodHeaderOf: methodObj.<br>
+        primIdx := self primitiveIndexOfMethod: methodObj header: header.<br>
+        ^primIdx = PrimNumberExternalCall<br>
+         and: [(objectMemory literalCountOfMethodHeader: header) > 0<br>
+         and: [(objectMemory isArray: (literal := self literal: 0 ofMethod: methodObj))<br>
+         and: [(objectMemory numSlotsOf: literal) = 4<br>
+         and: [targetFunctionIndex := objectMemory fetchPointer: ExternalCallLiteralTargetFunctionIndex ofObject: literal.<br>
+                (objectMemory isIntegerObject: targetFunctionIndex)<br>
+         and: [(objectMemory integerValueOf: targetFunctionIndex) > 0]]]]] "A 0 byte module name implies a primitive in the main VM; these can't change"!<br>
<br>
Item was changed:<br>
  ----- Method: StackInterpreter>>transferTo: (in category 'process primitive support') -----<br>
  transferTo: newProc <br>
         "Record a process to be awoken on the next interpreter cycle."<br>
         | activeContext sched oldProc |<br>
         <inline: false><br>
         statProcessSwitch := statProcessSwitch + 1.<br>
         self push: instructionPointer.<br>
         self externalWriteBackHeadFramePointers.<br>
         self assertValidExecutionPointe: instructionPointer + 1 r: framePointer s: stackPointer.<br>
         sched := self schedulerPointer.<br>
         oldProc := objectMemory fetchPointer: ActiveProcessIndex ofObject: sched.<br>
         activeContext := self ensureFrameIsMarried: framePointer SP: stackPointer + objectMemory wordSize.<br>
         objectMemory storePointer: SuspendedContextIndex ofObject: oldProc withValue: activeContext.<br>
         objectMemory storePointer: ActiveProcessIndex ofObject: sched withValue: newProc.<br>
         objectMemory storePointerUnchecked: MyListIndex ofObject: newProc withValue: objectMemory nilObject.<br>
+        self externalSetStackPageAndPointersForSuspendedContextOfProcess: newProc.<br>
+        ^0 "to allow primitiveSuspend[V2] to exit early by returning the result of transferTo:"!<br>
-        self externalSetStackPageAndPointersForSuspendedContextOfProcess: newProc!</p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:4.8pt">
 </p>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><br clear="all">
<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal">-- <o:p></o:p></p>
<div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:12.0pt">_,,,^..^,,,_<o:p></o:p></span></p>
</div>
</div>
</div>
</div>
<p class="MsoNormal"><span style="font-size:12.0pt">best, Eliot<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>