Properly align the input data to prevent false failures of the packetmath.cpp test.

This commit is contained in:
Benoit Steiner 2014-03-28 12:00:08 -07:00
parent 10aa14592a
commit 39bfbd43f0

View File

@ -362,12 +362,12 @@ template<typename Scalar> void packetmath_scatter_gather() {
typedef typename internal::packet_traits<Scalar>::type Packet; typedef typename internal::packet_traits<Scalar>::type Packet;
typedef typename NumTraits<Scalar>::Real RealScalar; typedef typename NumTraits<Scalar>::Real RealScalar;
const int PacketSize = internal::packet_traits<Scalar>::size; const int PacketSize = internal::packet_traits<Scalar>::size;
Scalar data1[PacketSize]; EIGEN_ALIGN_DEFAULT Scalar data1[PacketSize];
RealScalar refvalue = 0; RealScalar refvalue = 0;
for (int i=0; i<PacketSize; ++i) { for (int i=0; i<PacketSize; ++i) {
data1[i] = internal::random<Scalar>()/RealScalar(PacketSize); data1[i] = internal::random<Scalar>()/RealScalar(PacketSize);
} }
Scalar buffer[PacketSize*11]; EIGEN_ALIGN_DEFAULT Scalar buffer[PacketSize*11];
memset(buffer, 0, 11*sizeof(Packet)); memset(buffer, 0, 11*sizeof(Packet));
Packet packet = internal::pload<Packet>(data1); Packet packet = internal::pload<Packet>(data1);
internal::pscatter<Scalar, Packet>(buffer, packet, 11); internal::pscatter<Scalar, Packet>(buffer, packet, 11);