Skip to content

Less instrs#7981

Merged
enebo merged 5 commits intojruby:masterfrom
enebo:less_instrs
Nov 28, 2023
Merged

Less instrs#7981
enebo merged 5 commits intojruby:masterfrom
enebo:less_instrs

Conversation

@enebo
Copy link
Member

@enebo enebo commented Oct 25, 2023

Attempt to reduce extra instructions. Some line number instructions are not needed if we have the impl of those
instructions emit the line. This will end up yielding some benefits:

  1. Less possible memory.
  2. Less instr processing
    a. in interpreter
    b. in compiler passes
  3. Allow contiguous homogeneous instrs (Trying to develop "super" instrs to reduce instrs more).

-e 1 with this first commit reduces instrs execution by 1200 instrs (from 495207 -> 494016) 0.3% less. This is a tiny number but this is also only affecting one-time code.

Update: with my recent merges of implicit prologue instr removal this is down to 449335 instrs.

enebo added 2 commits October 25, 2023 14:28
Attempt at reducing simple instrs which can be subsumed by
their neighboring instrs.
@enebo enebo added this to the JRuby 9.4.6.0 milestone Oct 31, 2023
…l not advance last processed num so next side effect on same line can still lead to a linenum instr
…This will not advance last processed num so next side effect on same line can still lead to a linenum instr"

This reverts commit 7300edf.
@enebo enebo merged commit 34182c1 into jruby:master Nov 28, 2023
@enebo enebo deleted the less_instrs branch November 28, 2023 20:44
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