unlinking the objects collection from the machine

passing it around instead
This commit is contained in:
Torsten Ruger
2016-12-31 18:46:17 +02:00
parent b094bcc64f
commit 113b349af5
7 changed files with 37 additions and 33 deletions

View File

@ -6,9 +6,9 @@ class HelloTest < MiniTest::Test
def check
machine = Register.machine.boot
Typed.compile( @input )
machine.collect_space
objects = machine.collect_space
machine.translate_arm
writer = Elf::ObjectWriter.new
writer = Elf::ObjectWriter.new(machine , objects )
writer.save "test/hello.o"
end

View File

@ -10,7 +10,7 @@ class TestZeroCode < MiniTest::Test
type.remove_method(method) unless keeper(method)
end
end
@machine.collect_space
@objects = @machine.collect_space
end
def keeper name
name == :main or name == :__init__
@ -19,13 +19,13 @@ class TestZeroCode < MiniTest::Test
def test_empty_translate
assert_equal 2 , @space.collect_methods.length
@machine.translate_arm
writer = Elf::ObjectWriter.new
writer = Elf::ObjectWriter.new(@machine , @objects )
writer.save "test/zero.o"
end
def test_methods_match_objects
assert_equal 2 , @space.collect_methods.length
@machine.objects.each do |id , objekt|
@objects.each do |id , objekt|
next unless objekt.is_a? Parfait::TypedMethod
assert keeper(objekt.name) , "CODE1 #{objekt.name}"
end