Hi Lauren --
In the bytecodes, I can see:
46 <D0> popIntoTemp: 0
I don't suppose the JIT will ever drop this. Would be very dangerous regarding GC.
Best, Marcel Am 28.04.2022 04:15:19 schrieb Lauren P drurowin@gmail.com: Hi Marcel,
On Wed, Apr 27, 2022, 10:33 Marcel Taeumel <marcel.taeumel@hpi.de [mailto:marcel.taeumel@hpi.de]> wrote:
Ha. I think I found something. See Graphics-mt.514. I am not 100% sure that this was the culprit but I will backport it to Squeak 5.3 just in case It'll be a bit difficult to test, but I'll try stressing the image to see if that does the trick.
I do immediately see something that could become an issue... static analysis says priorBits is assigned to but then never accessed, so it's safe to optimize away. There are no function calls involved, just copying a pointer, so it isn't like there would be side effects. If I compiled it by hand I'd remove it entirely... which is why you have a comment specifically saying not to do just that.
I've looked at Context and CompiledMethod hard enough to know the callee can access it... for fun I wrote a method that rewrites block closure temporary bindings... is that enough to keep it from being omitted?
vm-dev@lists.squeakfoundation.org