From d24cfcb31c283c66bb67c2d57e6be8d6e1fba971 Mon Sep 17 00:00:00 2001 From: nickysn Date: Fri, 9 Aug 2019 13:35:53 +0000 Subject: [PATCH] * 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 - --- compiler/ogomf.pas | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/compiler/ogomf.pas b/compiler/ogomf.pas index 4ef239d359..8c900019ac 100644 --- a/compiler/ogomf.pas +++ b/compiler/ogomf.pas @@ -3985,10 +3985,12 @@ 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 @@ -3996,7 +3998,11 @@ cleanup: exesym:=TExeSymbol(ExeSymbolList.Find(ImportSymbol.MangledName)); if assigned(exesym) then begin - ImportedNameTable.AddImportedName(ImportLibrary.Name); + 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;