RFR 8158850: [JVMCI] be more precise when enforcing OopMapValue encoding limitations
tom.rodriguez at oracle.com
Tue Jun 14 00:26:19 UTC 2016
The encoding used by OopMapValue puts a limit on the offset in the frame that can hold an oop. Previously this was enforced by setting a limit on the actual frame size but that value wasn’t accurate. It also sets an arbitrary limit on the total size of a frame, even if the encoding limits aren’t reached. Instead JVMCI should export the max offset that can be encoded and will throw an error if that offset is used. The relationship between the max offset and the encoding limits is computed from OopMapValue and checked by asserts. I also added a test that verifies the limits. Tested with jtreg test and with Graal based tests.
More information about the hotspot-compiler-dev