bring the blocks down to mom level
reusing message_setup, but adding yield specific instructions
This commit is contained in:
@ -55,6 +55,7 @@ module Risc
|
||||
name = :word if name == :name
|
||||
name = :message if name == :next_message
|
||||
name = :message if name == :caller
|
||||
name = :named_list if name == :arguments
|
||||
sym = name.to_s.camelise.to_sym
|
||||
clazz = Parfait.object_space.get_class_by_name(sym)
|
||||
raise "Not implemented/found object #{name}:#{sym}" unless clazz
|
||||
|
@ -44,6 +44,14 @@ module Risc
|
||||
attr_reader :register
|
||||
end
|
||||
|
||||
# A Dynamic yield is very much like a DynamicJump, especially in it's idea
|
||||
#
|
||||
# The implentation differes slightly, as we use a chache entry in the DynamicJump
|
||||
# but a block in the DynamicYield.
|
||||
# Using means that we assume the register to be ready loaded with a Block
|
||||
class DynamicYield < DynamicJump
|
||||
end
|
||||
|
||||
class IsZero < Branch
|
||||
end
|
||||
|
||||
|
Reference in New Issue
Block a user