[code-reflection] RFR: Remove bytecode dialect [v13]

Adam Sotona asotona at openjdk.org
Fri Feb 9 11:48:07 UTC 2024


On Fri, 9 Feb 2024 11:37:33 GMT, Adam Sotona <asotona at openjdk.org> wrote:

>> This patch re-implements `BytecodeLift` to lift from bytecode directly to the core dialect
>> and removes `BytecodeInstructionOps` with the bytecode dialect.
>> 
>> Implementation is complete up to the point of passing all current tests.
>> 
>> Please review.
>> 
>> Thanks,
>> Adam
>
> Adam Sotona has updated the pull request incrementally with two additional commits since the last revision:
> 
>  - added more comments to the main lift loop
>  - extended TestLiftControl::testConditionalExpression

I haven't found any more simple way to traverse the code according to the flow.
Only insignificantly small amount of Java methods require second or more passes to complete the flow graph.
Out-of-order construction of auxiliary graph and then traverse in the right order and transform each block is much more complex.
The API also does not allow to get information about existing block beeing built, so there is for example no way to get know that it is a try-start or try-end block.

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

PR Comment: https://git.openjdk.org/babylon/pull/16#issuecomment-1935784434


More information about the babylon-dev mailing list