remove memory from sod but keep layout

This commit is contained in:
Torsten Ruger 2015-06-19 13:11:40 +03:00
parent 87143091ca
commit a2bfaf1b2c
2 changed files with 12 additions and 1 deletions

View File

@ -18,6 +18,13 @@ require "virtual/passes/get_implementation"
require "virtual/passes/enter_implementation"
require "virtual/passes/frame_implementation"
Sof::Volotile.add(Parfait::Object , [:memory])
Sof::Volotile.add(Parfait::Method , [:memory])
Sof::Volotile.add(Parfait::Class , [:memory])
Sof::Volotile.add(Parfait::Layout , [:memory])
Sof::Volotile.add(Parfait::Space , [:memory])
Sof::Volotile.add(Parfait::Frame , [:memory])
Sof::Volotile.add(Parfait::Message , [:memory])
Sof::Volotile.add(Parfait::BinaryCode , [:memory])
Sof::Volotile.add(Virtual::Block , [:method])
Sof::Volotile.add(Virtual::CompiledMethodInfo , [:current])

View File

@ -38,7 +38,7 @@ end
class Symbol
include Positioned
include Padding
def init_layout; end
def has_layout?
true
@ -109,6 +109,10 @@ module Parfait
def internal_object_set(index , value)
raise "failed init for #{self.class}" unless @memory
@memory[index] = value
#shaddowing layout so we can ignore memory in Sof
if(index == LAYOUT_INDEX)
@layout = value
end
end
def internal_object_grow(length)
old_length = internal_object_length()