<div dir="ltr"><div><div><div><div><div><div>Hi,<br>I currently get link failure when compiling squeak.cog.v3 for my own VM brand.<br><br>The unresolved symbols are related to Spur (like numSegments).<br><br></div>It seems that the CCodeGenerator correctly eliminated the tests like<br>    objectMemory hasSpurMemoryManagerAPI ifTrue: [...]<br><br></div>But failed to eliminate this one:<br>        (arg = 53<br>         and: [objectMemory hasSpurMemoryManagerAPI]) ifTrue:<br>            [result := objectMemory integerObjectOf: objectMemory numSegments].<br><br></div>which is generated as:<br>        if ((arg == 53)<br>         &amp;&amp; (0)) {<br>            result = (((numSegments()) &lt;&lt; 1) | 1);<br>        }<br><br></div>So we should either rewrite primitiveVMParameter test like this:<br>    objectMemory hasSpurMemoryManagerAPI ifTrue: [arg = 53 ifTrue: [...]]<br><br></div>or patch the generator again with more complex pattern analysis...<br><br></div>Nicolas<br></div>