Request for reviews (S): 6958254: -XX:+VerifyOops is broken on x86
tom.rodriguez at oracle.com
Thu Jun 3 12:24:25 PDT 2010
Why didn't you ifdef _LP64 the rscratch1 pushes instead of using "if (rscratch1 != noreg)"? You could also restore the registers in the stub using loads instead of emitting pops at the call site which would keep the code size down. Turning on VerifyOops increases the code size quite a bit and adding pops will just make it worse.
On Jun 3, 2010, at 10:37 AM, Vladimir Kozlov wrote:
> Fixed 6958254: -XX:+VerifyOops is broken on x86
> movptr() instruction in verify_oop() trashes r10 (rscratch1)
> since the stub address is far. And rax is not restored.
More information about the hotspot-compiler-dev