putstring unfolds length
which means sys call doesn’t need to and also interpreter sometimes gets a symbol length
This commit is contained in:
@ -5,6 +5,9 @@ module Register
|
||||
def putstring context
|
||||
compiler = Soml::Compiler.new.create_method(:Word , :putstring ).init_method
|
||||
compiler.add_code Register.get_slot( "putstring" , :message , :receiver , :new_message )
|
||||
index = Parfait::Word.get_length_index
|
||||
reg = RegisterValue.new(:r2 , :Integer)
|
||||
compiler.add_code Register.get_slot( "putstring" , :new_message , index , reg )
|
||||
Kernel.emit_syscall( compiler , :putstring )
|
||||
compiler.method
|
||||
end
|
||||
|
Reference in New Issue
Block a user