Merge pull request #22 from xianyi/develop

rebase
This commit is contained in:
Martin Kroeker 2021-04-03 21:58:36 +02:00 committed by GitHub
commit 0492f0f3f9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 70 additions and 36 deletions

View File

@ -224,7 +224,16 @@ matrix:
before_script: before_script:
- COMMON_FLAGS="DYNAMIC_ARCH=1 NUM_THREADS=32" - COMMON_FLAGS="DYNAMIC_ARCH=1 NUM_THREADS=32"
- brew update - brew update
- brew install gcc@10 script:
- travis_wait 45 make QUIET_MAKE=1 $COMMON_FLAGS $BTYPE
env:
- BTYPE="TARGET=HASWELL USE_OPENMP=1 BINARY=64 INTERFACE64=1 CC=gcc-10 FC=gfortran-10"
- <<: *test-macos
osx_image: xcode12
before_script:
- COMMON_FLAGS="DYNAMIC_ARCH=1 NUM_THREADS=32"
- brew update
script: script:
- travis_wait 45 make QUIET_MAKE=1 $COMMON_FLAGS $BTYPE - travis_wait 45 make QUIET_MAKE=1 $COMMON_FLAGS $BTYPE
env: env:

View File

@ -68,4 +68,13 @@ jobs:
dir dir
openblas_utest.exe openblas_utest.exe
- job: OSX_OpenMP
pool:
vmImage: 'macOS-10.15'
steps:
- script: |
brew update
make TARGET=CORE2 DYNAMIC_ARCH=1 USE_OPENMP=1 CC=gcc-10 FC=gfortran-10

View File

@ -3,6 +3,8 @@
#include <time.h> #include <time.h>
#ifdef __CYGWIN32__ #ifdef __CYGWIN32__
#include <sys/time.h> #include <sys/time.h>
#elif defined(__APPLE__)
#include <mach/mach_time.h>
#endif #endif
#include "common.h" #include "common.h"

View File

@ -271,11 +271,6 @@ All rights reserved.
ldr s2, [A03] ldr s2, [A03]
ldr s3, [A04] ldr s3, [A04]
add A01, A01, #4
add A02, A02, #4
add A03, A03, #4
add A04, A04, #4
stp s0, s1, [B04] stp s0, s1, [B04]
add B04, B04, #8 add B04, B04, #8
stp s2, s3, [B04] stp s2, s3, [B04]
@ -286,11 +281,6 @@ All rights reserved.
ldr s6, [A07] ldr s6, [A07]
ldr s7, [A08] ldr s7, [A08]
ldr d4, [A05], #8
ldr d5, [A06], #8
ldr d6, [A07], #8
ldr d7, [A08], #8
stp s4, s5, [B04] stp s4, s5, [B04]
add B04, B04, #8 add B04, B04, #8
stp s6, s7, [B04] stp s6, s7, [B04]

View File

@ -28,7 +28,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#else #else
#include "common.h" #include "common.h"
#if defined(POWER10) #if defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
#include "cdot_microk_power10.c" #include "cdot_microk_power10.c"
#else #else
#ifndef HAVE_KERNEL_8 #ifndef HAVE_KERNEL_8
@ -120,7 +120,7 @@ OPENBLAS_COMPLEX_FLOAT CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x, FLOAT *y, BLA
if ((inc_x == 1) && (inc_y == 1)) { if ((inc_x == 1) && (inc_y == 1)) {
#if defined(POWER10) #if defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
BLASLONG n1 = n & -16; BLASLONG n1 = n & -16;
#else #else
BLASLONG n1 = n & -8; BLASLONG n1 = n & -8;

View File

@ -39,8 +39,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#if defined(__VEC__) || defined(__ALTIVEC__) #if defined(__VEC__) || defined(__ALTIVEC__)
#if defined(POWER8) || defined(POWER9) #if defined(POWER8) || defined(POWER9)
#include "cswap_microk_power8.c" #include "cswap_microk_power8.c"
#elif defined(POWER10) #elif defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
#include "cswap_microk_power10.c" #include "cswap_microk_power10.c"
#elif defined(POWER10)
#include "cswap_microk_power8.c"
#endif #endif
#endif #endif

View File

@ -49,8 +49,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#if defined(__VEC__) || defined(__ALTIVEC__) #if defined(__VEC__) || defined(__ALTIVEC__)
#if defined(POWER8) || defined(POWER9) #if defined(POWER8) || defined(POWER9)
#include "dasum_microk_power8.c" #include "dasum_microk_power8.c"
#elif defined(POWER10) #elif defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
#include "dasum_microk_power10.c" #include "dasum_microk_power10.c"
#elif defined(POWER10)
#include "dasum_microk_power8.c"
#endif #endif
#endif #endif
@ -112,7 +114,7 @@ FLOAT CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x)
if ( inc_x == 1 ) if ( inc_x == 1 )
{ {
#if defined(POWER10) #if defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
if ( n >= 16 ) if ( n >= 16 )
{ {
BLASLONG align = ((32 - ((uintptr_t)x & (uintptr_t)0x1F)) >> 3) & 0x3; BLASLONG align = ((32 - ((uintptr_t)x & (uintptr_t)0x1F)) >> 3) & 0x3;

View File

@ -42,8 +42,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#if defined(__VEC__) || defined(__ALTIVEC__) #if defined(__VEC__) || defined(__ALTIVEC__)
#if defined(POWER8) || defined(POWER9) #if defined(POWER8) || defined(POWER9)
#include "drot_microk_power8.c" #include "drot_microk_power8.c"
#elif defined(POWER10) #elif defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
#include "drot_microk_power10.c" #include "drot_microk_power10.c"
#elif defined(POWER10)
#include "drot_microk_power8.c"
#endif #endif
#endif #endif
@ -117,7 +119,7 @@ int CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x, FLOAT *y, BLASLONG inc_y, FLOAT
if ( (inc_x == 1) && (inc_y == 1) ) if ( (inc_x == 1) && (inc_y == 1) )
{ {
#if defined(POWER10) #if defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
if ( n >= 16 ) if ( n >= 16 )
{ {
BLASLONG align = ((32 - ((uintptr_t)y & (uintptr_t)0x1F)) >> 3) & 0x3; BLASLONG align = ((32 - ((uintptr_t)y & (uintptr_t)0x1F)) >> 3) & 0x3;

View File

@ -38,8 +38,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#if defined(__VEC__) || defined(__ALTIVEC__) #if defined(__VEC__) || defined(__ALTIVEC__)
#if defined(POWER8) || defined(POWER9) #if defined(POWER8) || defined(POWER9)
#include "dscal_microk_power8.c" #include "dscal_microk_power8.c"
#elif defined(POWER10) #elif defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
#include "dscal_microk_power10.c" #include "dscal_microk_power10.c"
#elif defined(POWER10)
#include "dscal_microk_power8.c"
#endif #endif
#endif #endif
@ -102,7 +104,7 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da, FLOAT *x, BLAS
if ( da == 0.0 ) if ( da == 0.0 )
{ {
#if defined(POWER10) #if defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
if ( n >= 16 ) if ( n >= 16 )
{ {
BLASLONG align = ((32 - ((uintptr_t)x & (uintptr_t)0x1F)) >> 3) & 0x3; BLASLONG align = ((32 - ((uintptr_t)x & (uintptr_t)0x1F)) >> 3) & 0x3;
@ -136,7 +138,7 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da, FLOAT *x, BLAS
else else
{ {
#if defined(POWER10) #if defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
if ( n >= 16 ) if ( n >= 16 )
{ {
BLASLONG align = ((32 - ((uintptr_t)x & (uintptr_t)0x1F)) >> 3) & 0x3; BLASLONG align = ((32 - ((uintptr_t)x & (uintptr_t)0x1F)) >> 3) & 0x3;

View File

@ -38,8 +38,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#if defined(__VEC__) || defined(__ALTIVEC__) #if defined(__VEC__) || defined(__ALTIVEC__)
#if defined(POWER8) || defined(POWER9) #if defined(POWER8) || defined(POWER9)
#include "dswap_microk_power8.c" #include "dswap_microk_power8.c"
#elif defined(POWER10) #elif defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
#include "swap_microk_power10.c" #include "swap_microk_power10.c"
#elif defined(POWER10)
#include "dswap_microk_power8.c"
#endif #endif
#endif #endif
@ -117,7 +119,7 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT dummy3, FLOAT *x,
if ( (inc_x == 1) && (inc_y == 1 )) if ( (inc_x == 1) && (inc_y == 1 ))
{ {
#if defined(POWER10) #if defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
if ( n >= 32 ) if ( n >= 32 )
{ {
BLASLONG align = ((32 - ((uintptr_t)y & (uintptr_t)0x1F)) >> 3) & 0x3; BLASLONG align = ((32 - ((uintptr_t)y & (uintptr_t)0x1F)) >> 3) & 0x3;

View File

@ -49,8 +49,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#if defined(__VEC__) || defined(__ALTIVEC__) #if defined(__VEC__) || defined(__ALTIVEC__)
#if defined(POWER8) || defined(POWER9) #if defined(POWER8) || defined(POWER9)
#include "sasum_microk_power8.c" #include "sasum_microk_power8.c"
#elif defined(POWER10) #elif defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
#include "sasum_microk_power10.c" #include "sasum_microk_power10.c"
#elif defined(POWER10)
#include "sasum_microk_power8.c"
#endif #endif
#endif #endif
@ -112,7 +114,7 @@ FLOAT CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x)
if ( inc_x == 1 ) if ( inc_x == 1 )
{ {
#if defined(POWER10) #if defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
if ( n >= 32 ) if ( n >= 32 )
{ {
BLASLONG align = ((32 - ((uintptr_t)x & (uintptr_t)0x1F)) >> 2) & 0x7; BLASLONG align = ((32 - ((uintptr_t)x & (uintptr_t)0x1F)) >> 2) & 0x7;

View File

@ -42,8 +42,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#if defined(__VEC__) || defined(__ALTIVEC__) #if defined(__VEC__) || defined(__ALTIVEC__)
#if defined(POWER8) || defined(POWER9) #if defined(POWER8) || defined(POWER9)
#include "srot_microk_power8.c" #include "srot_microk_power8.c"
#elif defined(POWER10) #elif defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
#include "srot_microk_power10.c" #include "srot_microk_power10.c"
#elif defined(POWER10)
#include "srot_microk_power8.c"
#endif #endif
#endif #endif
@ -117,7 +119,7 @@ int CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x, FLOAT *y, BLASLONG inc_y, FLOAT
if ( (inc_x == 1) && (inc_y == 1) ) if ( (inc_x == 1) && (inc_y == 1) )
{ {
#if defined(POWER10) #if defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
if ( n >= 16 ) if ( n >= 16 )
{ {
BLASLONG align = ((32 - ((uintptr_t)y & (uintptr_t)0x1F)) >> 2) & 0x7; BLASLONG align = ((32 - ((uintptr_t)y & (uintptr_t)0x1F)) >> 2) & 0x7;

View File

@ -38,8 +38,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#if defined(__VEC__) || defined(__ALTIVEC__) #if defined(__VEC__) || defined(__ALTIVEC__)
#if defined(POWER8) || defined(POWER9) #if defined(POWER8) || defined(POWER9)
#include "sscal_microk_power8.c" #include "sscal_microk_power8.c"
#elif defined(POWER10) #elif defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
#include "sscal_microk_power10.c" #include "sscal_microk_power10.c"
#elif defined(POWER10)
#include "sscal_microk_power8.c"
#endif #endif
#endif #endif
@ -104,7 +106,7 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da, FLOAT *x, BLAS
if ( da == 0.0 ) if ( da == 0.0 )
{ {
#if defined(POWER10) #if defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
if ( n >= 32 ) if ( n >= 32 )
{ {
BLASLONG align = ((32 - ((uintptr_t)x & (uintptr_t)0x1F)) >> 2) & 0x7; BLASLONG align = ((32 - ((uintptr_t)x & (uintptr_t)0x1F)) >> 2) & 0x7;
@ -138,7 +140,7 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT da, FLOAT *x, BLAS
else else
{ {
#if defined(POWER10) #if defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
if ( n >= 32 ) if ( n >= 32 )
{ {
BLASLONG align = ((32 - ((uintptr_t)x & (uintptr_t)0x1F)) >> 2) & 0x7; BLASLONG align = ((32 - ((uintptr_t)x & (uintptr_t)0x1F)) >> 2) & 0x7;

View File

@ -38,8 +38,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#if defined(__VEC__) || defined(__ALTIVEC__) #if defined(__VEC__) || defined(__ALTIVEC__)
#if defined(POWER8) || defined(POWER9) #if defined(POWER8) || defined(POWER9)
#include "sswap_microk_power8.c" #include "sswap_microk_power8.c"
#elif defined(POWER10) #elif defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
#include "swap_microk_power10.c" #include "swap_microk_power10.c"
#elif defined(POWER10)
#include "sswap_microk_power8.c"
#endif #endif
#endif #endif
@ -117,7 +119,7 @@ int CNAME(BLASLONG n, BLASLONG dummy0, BLASLONG dummy1, FLOAT dummy3, FLOAT *x,
if ( (inc_x == 1) && (inc_y == 1 )) if ( (inc_x == 1) && (inc_y == 1 ))
{ {
#if defined(POWER10) #if defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
if ( n >= 64 ) if ( n >= 64 )
{ {
BLASLONG align = ((32 - ((uintptr_t)y & (uintptr_t)0x1F)) >> 2) & 0x7; BLASLONG align = ((32 - ((uintptr_t)y & (uintptr_t)0x1F)) >> 2) & 0x7;

View File

@ -43,12 +43,16 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#if defined(DOUBLE) #if defined(DOUBLE)
#include "zscal_microk_power8.c" #include "zscal_microk_power8.c"
#endif #endif
#elif defined(POWER10) #elif defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
#if defined(DOUBLE) #if defined(DOUBLE)
#include "zscal_microk_power10.c" #include "zscal_microk_power10.c"
#else #else
#include "cscal_microk_power10.c" #include "cscal_microk_power10.c"
#endif #endif
#elif defined(POWER10)
#if defined(DOUBLE)
#include "zscal_microk_power8.c"
#endif
#endif #endif
#endif #endif

View File

@ -39,8 +39,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#if defined(__VEC__) || defined(__ALTIVEC__) #if defined(__VEC__) || defined(__ALTIVEC__)
#if defined(POWER8) || defined(POWER9) #if defined(POWER8) || defined(POWER9)
#include "zswap_microk_power8.c" #include "zswap_microk_power8.c"
#elif defined(POWER10) #elif defined(POWER10) && (__BYTE_ORDER__ != __ORDER_BIG_ENDIAN__)
#include "cswap_microk_power10.c" #include "cswap_microk_power10.c"
#elif defined(POWER10)
#include "zswap_microk_power8.c"
#endif #endif
#endif #endif