Implemented calls using memory addresses
This commit is contained in:
parent
225d78e2d8
commit
acfa6de1d4
8 changed files with 114 additions and 10 deletions
|
@ -75,10 +75,7 @@ func (f *Function) CompileCall(root *expression.Expression) ([]types.Type, error
|
|||
f.Register(asm.CALL, value.Register)
|
||||
|
||||
case *eval.Memory:
|
||||
tmp := f.NewRegister()
|
||||
f.MemoryRegister(asm.LOAD, value.Memory, tmp)
|
||||
f.Register(asm.CALL, tmp)
|
||||
f.FreeRegister(tmp)
|
||||
f.Memory(asm.CALL, value.Memory)
|
||||
}
|
||||
|
||||
return nil, nil
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue