* small optimization in TNewExeOutput.FillImportedNameTable - only add the

library name once, instead of trying to add it (which causes a look up) for
  every imported symbol

git-svn-id: trunk@42612 -
This commit is contained in:
nickysn 2019-08-09 13:35:53 +00:00
parent d5a18f03a8
commit d24cfcb31c

View File

@ -3985,18 +3985,24 @@ cleanup:
ImportLibrary: TImportLibrary;
ImportSymbol: TImportSymbol;
exesym: TExeSymbol;
LibNameAdded: Boolean;
begin
for i:=0 to FImports.Count-1 do
begin
ImportLibrary:=TImportLibrary(FImports[i]);
LibNameAdded:=False;
for j:=0 to ImportLibrary.ImportSymbolList.Count-1 do
begin
ImportSymbol:=TImportSymbol(ImportLibrary.ImportSymbolList[j]);
exesym:=TExeSymbol(ExeSymbolList.Find(ImportSymbol.MangledName));
if assigned(exesym) then
begin
if not LibNameAdded then
begin
ImportedNameTable.AddImportedName(ImportLibrary.Name);
LibNameAdded:=True;
end;
if (ImportSymbol.OrdNr=0) and (ImportSymbol.Name<>'') then
ImportedNameTable.AddImportedName(ImportSymbol.Name);
end;