31 lines
1.2 KiB
Diff
31 lines
1.2 KiB
Diff
From a2449cee8c995b56f1892502aab3dfad3d6f3ca1 Mon Sep 17 00:00:00 2001
|
|
From: Tulio Magno Quites Machado Filho <tuliom@redhat.com>
|
|
Date: Fri, 8 Sep 2023 11:45:34 -0300
|
|
Subject: [PATCH] Workaround a bug in ORC on ppc64le
|
|
|
|
The Jit code appears to be returning the wrong printf symbol on ppc64le
|
|
after the transition of the default long double to IEEE 128-bit floating
|
|
point.
|
|
---
|
|
clang/unittests/Interpreter/InterpreterTest.cpp | 4 +++-
|
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/clang/unittests/Interpreter/InterpreterTest.cpp b/clang/unittests/Interpreter/InterpreterTest.cpp
|
|
index abb8e6377aab..7b6697ebc6ed 100644
|
|
--- a/clang/unittests/Interpreter/InterpreterTest.cpp
|
|
+++ b/clang/unittests/Interpreter/InterpreterTest.cpp
|
|
@@ -243,7 +243,9 @@ TEST(IncrementalProcessing, FindMangledNameSymbol) {
|
|
EXPECT_FALSE(!Addr);
|
|
|
|
// FIXME: Re-enable when we investigate the way we handle dllimports on Win.
|
|
-#ifndef _WIN32
|
|
+ // FIXME: The printf symbol returned from the Jit may not be correct on
|
|
+ // ppc64le when the default long double is IEEE 128-bit fp.
|
|
+#if !defined _WIN32 && !(defined __PPC64__ && defined __LITTLE_ENDIAN__)
|
|
EXPECT_EQ((uintptr_t)&printf, Addr->getValue());
|
|
#endif // _WIN32
|
|
}
|
|
--
|
|
2.41.0
|
|
|