Added fibonacci example

This commit is contained in:
Eduard Urbach 2024-07-09 10:28:14 +02:00
parent cbbceedc4d
commit c2b763ab67
Signed by: eduard
GPG key ID: 49226B848C78F6C8
11 changed files with 107 additions and 16 deletions

View file

@ -36,6 +36,7 @@ func (f *Function) ExpressionToRegister(node *expression.Expression, register cp
register = f.cpu.MustFindFree(f.cpu.General)
}
f.cpu.Reserve(register)
err := f.ExpressionToRegister(left, register)
if err != nil {
@ -47,8 +48,8 @@ func (f *Function) ExpressionToRegister(node *expression.Expression, register cp
if register != final {
f.assembler.RegisterRegister(asm.MOVE, final, register)
f.cpu.Free(register)
}
f.cpu.Free(register)
return err
}