<div dir="ltr">Hi all,<div><br clear="all"><div>Since the recent changes in the BitBlt primitive I now have new warning failures.</div><div>I can't reproduce my use-case in the simulator AFAIK (I use non simulable code).</div><div>Here's the trace I get [1], looks like the code is accessing the <span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">byteSizeOf an oop without checking for forwarders, in my case I have the warning because the object is a forwarder.</span></div><div><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline"><br></span></div><div><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">Any idea what this is about? I guess I can provide an image to reproduce but it's a 150Mb wide 64 bits image...</span></div><div><br></div><div>[1]</div><div><div>* thread #1: tid = 0x44223d, 0x0000000100001783 Squeak`warning(s="(classIndexOf(oop)) > (isForwardedObjectClassIndexPun()) 34576") + 19 at gcc3x-interp.c:40, queue = 'com.apple.main-thread', stop reason = breakpoint 1.1</div><div>    frame #0: 0x0000000100001783 Squeak`warning(s="(classIndexOf(oop)) > (isForwardedObjectClassIndexPun()) 34576") + 19 at gcc3x-interp.c:40</div><div>[...]</div><div><br></div><div><b>(lldb)</b> bt</div><div>* thread #1: tid = 0x44223d, 0x0000000100001783 Squeak`warning(s="(classIndexOf(oop)) > (isForwardedObjectClassIndexPun()) 34576") + 19 at gcc3x-interp.c:40, queue = 'com.apple.main-thread', stop reason = breakpoint 1.1</div><div>  * frame #0: 0x0000000100001783 Squeak`warning(s="(classIndexOf(oop)) > (isForwardedObjectClassIndexPun()) 34576") + 19 at gcc3x-interp.c:40</div><div>    frame #1: 0x00000001000438f4 Squeak`byteSizeOf(oop=4633303952) + 100 at gcc3x-interp.c:34576</div><div>    frame #2: 0x0000000100107a4f Squeak`loadBitBltFromwarping(bbObj=4423438048, aBool=0) + 2351 at BitBltPlugin.c:3373</div><div>    frame #3: 0x00000001000fd955 Squeak`primitiveDisplayString + 341 at BitBltPlugin.c:5185</div><div>    frame #4: 0x0000000100097148 Squeak`primitiveExternalCall + 664 at gcc3x-interp.c:66133</div><div>    frame #5: 0x000000010000bc64 Squeak`interpret + 41892 at gcc3x-interp.c:5679</div><div>    frame #6: 0x00000001000019b8 Squeak`interpret + 248 at gcc3x-interp.c:2430</div><div><br clear="all"><div><div><b>(lldb)</b> up</div><div>frame #1: 0x00000001000438f4 Squeak`byteSizeOf(oop=4633303952) + 100 at gcc3x-interp.c:34576</div><div>   34573<span style="white-space:pre">              </span>/* begin numBytesOf: */</div><div>   34574<span style="white-space:pre">             </span>fmt = (((usqInt) (longAt(oop))) >> (formatShift())) & (formatMask());</div><div>   34575<span style="white-space:pre">             </span>/* begin numSlotsOf: */</div><div>-> 34576<span style="white-space:pre">            </span>assert((classIndexOf(oop)) > (isForwardedObjectClassIndexPun()));</div><div>   34577<span style="white-space:pre">                </span>numSlots = byteAt(oop + 7);</div><div>   34578<span style="white-space:pre">         </span>numBytes = (numSlots == (numSlotsMask())</div><div>   34579<span style="white-space:pre">                    </span>? ((usqInt) (((usqInt)(((sqInt)((usqInt)((longAt(oop - BaseHeaderSize))) << 8)))))) >> 8</div></div><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><span style="font-size:12.8px">Clément Béra<br></span><span style="color:rgb(0,0,238)"><a href="https://clementbera.github.io/" target="_blank">https://clementbera.github.io/</a></span><div style="font-size:12.8px"><a href="https://clementbera.wordpress.com/" target="_blank">https://clementbera.wordpress.com/</a></div></div></div></div></div></div>
</div></div></div>
</div>