remove unused methods
and a whole lot more index fixes
This commit is contained in:
@ -129,7 +129,7 @@ module Risc
|
||||
{ Word: {char_length: :Integer} ,
|
||||
List: {indexed_length: :Integer} ,
|
||||
Message: { next_message: :Message, receiver: :Object, frame: :NamedList ,
|
||||
return_address: :Integer, return_value: :Integer,
|
||||
return_address: :Integer, return_value: :Object,
|
||||
caller: :Message , name: :Word , arguments: :NamedList },
|
||||
Integer: {next_integer: :Integer},
|
||||
DataObject: {},
|
||||
|
@ -4,7 +4,7 @@ module Risc
|
||||
module CompileHelper
|
||||
|
||||
def compiler_for( type , method_name , arguments , locals = {})
|
||||
frame = Parfait::NamedList.type_for( locals ) #TODO fix locals passing/ using in builtin
|
||||
frame = Parfait::NamedList.type_for( locals )
|
||||
args = Parfait::NamedList.type_for( arguments )
|
||||
Risc::MethodCompiler.create_method(type , method_name , args, frame )
|
||||
end
|
||||
|
@ -22,7 +22,7 @@ module Risc
|
||||
@array = array
|
||||
@index = index
|
||||
@register = register
|
||||
raise "index 0 " if index == 0
|
||||
raise "index #{index}" if index.is_a?(Numeric) and index < 0
|
||||
raise "Not integer or reg #{index}" unless index.is_a?(Numeric) or RiscValue.look_like_reg(index)
|
||||
raise "Not register #{register}" unless RiscValue.look_like_reg(register)
|
||||
raise "Not register #{array}" unless RiscValue.look_like_reg(array)
|
||||
|
@ -18,14 +18,9 @@ module Risc
|
||||
# (which are precisely the symbols :message or :new_message. or a register)
|
||||
# index resolves with resolve_to_index.
|
||||
def self.reg_to_slot( source , from_reg , to , index )
|
||||
no_rec = index != :receiver
|
||||
puts "FROM #{from_reg}"
|
||||
puts "TO #{to}"
|
||||
puts "IN #{index}"
|
||||
from = resolve_to_register from_reg
|
||||
index = resolve_to_index( to , index)
|
||||
to = resolve_to_register to
|
||||
# raise "HALLO " if index == 2 and no_rec
|
||||
RegToSlot.new( source, from , to , index)
|
||||
end
|
||||
|
||||
|
Reference in New Issue
Block a user