assemble risc to it's position (not itself)

So in the next step the interpreter can use positions as program counter
and would be much more like the real thing
This commit is contained in:
Torsten Ruger
2018-05-17 09:49:01 +03:00
parent 49c4d170ce
commit 37d62d298e
6 changed files with 15 additions and 34 deletions

View File

@ -22,15 +22,5 @@ module Risc
produced = produce_body
assert_equal 5 , produced.constant.value
end
def pest_cache_check
produced = produce_body
assert_equal NotSame , produced.next(3).class
assert_equal produced.next(34) , produced.next(3).label
end
def pest_check_resolve
produced = produce_body
assert_equal FunctionCall , produced.next(30).class
assert_equal :resolve_method ,produced.next(30).method.name
end
end
end

View File

@ -49,10 +49,6 @@ module Risc
assert_equal Risc::LoadConstant , produced.next(38).class
assert_equal Parfait::NilClass , produced.next(38).constant.class
end
def pest_nil_check
produced = produce_body
assert_equal produced.next(13) , produced.next(8).label
end
def test_back_jump # should jump back to condition label
produced = produce_body
@ -60,11 +56,5 @@ module Risc
assert_equal produced , produced.next(44).label
end
def test_merge_label
produced = produce_body
assert_equal Risc::Label , produced.next(45).class
assert produced.next(45).name.start_with?("merge_") , produced.next(29).name
end
end
end