Commit 17fe99fa authored by Hongxu Jia's avatar Hongxu Jia
Browse files

tensorflow: fix GCC 10.1 compile error

Since python3-numpy: update 1.18.5 -> 1.19.0, there is
a  GCC 10.1 compile error. Backport a patch from upstream
to fix it [1]

[1] https://github.com/tensorflow/tensorflow/pull/40654

Signed-off-by: default avatarHongxu Jia <hongxu.jia@windriver.com>
No related merge requests found
Showing with 53 additions and 0 deletions
+53 -0
From 75ea0b31477d6ba9e990e296bbbd8ca4e7eebadf Mon Sep 17 00:00:00 2001
From: Christian Sigg <csigg@google.com>
Date: Fri, 26 Jun 2020 05:08:10 -0700
Subject: [PATCH] Provide overload to cope with const-ness change of NumPy's
PyUFuncGenericFunction.
See https://github.com/tensorflow/tensorflow/issues/40688, https://github.com/tensorflow/tensorflow/pull/40654.
PiperOrigin-RevId: 318452381
Change-Id: Icc5152f2b020ef19882a49e3c86ac80bbe048d64
Upstream-Status: Backport
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
tensorflow/python/lib/core/bfloat16.cc | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/tensorflow/python/lib/core/bfloat16.cc b/tensorflow/python/lib/core/bfloat16.cc
index feb01f11a1..bb6b720feb 100644
--- a/tensorflow/python/lib/core/bfloat16.cc
+++ b/tensorflow/python/lib/core/bfloat16.cc
@@ -517,7 +517,7 @@ bool RegisterBfloat16Cast(int numpy_type, bool cast_is_safe) {
}
template <typename InType, typename OutType, typename Functor>
-void BinaryUFunc(char** args, npy_intp* dimensions, npy_intp* steps,
+void BinaryUFunc(char** args, const npy_intp* dimensions, const npy_intp* steps,
void* data) {
const char* i0 = args[0];
const char* i1 = args[1];
@@ -532,11 +532,17 @@ void BinaryUFunc(char** args, npy_intp* dimensions, npy_intp* steps,
}
}
+// Numpy changed const-ness of PyUFuncGenericFunction, provide overload.
template <typename Functor>
void CompareUFunc(char** args, npy_intp* dimensions, npy_intp* steps,
void* data) {
BinaryUFunc<bfloat16, npy_bool, Functor>(args, dimensions, steps, data);
}
+template <typename Functor>
+void CompareUFunc(char** args, const npy_intp* dimensions,
+ const npy_intp* steps, void* data) {
+ BinaryUFunc<bfloat16, npy_bool, Functor>(args, dimensions, steps, data);
+}
struct Bfloat16EqFunctor {
npy_bool operator()(bfloat16 a, bfloat16 b) { return a == b; }
--
2.21.0
......@@ -12,6 +12,7 @@ SRC_URI = "git://github.com/tensorflow/tensorflow.git;branch=r1.13 \
file://0001-Fix-TensorFlow-on-Python-3.8-logger-issue.patch \
file://0001-Rename-gettid-functions.patch \
file://0001-third_party-eigen_archive-workaround-ice-failure-whi.patch \
file://0001-Provide-overload-to-cope-with-const-ness-change-of-N.patch \
"
S = "${WORKDIR}/git"
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment