change to_risc and builtin code according to last commit
Wherever space was loaded to get to the next_message we now load the Message factory. Otherwise much the same, only the attribute is next_object, not next_message The binary is growing with 1k objects per factory, so i had to fix (hack) arm to handle bigger constants close #14
This commit is contained in:
@ -63,12 +63,12 @@ module Mom
|
||||
# set the method into the message
|
||||
def build_message_data( builder )
|
||||
builder.build do
|
||||
space? << Parfait.object_space
|
||||
next_message? << space[:next_message]
|
||||
factory? << Parfait.object_space.get_factory_for(:Message)
|
||||
next_message? << factory[:next_object]
|
||||
|
||||
#FIXME in a multithreaded future this should be done using lock free compare and swap.
|
||||
next_message_reg! << next_message[:next_message]
|
||||
space[:next_message] << next_message_reg
|
||||
factory[:next_object] << next_message_reg
|
||||
|
||||
message[:next_message] << next_message
|
||||
next_message[:caller] << message
|
||||
|
@ -26,10 +26,10 @@ module Mom
|
||||
object! << message[:return_value]
|
||||
caller_reg! << message[:caller]
|
||||
caller_reg[:return_value] << object
|
||||
space! << Parfait.object_space
|
||||
next_message! << space[:next_message]
|
||||
factory? << Parfait.object_space.get_factory_for(:Message)
|
||||
next_message! << factory[:next_object]
|
||||
message[:next_message] << next_message
|
||||
space[:next_message] << message
|
||||
factory[:next_object] << message
|
||||
end
|
||||
compiler.reset_regs
|
||||
builder.build do
|
||||
|
Reference in New Issue
Block a user