|
@@ -78,6 +78,8 @@ unit tgcpu;
|
|
procedure gethltemp(list: TAsmList; def: tdef; forcesize: asizeint; temptype: ttemptype; out ref: treference); override;
|
|
procedure gethltemp(list: TAsmList; def: tdef; forcesize: asizeint; temptype: ttemptype; out ref: treference); override;
|
|
procedure gethltempmanaged(list: TAsmList; def: tdef; temptype: ttemptype; out ref: treference); override;
|
|
procedure gethltempmanaged(list: TAsmList; def: tdef; temptype: ttemptype; out ref: treference); override;
|
|
procedure ungettemp(list: TAsmList; const ref : treference); override;
|
|
procedure ungettemp(list: TAsmList; const ref : treference); override;
|
|
|
|
+ procedure allocframepointer(list: TAsmList; out ref: treference);
|
|
|
|
+ procedure allocbasepointer(list: TAsmList; out ref: treference);
|
|
end;
|
|
end;
|
|
|
|
|
|
function defToWasmBasic(def: tdef; var wbt: TWasmBasicType): Boolean;
|
|
function defToWasmBasic(def: tdef; var wbt: TWasmBasicType): Boolean;
|
|
@@ -197,6 +199,16 @@ unit tgcpu;
|
|
inherited;
|
|
inherited;
|
|
end;
|
|
end;
|
|
|
|
|
|
|
|
+ procedure ttgwasm.allocframepointer(list: TAsmList; out ref: treference);
|
|
|
|
+ begin
|
|
|
|
+ allocLocalVarToRef(wbt_i32,ref);
|
|
|
|
+ end;
|
|
|
|
+
|
|
|
|
+ procedure ttgwasm.allocbasepointer(list: TAsmList; out ref: treference);
|
|
|
|
+ begin
|
|
|
|
+ allocLocalVarToRef(wbt_i32,ref);
|
|
|
|
+ end;
|
|
|
|
+
|
|
procedure ttgwasm.allocLocalVarToRef(wbt: TWasmBasicType; out ref: treference);
|
|
procedure ttgwasm.allocLocalVarToRef(wbt: TWasmBasicType; out ref: treference);
|
|
var
|
|
var
|
|
idx : integer;
|
|
idx : integer;
|