adds value to used regs and test for it

This commit is contained in:
Torsten Ruger
2015-10-15 09:07:47 +03:00
parent 300ce24739
commit e436581ce8
5 changed files with 9 additions and 14 deletions

View File

@ -29,11 +29,11 @@ module Phisol
end
# require a (temporary) register. code must give this back with release_reg
def use_reg type
def use_reg type , value = nil
if @regs.empty?
reg = Register.tmp_reg type
reg = Register.tmp_reg(type , value)
else
reg = @regs.last.next_reg_use type
reg = @regs.last.next_reg_use(type , value)
end
@regs << reg
return reg

View File

@ -13,7 +13,7 @@ module Phisol
def on_int statement
int = statement.first
reg = use_reg :int
reg = use_reg :Integer , int
@method.source.add_code Register::LoadConstant.new( statement, int , reg )
return reg
end