|
@@ -347,17 +347,23 @@ uses
|
|
{ TWasmValueStack }
|
|
{ TWasmValueStack }
|
|
|
|
|
|
function TWasmValueStack.GetItems(AIndex: Integer): TWasmBasicType;
|
|
function TWasmValueStack.GetItems(AIndex: Integer): TWasmBasicType;
|
|
|
|
+ var
|
|
|
|
+ I: Integer;
|
|
begin
|
|
begin
|
|
- if (AIndex<Low(FValStack)) or (AIndex>High(FValStack)) then
|
|
|
|
|
|
+ I:=High(FValStack)-AIndex;
|
|
|
|
+ if (I<Low(FValStack)) or (I>High(FValStack)) then
|
|
internalerror(2024011702);
|
|
internalerror(2024011702);
|
|
- Result:=FValStack[AIndex];
|
|
|
|
|
|
+ Result:=FValStack[I];
|
|
end;
|
|
end;
|
|
|
|
|
|
procedure TWasmValueStack.SetItems(AIndex: Integer; AValue: TWasmBasicType);
|
|
procedure TWasmValueStack.SetItems(AIndex: Integer; AValue: TWasmBasicType);
|
|
|
|
+ var
|
|
|
|
+ I: Integer;
|
|
begin
|
|
begin
|
|
- if (AIndex<Low(FValStack)) or (AIndex>High(FValStack)) then
|
|
|
|
|
|
+ I:=High(FValStack)-AIndex;
|
|
|
|
+ if (I<Low(FValStack)) or (I>High(FValStack)) then
|
|
internalerror(2024011703);
|
|
internalerror(2024011703);
|
|
- FValStack[AIndex]:=AValue;
|
|
|
|
|
|
+ FValStack[I]:=AValue;
|
|
end;
|
|
end;
|
|
|
|
|
|
procedure TWasmValueStack.Push(wbt: TWasmBasicType);
|
|
procedure TWasmValueStack.Push(wbt: TWasmBasicType);
|