[go: up one dir, main page]

New bitwise packet ops cause conflicting declaration errors in GPU compilation

Submitted by Rasmus Munk Larsen @rmlarsen1

Assigned to Nobody

Link to original bugzilla bug (#1636)
Version: 3.4 (development)
Operating system: Linux

Description

Building TensorFlow for CUDA produces several errors of the following form:

... '-std=c++11' -Wno-builtin-macro-redefined '-D__DATE__="redacted"' '-D__TIMESTAMP__="redacted"' '-D__TIME__="redacted"' -fPIE -U_FORTIFY_SOURCE '-D_FORTIFY_SOURCE=1' -fstack-protector -Wall -fno-omit-frame-pointer -no-canonical-prefixes -DNDEBUG -g0 -O2 -ffunction-sections -fdata-sections -w '-march=native' -DEIGEN_AVOID_STL_ARRAY -Iexternal/gemmlowp -Wno-sign-compare -fno-exceptions '-ftemplate-depth=900' '-DGOOGLE_CUDA=1' -msse3 -pthread '-DGOOGLE_CUDA=1' -c tensorflow/core/kernels/data/experimental/unique_dataset_op.cc -o bazel-out/k8-opt/bin/tensorflow/core/kernels/data/experimental/_objs/unique_dataset_op/unique_dataset_op.o)
In file included from /b/f/w/external/eigen_archive/Eigen/Core:150:0,
from external/eigen_archive/unsupported/Eigen/CXX11/Tensor:14,
from ./third_party/eigen3/unsupported/Eigen/CXX11/Tensor:1,
from ./tensorflow/core/framework/tensor_shape.h:21,
from ./tensorflow/core/framework/partial_tensor_shape.h:20,
from ./tensorflow/core/framework/attr_value_util.h:23,
from ./tensorflow/core/framework/dataset.h:23,
from tensorflow/core/kernels/data/experimental/unique_dataset_op.cc:15:
/b/f/w/external/eigen_archive/Eigen/src/Core/GenericPacketMath.h: In instantiation of 'Packet Eigen::internal::por(const Packet&, const Packet&) [with Packet = __vector(2) long long int]':
/b/f/w/external/eigen_archive/Eigen/src/Core/arch/GPU/PacketMathHalf.h:1080:32: required from here
/b/f/w/external/eigen_archive/Eigen/src/Core/GenericPacketMath.h:206:55: error: 'Packet Eigen::internal::por(const Packet&, const Packet&) [with Packet = __vector(2) long long int]' conflicts with a previous declaration
por(const Packet& a, const Packet& b) { return a | b; }
^
In file included from /b/f/w/external/eigen_archive/Eigen/Core:170:0,
from external/eigen_archive/unsupported/Eigen/CXX11/Tensor:14,
from ./third_party/eigen3/unsupported/Eigen/CXX11/Tensor:1,
from ./tensorflow/core/framework/tensor_shape.h:21,
from ./tensorflow/core/framework/partial_tensor_shape.h:20,
from ./tensorflow/core/framework/attr_value_util.h:23,
from ./tensorflow/core/framework/dataset.h:23,
from tensorflow/core/kernels/data/experimental/unique_dataset_op.cc:15:
/b/f/w/external/eigen_archive/Eigen/src/Core/arch/AVX/PacketMath.h:263:41: note: previous declaration 'Packet Eigen::internal::por(const Packet&, const Packet&) [with Packet = __vector(4) long long int]'
template<> EIGEN_STRONG_INLINE Packet8i por<Packet8i>(const Packet8i& a, const Packet8i& b) {
^
In file included from /b/f/w/external/eigen_archive/Eigen/Core:150:0,
from external/eigen_archive/unsupported/Eigen/CXX11/Tensor:14,
from ./third_party/eigen3/unsupported/Eigen/CXX11/Tensor:1,
from ./tensorflow/core/framework/tensor_shape.h:21,
from ./tensorflow/core/framework/partial_tensor_shape.h:20,
from ./tensorflow/core/framework/attr_value_util.h:23,
from ./tensorflow/core/framework/dataset.h:23,
from tensorflow/core/kernels/data/experimental/unique_dataset_op.cc:15:
/b/f/w/external/eigen_archive/Eigen/src/Core/GenericPacketMath.h:206:1: note: -fabi-version=6 (or =0) avoids this error with a change in mangling
por(const Packet& a, const Packet& b) { return a | b; }
^

Edited by Eigen Bugzilla