work on jump insertion continues

Now registering CodeListener instead of PositionListener
Also instead of on the previous, in itself, which is simpler
and allows to react to insertion at end
This commit is contained in:
Torsten Ruger
2018-06-07 19:26:02 +03:00
parent 7fa8397b56
commit 2d218bbc48
5 changed files with 61 additions and 29 deletions

View File

@@ -121,7 +121,8 @@ module Risc
Parfait.object_space.types.values.each do |type|
next unless type.methods
type.methods.each_method do |method|
last_code = CodeListener.init(method.binary , code_start)
last_code = CodeListener.init(method.binary)
last_code.set(code_start)
first_position = InstructionListener.init(method.cpu_instructions, method.binary)
first_position.set( code_start + Parfait::BinaryCode.byte_offset)
last_code.position_listener( prev_code.object) if prev_code