rubyx/lib/mom/instruction/instruction.rb
Torsten Ruger 16c8fcbf66 first local assignment risc test
comes with casualties
slot_load needs more work
2018-03-17 11:13:44 +05:30

38 lines
825 B
Ruby

module Mom
# Base class for MOM instructions
class Instruction
include Common::List
def to_risc(m)
Risc::Label.new(self.class.name, self.class.name + "_todo")
end
# implement flatten as noop to avoid condition
def flatten( options = {} )
return self
end
end
# A label with a name
class Label < Instruction
attr_reader :name
def initialize(name)
@name = name
end
def to_risc(compiler)
Risc::Label.new(self,name)
end
end
end
require_relative "basic_values"
require_relative "simple_call"
require_relative "dynamic_call"
require_relative "truth_check"
require_relative "not_same_check"
require_relative "jump"
require_relative "slot_load"
require_relative "return_sequence"
require_relative "message_setup"
require_relative "argument_transfer"