[code-reflection] RFR: BytecodeLift directly calculating local variables + related BytecodeGenerator fixes [v5]
    Adam Sotona 
    asotona at openjdk.org
       
    Mon Aug 26 16:01:30 UTC 2024
    
    
  
On Mon, 26 Aug 2024 15:58:31 GMT, Adam Sotona <asotona at openjdk.org> wrote:
>> Proposal of `BytecodeLift` implementation skipping intermediate use of `SlotOp` and `SlotSSA` transformation.
>> `LocalsTypeMapper` already handled majority of the variable mapping and its complexity grew to cover more use cases.
>> This patch adds a very simple slots model to `LocalsTypeMapper` to compute variables out of the bytecode directly .
>> `BytecodeLift` now knows all necessary information to emit relevant `VarOp` and `VarAccessOp`  directly.
>> 
>> Stability of `TestSmallCorpus` has slightly degraded, however it is just a temporary regression.
>> 
>> Please review.
>> 
>> Thanks,
>> Adam
>
> Adam Sotona has updated the pull request incrementally with three additional commits since the last revision:
> 
>  - reverted wildcard type use in BytecodeLift
>  - Bytecode lift names variables by slot number "slot#XY"
>  - Stabilization of the roundtrip - single-use var allocations deferred
Stability of the `TestSmallCorpus` is now back (even slightly better).
-------------
PR Comment: https://git.openjdk.org/babylon/pull/218#issuecomment-2310545382
    
    
More information about the babylon-dev
mailing list