RFR: 8294982: Implementation of Classfile API [v12]
Adam Sotona
asotona at openjdk.org
Mon Feb 6 14:29:04 UTC 2023
On Fri, 3 Feb 2023 18:11:41 GMT, Maurizio Cimadamore <mcimadamore at openjdk.org> wrote:
>> Adam Sotona has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Classfile API moved under jdk.internal.classfile package
>
> src/java.base/share/classes/jdk/internal/classfile/ClassModel.java line 104:
>
>> 102: * found
>> 103: */
>> 104: default List<VerifyError> verify(Consumer<String> debugOutput) {
>
> not super sure whether `verify` belongs here - could be another component in the `components` package?
Classfile API by default does not verify produced or transformed bytecode, so this is more a question if we want to have verification an integral part of the API or a standalone tool.
> src/java.base/share/classes/jdk/internal/classfile/CodeBuilder.java line 613:
>
>> 611: }
>> 612:
>> 613: default CodeBuilder labelBinding(Label label) {
>
> Maybe just `bind` or `bindLabel` ?
It has been discussed (and changed) many times. Please raise this discussion at classfile-api-dev at openjdk.org
> src/java.base/share/classes/jdk/internal/classfile/CodeBuilder.java line 1371:
>
>> 1369: }
>> 1370:
>> 1371: default CodeBuilder tableswitch(Label defaultTarget, List<SwitchCase> cases) {
>
> `switch` seems the one instruction for which an high-level variant (like `trying`) could be useful, as generating code for that can be quite painful.
Nice RFE, thanks.
-------------
PR: https://git.openjdk.org/jdk/pull/10982
More information about the build-dev
mailing list