RFR: 8339214: Remove misleading CodeBuilder.loadConstant(Opcode, ConstantDesc) [v2]
Erik Gahlin
egahlin at openjdk.org
Sat Aug 31 09:46:18 UTC 2024
On Thu, 29 Aug 2024 21:46:52 GMT, Chen Liang <liach at openjdk.org> wrote:
>> `CodeBuilder::loadConstant(Opcode, ConstantDesc)` is error-prone and confusing. Users should almost always use `loadConstant(ConstantDesc)` for optimized instructions, or use specific factories `iconst_0` etc. or `bipush` with arguments or `LoadConstantInstruction.of` if they want to specify the exact type of LDC opcode.
>
> Chen Liang has updated the pull request incrementally with one additional commit since the last revision:
>
> Move bipush and sipush fix from Opcode cleanup to this patch
src/jdk.jfr/share/classes/jdk/jfr/internal/EventInstrumentation.java line 679:
> 677: getEventConfiguration(blockCodeBuilder);
> 678: // stack: [EW] [EW] [EC]
> 679: blockCodeBuilder.loadConstant(eventTypeId);
Does this means an int (single slot) can be pushed if the event type id happens to be below Integer.MAX_VALUE?
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/20779#discussion_r1739648107
More information about the core-libs-dev
mailing list