- cleaned out a large part of unused methods from VMValue.

- keep string registers which are being used as function parameters allocated until after the function call returns. This is for allowing to pass strings by reference which would avoid some costly constructor/destructor loops in the call instruction.
This commit is contained in:
Christoph Oelckers 2017-03-19 21:25:30 +01:00
commit 403c5693a9
4 changed files with 29 additions and 194 deletions

View file

@ -407,7 +407,6 @@ class FxClassDefaults : public FxExpression
public:
FxClassDefaults(FxExpression *, const FScriptPosition &);
~FxClassDefaults();
PPrototype *ReturnProto();
FxExpression *Resolve(FCompileContext&);
ExpEmit Emit(VMFunctionBuilder *build);
};
@ -1704,8 +1703,9 @@ class FxVMFunctionCall : public FxExpression
{
friend class FxMultiAssign;
bool EmitTail;
bool EmitTail = false;
bool NoVirtual;
bool hasStringArgs = false;
FxExpression *Self;
PFunction *Function;
FArgumentList ArgList;