From f7fd913f53b5e05f2f244863d947f9451ab86389 Mon Sep 17 00:00:00 2001 From: David Abdurachmanov Date: Thu, 12 Nov 2015 03:20:52 -0500 Subject: [PATCH] Use ExtVec on PPC64LE Treat PPC64LE in a same way as ARMv7/ARMv8/MIC architectures. Tested on fc22_ppc64le_gcc493. Signed-off-by: David Abdurachmanov --- DataFormats/Math/interface/ExtVec.h | 4 ++-- DataFormats/Math/interface/SSEVec.h | 2 +- DataFormats/Math/interface/sse_mathfun.h | 2 +- DataFormats/Math/src/SSEVec.cc | 2 +- DataFormats/Math/test/SSEVec_t.cpp | 2 +- DataFormats/Math/test/rdtscp.h | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/DataFormats/Math/interface/ExtVec.h b/DataFormats/Math/interface/ExtVec.h index 49da0f0a5b1a7..500b189873c8c 100644 --- a/DataFormats/Math/interface/ExtVec.h +++ b/DataFormats/Math/interface/ExtVec.h @@ -20,7 +20,7 @@ typedef double VECTOR_EXT( 64 ) float64x8_t; // x86_64. // XXX: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65486 // XXX: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65491 -#if defined(__aarch64__) +#if defined(__aarch64__) || defined(__powerpc64__) || defined(__PPC64__) || defined(__powerpc__) typedef long double VECTOR_EXT( 32 ) float128x2_t; typedef long double VECTOR_EXT( 64 ) float128x4_t; typedef long double VECTOR_EXT( 128 ) float128x8_t; @@ -57,7 +57,7 @@ struct ExtVecTraits { // x86_64. // XXX: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65486 // XXX: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65491 -#if defined(__aarch64__) +#if defined(__aarch64__) || defined(__powerpc64__) || defined(__PPC64__) || defined(__powerpc__) template<> struct ExtVecTraits { typedef long double VECTOR_EXT( 2*sizeof(long double) ) type; diff --git a/DataFormats/Math/interface/SSEVec.h b/DataFormats/Math/interface/SSEVec.h index 75e262fbc0062..fe449e8437e03 100644 --- a/DataFormats/Math/interface/SSEVec.h +++ b/DataFormats/Math/interface/SSEVec.h @@ -1,7 +1,7 @@ #ifndef DataFormat_Math_SSEVec_H #define DataFormat_Math_SSEVec_H -#if !defined(__arm__) && !defined(__aarch64__) && !defined(__MIC__) +#if !defined(__arm__) && !defined(__aarch64__) && !defined(__MIC__) && !defined(__powerpc64__) && !defined(__PPC64__) && !defined(__powerpc__) #if defined(__GNUC__) && (__GNUC__ == 4) && (__GNUC_MINOR__ > 4) #include #define CMS_USE_SSE diff --git a/DataFormats/Math/interface/sse_mathfun.h b/DataFormats/Math/interface/sse_mathfun.h index c3a093469cb03..7d04a57b3c6ce 100644 --- a/DataFormats/Math/interface/sse_mathfun.h +++ b/DataFormats/Math/interface/sse_mathfun.h @@ -1,7 +1,7 @@ #ifndef SSE_MATHFUN_H #define SSE_MATHFUN_H -#if !defined(__arm__) && !defined(__aarch64__) && !defined(__MIC__) +#if !defined(__arm__) && !defined(__aarch64__) && !defined(__MIC__) && !defined(__powerpc64__) && !defined(__PPC64__) && !defined(__powerpc__) #if (defined(__GNUC__) && (__GNUC__ == 4) && (__GNUC_MINOR__ > 4)) || defined(__clang__) #include #define CMS_USE_SSE diff --git a/DataFormats/Math/src/SSEVec.cc b/DataFormats/Math/src/SSEVec.cc index e143e04abe76b..aaf505dff77d1 100644 --- a/DataFormats/Math/src/SSEVec.cc +++ b/DataFormats/Math/src/SSEVec.cc @@ -1,4 +1,4 @@ -#if !defined(__arm__) && !defined(__aarch64__) && !defined(__MIC__) +#if !defined(__arm__) && !defined(__aarch64__) && !defined(__MIC__) && !defined(__powerpc64__) && !defined(__PPC64__) && !defined(__powerpc__) #include "DataFormats/Math/interface/SSEVec.h" #include "DataFormats/Math/interface/SSERot.h" using namespace mathSSE; diff --git a/DataFormats/Math/test/SSEVec_t.cpp b/DataFormats/Math/test/SSEVec_t.cpp index 7ff02299aecd3..e9a321d3a876e 100644 --- a/DataFormats/Math/test/SSEVec_t.cpp +++ b/DataFormats/Math/test/SSEVec_t.cpp @@ -1,4 +1,4 @@ -#if !defined(__arm__) && !defined(__aarch64__) && !defined(__MIC__) +#if !defined(__arm__) && !defined(__aarch64__) && !defined(__MIC__) && !defined(__powerpc64__) && !defined(__PPC64__) && !defined(__powerpc__) #include "DataFormats/Math/interface/SSEVec.h" #include diff --git a/DataFormats/Math/test/rdtscp.h b/DataFormats/Math/test/rdtscp.h index 205cba4bec57a..51b2fee44251f 100644 --- a/DataFormats/Math/test/rdtscp.h +++ b/DataFormats/Math/test/rdtscp.h @@ -1,7 +1,7 @@ #ifndef RDPSCP_H #define RDPSCP_H // performance test -#if !defined(__arm__) && !defined(__aarch64__) +#if !defined(__arm__) && !defined(__aarch64__) && !defined(__powerpc64__) && !defined(__PPC64__) && !defined(__powerpc__) #include #include #ifdef __clang__