[llvm] 370aecb - Revert "[ORC] Add optional context string to duplicate symbol definition errors."
JP Lehr via llvm-commits
llvm-commits at lists.llvm.org
Fri May 9 02:19:29 PDT 2025
Author: JP Lehr
Date: 2025-05-09T04:18:02-05:00
New Revision: 370aecb9572477f7b6bdd6243c80b53f384e0b84
URL: https://github.com/llvm/llvm-project/commit/370aecb9572477f7b6bdd6243c80b53f384e0b84
DIFF: https://github.com/llvm/llvm-project/commit/370aecb9572477f7b6bdd6243c80b53f384e0b84.diff
LOG: Revert "[ORC] Add optional context string to duplicate symbol definition errors."
Broke buildbots: https://lab.llvm.org/buildbot/#/builders/10/builds/5025
This reverts commit b0979b8c65d76cc1897e97b9ad091d8d99abdd18.
Added:
Modified:
llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcError.h
llvm/lib/ExecutionEngine/Orc/Core.cpp
llvm/lib/ExecutionEngine/Orc/Shared/OrcError.cpp
Removed:
llvm/test/ExecutionEngine/JITLink/Generic/Inputs/main-ret-42.ll
llvm/test/ExecutionEngine/JITLink/Generic/duplicate-definition-error.test
################################################################################
diff --git a/llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcError.h b/llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcError.h
index d42fc3e2ef49b..8dffea70e3355 100644
--- a/llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcError.h
+++ b/llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcError.h
@@ -48,16 +48,12 @@ class DuplicateDefinition : public ErrorInfo<DuplicateDefinition> {
public:
static char ID;
- DuplicateDefinition(std::string SymbolName,
- std::optional<std::string> Context = {});
+ DuplicateDefinition(std::string SymbolName);
std::error_code convertToErrorCode() const override;
void log(raw_ostream &OS) const override;
const std::string &getSymbolName() const;
- const std::optional<std::string> &getContext() const;
-
private:
std::string SymbolName;
- std::optional<std::string> Context;
};
class JITSymbolNotFound : public ErrorInfo<JITSymbolNotFound> {
diff --git a/llvm/lib/ExecutionEngine/Orc/Core.cpp b/llvm/lib/ExecutionEngine/Orc/Core.cpp
index 88bdba0ccc642..cbed057950aea 100644
--- a/llvm/lib/ExecutionEngine/Orc/Core.cpp
+++ b/llvm/lib/ExecutionEngine/Orc/Core.cpp
@@ -731,8 +731,7 @@ JITDylib::defineMaterializing(MaterializationResponsibility &FromMR,
Symbols.erase(Symbols.find_as(S));
// FIXME: Return all duplicates.
- return make_error<DuplicateDefinition>(
- std::string(*Name), "defineMaterializing operation");
+ return make_error<DuplicateDefinition>(std::string(*Name));
}
// Otherwise just make a note to discard this symbol after the loop.
@@ -1425,8 +1424,7 @@ Error JITDylib::defineImpl(MaterializationUnit &MU) {
if (!Duplicates.empty()) {
LLVM_DEBUG(
{ dbgs() << " Error: Duplicate symbols " << Duplicates << "\n"; });
- return make_error<DuplicateDefinition>(std::string(**Duplicates.begin()),
- MU.getName().str());
+ return make_error<DuplicateDefinition>(std::string(**Duplicates.begin()));
}
// Discard any overridden defs in this MU.
diff --git a/llvm/lib/ExecutionEngine/Orc/Shared/OrcError.cpp b/llvm/lib/ExecutionEngine/Orc/Shared/OrcError.cpp
index 0612078ee2dd4..ec53338570db2 100644
--- a/llvm/lib/ExecutionEngine/Orc/Shared/OrcError.cpp
+++ b/llvm/lib/ExecutionEngine/Orc/Shared/OrcError.cpp
@@ -86,28 +86,21 @@ std::error_code orcError(OrcErrorCode ErrCode) {
return std::error_code(static_cast<UT>(ErrCode), getOrcErrCat());
}
-DuplicateDefinition::DuplicateDefinition(std::string SymbolName,
- std::optional<std::string> Context)
- : SymbolName(std::move(SymbolName)), Context(std::move(Context)) {}
+DuplicateDefinition::DuplicateDefinition(std::string SymbolName)
+ : SymbolName(std::move(SymbolName)) {}
std::error_code DuplicateDefinition::convertToErrorCode() const {
return orcError(OrcErrorCode::DuplicateDefinition);
}
void DuplicateDefinition::log(raw_ostream &OS) const {
- if (Context)
- OS << "In " << *Context << ", ";
- OS << "duplicate definition of symbol '" << SymbolName << "'";
+ OS << "Duplicate definition of symbol '" << SymbolName << "'";
}
const std::string &DuplicateDefinition::getSymbolName() const {
return SymbolName;
}
-const std::optional<std::string> &DuplicateDefinition::getContext() const {
- return Context;
-}
-
JITSymbolNotFound::JITSymbolNotFound(std::string SymbolName)
: SymbolName(std::move(SymbolName)) {}
diff --git a/llvm/test/ExecutionEngine/JITLink/Generic/Inputs/main-ret-42.ll b/llvm/test/ExecutionEngine/JITLink/Generic/Inputs/main-ret-42.ll
deleted file mode 100644
index ebfdd93fb6f4e..0000000000000
--- a/llvm/test/ExecutionEngine/JITLink/Generic/Inputs/main-ret-42.ll
+++ /dev/null
@@ -1,4 +0,0 @@
-define i32 @main(i32 %argc, i8** %argv) {
-entry:
- ret i32 42
-}
diff --git a/llvm/test/ExecutionEngine/JITLink/Generic/duplicate-definition-error.test b/llvm/test/ExecutionEngine/JITLink/Generic/duplicate-definition-error.test
deleted file mode 100644
index 4b5ac734fb922..0000000000000
--- a/llvm/test/ExecutionEngine/JITLink/Generic/duplicate-definition-error.test
+++ /dev/null
@@ -1,9 +0,0 @@
-# RUN: rm -rf %t && mkdir %t
-# RUN: llc -filetype=obj -o %t/main-ret-0.o %S/Inputs/main-ret-0.ll
-# RUN: llc -filetype=obj -o %T/main-ret-42.o %S/Inputs/main-ret-42.ll
-# RUN: not llvm-jitlink -noexec %T/main-ret-0.o %T/main-ret-42.o 2>&1 | FileCheck %s
-#
-# Trigger a duplicate definition error by trying to link two main functions,
-# check that the error message includes the file that introduced the duplicate.
-#
-# CHECK: In {{.*}}main-ret-42.o, duplicate definition of {{.*}}main
More information about the llvm-commits
mailing list