Skip to content

Remove implicit prologue state to methods/blocks if that state is unused#8022

Merged
enebo merged 2 commits intojruby:masterfrom
enebo:less_implicit_state
Nov 24, 2023
Merged

Remove implicit prologue state to methods/blocks if that state is unused#8022
enebo merged 2 commits intojruby:masterfrom
enebo:less_implicit_state

Conversation

@enebo
Copy link
Member

@enebo enebo commented Nov 24, 2023

Remove implicit prologue state to methods/blocks if that state is unused

This is for work to speed up the startup of JRuby by reducing instrs visited in the startup interpreter. The implicit state
at the front of methods/blocks generally gets remove as dead instrs since their variables are not used. The startup
interpreter does not run the compiler passes which do this due to the significant time they take to analyze the code.

This PR is doing cheap existence checks which will remove a lot of these instrs during build time.

@enebo enebo added this to the JRuby 9.4.6.0 milestone Nov 24, 2023
@enebo enebo merged commit f04f0e2 into jruby:master Nov 24, 2023
@enebo enebo deleted the less_implicit_state branch November 24, 2023 21:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant