add constants automatically
This commit is contained in:
@@ -106,6 +106,7 @@ module Risc
|
|||||||
ins.register.set_compiler(self)
|
ins.register.set_compiler(self)
|
||||||
add_code ins
|
add_code ins
|
||||||
# todo for constants (not objects)
|
# todo for constants (not objects)
|
||||||
|
add_constant( object) if object.is_a?(Parfait::Object)
|
||||||
# add_constant(right) if compiler
|
# add_constant(right) if compiler
|
||||||
ins.register
|
ins.register
|
||||||
end
|
end
|
||||||
|
@@ -32,7 +32,6 @@ module SlotMachine
|
|||||||
# a target (not a label)
|
# a target (not a label)
|
||||||
def to_risc(compiler)
|
def to_risc(compiler)
|
||||||
entry = compiler.load_object(@cache_entry)[:cached_method].to_reg
|
entry = compiler.load_object(@cache_entry)[:cached_method].to_reg
|
||||||
compiler.add_constant( @cache_entry)
|
|
||||||
return_label = Risc.label(self, "continue_#{object_id}")
|
return_label = Risc.label(self, "continue_#{object_id}")
|
||||||
return_address = compiler.load_object(return_label)
|
return_address = compiler.load_object(return_label)
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user