RFR: 8357220: Introduce a BSMAttributeEntry struct

Johan Sjölen jsjolen at openjdk.org
Mon May 19 10:08:04 UTC 2025


Hi,

 The constant pool currently has a lot of methods specific to extracting parts of the operands array. What this array actually is, is a sequence of bootstrap method attribute entries, where each entry has the following components:

```c++
struct BSMAE {
  u2 bootstrap_method_index;
  u2 argument_count;
  u2 arguments[argument_count];
}


We can removes some of these operands array specific methods, and instead allows you to extract BSMAttributeEntrys which you can then use to extract its piece wise components. This makes for a nicer interface, and a bit easier to come into as a reader of the code, as it more closely mirrors the JVMS. 

Please consider!

Testing: Currently GHA, running tier1-tier3

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

Commit messages:
 - Introduce BSMAttributeEntry

Changes: https://git.openjdk.org/jdk/pull/25298/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=25298&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8357220
  Stats: 102 lines in 7 files changed: 33 ins; 35 del; 34 mod
  Patch: https://git.openjdk.org/jdk/pull/25298.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/25298/head:pull/25298

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


More information about the hotspot-dev mailing list