RFR: 8300253: Introduce AArch64 nzcv accessors

Erik Österlund eosterlund at openjdk.org
Tue Jan 17 18:52:40 UTC 2023


On Tue, 17 Jan 2023 18:30:02 GMT, Stuart Monteith <smonteith at openjdk.org> wrote:

> Could @fisk provide an example of where this might be used?
> 
> My assumption is that you are looking to execute code verification within, say, a GC memory barrier, and the code has been inserted in between where the condition codes might have been set and then used. This could avoid breaking the existing code when the verification code itself sets the condition codes.
> 
> It's not all of the pstate, but then this is just userspace, so it ought to be ok?
> 
> 

Your guess is spot on. We have a bunch of GC barrier nodes in C1, and C1 sprinkles oop verification all over the place - including when spilling oops between lir ops - sometimes between producing a condition code and consuming it. So I figured the verification code shouldn't really alter the state of execution such that it does something different. And I don't really want to reduce the amount of verification, because it was very useful in tracking down bugs.

-------------

PR: https://git.openjdk.org/jdk/pull/12038


More information about the hotspot-dev mailing list