Ron Blaschke via RT schrieb:
In all three sections a value is loaded into a register and then set as
an attribute on an object.

In the first hunk only the used register is changed from 0x12 to 0x13.
In the second hunks it's register 0x11 to 0x12.

With hunk three it's getting interesting because only the first
occurrence changes from 0x13 to 0x11.  set_attribute still uses 0x13,
which is wrong I think.

In the end, the wrong (Sub) value is put into the object's attribute
because the wrong register is used.  The error that comes up later is
not because the arguments are wrong, but because the wrong sub is called.

Can anyone tell if I'm on the right track?
Yes, I can see the pattern. One possibility to verify this, is to add a 'dummy_5' PMC. I'd expect three hunks again, but the third hunk should than conform to the two first hunks.

Is this a register allocator bug?

Regards, Bernhard

Reply via email to