- fixed register allocation for vector arguments to script functions.

- handle 2D and 3D vectors in SetReturn.
This commit is contained in:
Christoph Oelckers 2016-10-29 13:42:37 +02:00
commit 4dc97a6ed0
3 changed files with 12 additions and 2 deletions

View file

@ -702,7 +702,7 @@ void FFunctionBuildList::Build()
auto flags = item.Func->Variants[0].ArgFlags[i];
// this won't get resolved and won't get emitted. It is only needed so that the code generator can retrieve the necessary info about this argument to do its work.
auto local = new FxLocalVariableDeclaration(type, name, nullptr, flags, FScriptPosition());
local->RegNum = buildit.Registers[type->GetRegType()].Get(1);
local->RegNum = buildit.Registers[type->GetRegType()].Get(type->GetRegCount());
ctx.FunctionArgs.Push(local);
}