set label integer to position
This commit is contained in:
parent
8322fca7b3
commit
296617cbaf
@ -24,6 +24,7 @@ module Risc
|
||||
end
|
||||
def init(at, binary)
|
||||
@binary = binary
|
||||
instruction.integer.set_value(at) if instruction.is_a?(Label)
|
||||
return if at == 0 and binary.nil?
|
||||
raise "faux pas" if at < Position.get(binary).at
|
||||
return unless @instruction.next
|
||||
|
@ -14,6 +14,15 @@ module Risc
|
||||
pos = Position.set( @label , 8 , @binary)
|
||||
assert_equal InstructionPosition , pos.class
|
||||
end
|
||||
def test_label_set_int
|
||||
Position.set( @label , 8 , @binary)
|
||||
assert_equal 8 , @label.integer.value
|
||||
end
|
||||
def test_label_reset_int
|
||||
Position.set( @label , 8 , @binary)
|
||||
Position.set( @label , 18 , @binary)
|
||||
assert_equal 18 , @label.integer.value
|
||||
end
|
||||
def test_ins_propagates
|
||||
@label.set_next Arm::ArmMachine.b( @label)
|
||||
Position.set( @label , 8 , @binary)
|
||||
|
Loading…
Reference in New Issue
Block a user