RFR: 8289060: Undefined Behaviour in class VMReg
Andrew Haley
aph at openjdk.org
Mon Jun 27 15:05:42 UTC 2022
On Mon, 27 Jun 2022 13:05:43 GMT, Jorn Vernee <jvernee at openjdk.org> wrote:
> I've been thinking about this some more after you fixed the same issue for `Register` on AArch64 [1]. I think the issue is out-of-line calls to member functions. Since `this` is a pointer, the compiler is forced to spill the value on the stack to comply with the ABI. i.e. what we'd really want is some way to say "pass `this` by value". (On x64 Windows, as long as a struct fits in a register, it is not passed by reference).
Ah, I see. That makes sense.
> I think the patch looks good overall, but it looks like there are some failures in some of the SA tests.
Right. I'll start digging.
-------------
PR: https://git.openjdk.org/jdk/pull/9276
More information about the hotspot-compiler-dev
mailing list