2015-05-24 17:05:20 +02:00
|
|
|
require "parfait"
|
2015-05-08 14:10:30 +02:00
|
|
|
require "virtual/machine"
|
2015-05-31 17:34:18 +02:00
|
|
|
#if we are in the ruby run-time / generating an executable
|
|
|
|
require "virtual/positioned"
|
2015-06-04 07:22:38 +02:00
|
|
|
require "virtual/padding"
|
2015-05-31 17:34:18 +02:00
|
|
|
require "virtual/parfait_adapter"
|
2015-05-08 14:10:30 +02:00
|
|
|
|
|
|
|
require "virtual/compiler"
|
|
|
|
require "virtual/instruction"
|
2015-05-20 15:43:26 +02:00
|
|
|
require "virtual/compiled_method_info"
|
2015-05-08 14:10:30 +02:00
|
|
|
require "virtual/slots/slot"
|
|
|
|
require "virtual/type"
|
|
|
|
# the passes _are_ order dependant
|
2015-05-30 13:49:47 +02:00
|
|
|
require "virtual/passes/minimizer"
|
2015-05-31 10:07:49 +02:00
|
|
|
require "virtual/passes/collector"
|
2015-05-08 14:10:30 +02:00
|
|
|
require "virtual/passes/send_implementation"
|
|
|
|
require "virtual/passes/get_implementation"
|
|
|
|
require "virtual/passes/enter_implementation"
|
2015-06-21 16:22:51 +02:00
|
|
|
require "virtual/passes/set_optimisation"
|
2015-05-08 14:10:30 +02:00
|
|
|
|
2015-06-19 12:11:40 +02:00
|
|
|
Sof::Volotile.add(Parfait::Object , [:memory])
|
|
|
|
Sof::Volotile.add(Parfait::Method , [:memory])
|
|
|
|
Sof::Volotile.add(Parfait::Class , [:memory])
|
|
|
|
Sof::Volotile.add(Parfait::Layout , [:memory])
|
|
|
|
Sof::Volotile.add(Parfait::Space , [:memory])
|
|
|
|
Sof::Volotile.add(Parfait::Frame , [:memory])
|
|
|
|
Sof::Volotile.add(Parfait::Message , [:memory])
|
2015-06-11 07:05:39 +02:00
|
|
|
Sof::Volotile.add(Parfait::BinaryCode , [:memory])
|
2015-05-08 14:10:30 +02:00
|
|
|
Sof::Volotile.add(Virtual::Block , [:method])
|
2015-05-20 15:43:26 +02:00
|
|
|
Sof::Volotile.add(Virtual::CompiledMethodInfo , [:current])
|
2015-05-29 11:47:49 +02:00
|
|
|
|
|
|
|
class Fixnum
|
|
|
|
def fits_u8?
|
|
|
|
self >= 0 and self <= 255
|
|
|
|
end
|
|
|
|
end
|