[code-reflection] RFR: BytecodeGenerator, BytecodeLift and TestBytecode improvements
Adam Sotona
asotona at openjdk.org
Wed Mar 27 13:54:45 UTC 2024
On Fri, 22 Mar 2024 14:06:43 GMT, Adam Sotona <asotona at openjdk.org> wrote:
> BytecodeGenerator, BytecodeLift and TestBytecode improvements
This PR represents several rounds of improvements, refactoring and re-shaking of the bytecode generating and lifting code.
For `BytecodeLift` I've improved locals calculation, which allowed to return to a single-pass top-down analysis (with help of stack maps).
`BytecodeGenerator` refactoring is mostly preparation for follow up improvements.
Both are still work in progress, however improved `TestSmallCorpus` shows stats with significant improvements.
Beside the corpus-based tests I've implemented generic and parametrized `TestBytecode`, mainly to move forward in individual generator/lift cases. Many individual test cases have been merged into `TestBytecode`.
The PR also includes patch to `Interpreter` to convert int return values to the exact function return type (byte, boolean,...). I'm not sure it is the right fix on the right place, however it at least allows `TestBytecode` to cover more types.
Please review and let me know your comments.
I would like to sync with code-reflection branch before further work.
Thank you,
Adam
-------------
PR Comment: https://git.openjdk.org/babylon/pull/44#issuecomment-2022823396
More information about the babylon-dev
mailing list