diff options
author | Jacek Caban <jacek@codeweavers.com> | 2024-03-27 11:41:02 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-27 11:41:02 +0100 |
commit | c9d12664f2f967ec170ed16d9a57af2f48e832c8 (patch) | |
tree | 5b110974fd374b7a8315f4ebd52c96c832987278 /llvm/lib/Object/COFFImportFile.cpp | |
parent | cc23ee8250c2eda3f28c4d25c412e68ec78ecbe1 (diff) | |
download | llvm-c9d12664f2f967ec170ed16d9a57af2f48e832c8.zip llvm-c9d12664f2f967ec170ed16d9a57af2f48e832c8.tar.gz llvm-c9d12664f2f967ec170ed16d9a57af2f48e832c8.tar.bz2 |
[llvm-dlltool][llvm-lib][COFF] Don't override NONAME exports with demangled ARM64EC symbols. (#86722)
Diffstat (limited to 'llvm/lib/Object/COFFImportFile.cpp')
-rw-r--r-- | llvm/lib/Object/COFFImportFile.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Object/COFFImportFile.cpp b/llvm/lib/Object/COFFImportFile.cpp index 8224a14..477c5bf 100644 --- a/llvm/lib/Object/COFFImportFile.cpp +++ b/llvm/lib/Object/COFFImportFile.cpp @@ -690,12 +690,12 @@ Error writeImportLibrary(StringRef ImportName, StringRef Path, if (ImportType == IMPORT_CODE && isArm64EC(M)) { if (std::optional<std::string> MangledName = getArm64ECMangledFunctionName(Name)) { - if (ExportName.empty()) { + if (!E.Noname && ExportName.empty()) { NameType = IMPORT_NAME_EXPORTAS; ExportName.swap(Name); } Name = std::move(*MangledName); - } else if (ExportName.empty()) { + } else if (!E.Noname && ExportName.empty()) { NameType = IMPORT_NAME_EXPORTAS; ExportName = std::move(*getArm64ECDemangledFunctionName(Name)); } |