* don't reserve bss data for wasm global vars

This commit is contained in:
Nikolay Nikolov 2022-07-25 01:17:28 +03:00
parent 8d441929a8
commit 90b8b9d121

View File

@ -26,7 +26,8 @@ unit nwasmutil;
interface
uses
ngenutil;
ngenutil,
symsym;
type
@ -34,6 +35,7 @@ interface
twasmnodeutils = class(tnodeutils)
public
class procedure insertbssdata(sym : tstaticvarsym); override;
class procedure InsertObjectInfo; override;
end;
@ -44,11 +46,22 @@ implementation
cpubase,
aasmbase,aasmdata,aasmtai,aasmcpu,
hlcgobj,hlcgcpu,
symdef,symtype,symconst,
symdef,symtype,symconst,symcpu,
fmodule;
{ twasmnodeutils }
class procedure twasmnodeutils.insertbssdata(sym: tstaticvarsym);
var
symcpu: tcpustaticvarsym;
begin
symcpu:=tcpustaticvarsym(sym);
if symcpu.is_wasm_global then
// don't reserve bss data for wasm global vars
else
inherited;
end;
class procedure twasmnodeutils.InsertObjectInfo;
procedure WriteImportDll(list: TAsmList; proc: tprocdef);