Skip to content

Commit 37aee1f

Browse files
committed
Merge branch 'develop'
2 parents 7e4e195 + f5424fc commit 37aee1f

49 files changed

Lines changed: 2953 additions & 287 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

CONTRIBUTORS.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,5 +117,9 @@ In chronological order:
117117
* Isaac Dunham <https://github.com/idunham>
118118
* [2014-08-03] Fixed link error on Linux/musl
119119

120+
* Dave Nuechterlein
121+
* [2014-10-10] trmm and sgemm kernels (optimized for APM's X-Gene 1).
122+
ARMv8 support.
123+
120124
* [Your name or handle] <[email or website]>
121125
* [Date] [Brief summary of your changes]

Changelog.txt

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,25 @@
11
OpenBLAS ChangeLog
2+
====================================================================
3+
Version 0.2.13
4+
3-Dec-2014
5+
common:
6+
* Add SYMBOLPREFIX and SYMBOLSUFFIX makefile options
7+
for adding a prefix or suffix to all exported symbol names
8+
in the shared library.(#459, Thanks Tony Kelman)
9+
* Provide OpenBLASConfig.cmake at installation.
10+
* Fix Fortran compiler detection on FreeBSD.
11+
(#470, Thanks Mike Nolta)
12+
13+
14+
x86/x86-64:
15+
* Add generic kernel files for x86-64. make TARGET=GENERIC
16+
* Fix a bug of sgemm kernel on Intel Sandy Bridge.
17+
* Fix c_check bug on some amd64 systems. (#471, Thanks Mike Nolta)
18+
19+
ARM:
20+
* Support APM's X-Gene 1 AArch64 processors.
21+
Optimize trmm and sgemm. (#465, Thanks Dave Nuechterlein)
22+
223
====================================================================
324
Version 0.2.12
425
13-Oct-2014

LICENSE

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Copyright (c) 2011,2012 Lab of Parallel Software and Computational Science,ISCAS
1+
Copyright (c) 2011-2014, The OpenBLAS Project
22
All rights reserved.
33

44
Redistribution and use in source and binary forms, with or without
@@ -12,9 +12,10 @@ met:
1212
notice, this list of conditions and the following disclaimer in
1313
the documentation and/or other materials provided with the
1414
distribution.
15-
3. Neither the name of the ISCAS nor the names of its contributors may
16-
be used to endorse or promote products derived from this software
17-
without specific prior written permission.
15+
3. Neither the name of the OpenBLAS project nor the names of
16+
its contributors may be used to endorse or promote products
17+
derived from this software without specific prior written
18+
permission.
1819

1920
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
2021
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE

Makefile.install

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ OPENBLAS_INCLUDE_DIR := $(PREFIX)/include
99
OPENBLAS_LIBRARY_DIR := $(PREFIX)/lib
1010
OPENBLAS_BINARY_DIR := $(PREFIX)/bin
1111
OPENBLAS_BUILD_DIR := $(CURDIR)
12+
OPENBLAS_CMAKE_DIR := $(PREFIX)/cmake
13+
OPENBLAS_CMAKE_CONFIG := OpenBLASConfig.cmake
1214

1315
.PHONY : install
1416
.NOTPARALLEL : install
@@ -21,6 +23,7 @@ install : lib.grd
2123
@-mkdir -p $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)
2224
@-mkdir -p $(DESTDIR)$(OPENBLAS_LIBRARY_DIR)
2325
@-mkdir -p $(DESTDIR)$(OPENBLAS_BINARY_DIR)
26+
@-mkdir -p $(DESTDIR)$(OPENBLAS_CMAKE_DIR)
2427
@echo Generating openblas_config.h in $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)
2528
#for inc
2629
@echo \#ifndef OPENBLAS_CONFIG_H > $(DESTDIR)$(OPENBLAS_INCLUDE_DIR)/openblas_config.h
@@ -90,6 +93,23 @@ ifeq ($(OSNAME), CYGWIN_NT)
9093
@-cp $(LIBDLLNAME) $(OPENBLAS_BINARY_DIR)
9194
endif
9295
endif
93-
96+
#Generating OpenBLASConfig.cmake
97+
@echo Generating $(OPENBLAS_CMAKE_CONFIG) in $(DESTDIR)$(OPENBLAS_CMAKE_DIR)
98+
@echo "SET(OpenBLAS_INCLUDE_DIRS ${OPENBLAS_INCLUDE_DIR})" > $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG)
99+
ifndef NO_SHARED
100+
#ifeq logical or
101+
ifeq ($(OSNAME), $(filter $(OSNAME),Linux FreeBSD NetBSD))
102+
@echo "SET(OpenBLAS_LIBRARIES ${OPENBLAS_LIBRARY_DIR}/$(LIBPREFIX).so)" >> $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG)
103+
endif
104+
ifeq ($(OSNAME), $(filter $(OSNAME),WINNT CYGWIN_NT))
105+
@echo "SET(OpenBLAS_LIBRARIES ${OPENBLAS_BINARY_DIR}/$(LIBDLLNAME))" >> $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG)
106+
endif
107+
ifeq ($(OSNAME), Darwin)
108+
@echo "SET(OpenBLAS_LIBRARIES ${OPENBLAS_LIBRARY_DIR}/$(LIBPREFIX).dylib)" >> $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG)
109+
endif
110+
else
111+
#only static
112+
@echo "SET(OpenBLAS_LIBRARIES ${OPENBLAS_LIBRARY_DIR}/$(LIBPREFIX).$(LIBSUFFIX))" >> $(DESTDIR)$(OPENBLAS_CMAKE_DIR)/$(OPENBLAS_CMAKE_CONFIG)
113+
endif
94114
@echo Install OK!
95115

Makefile.rule

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
#
44

55
# This library's version
6-
VERSION = 0.2.12
6+
VERSION = 0.2.13
77

88
# If you set the suffix, the library name will be libopenblas_$(LIBNAMESUFFIX).a
99
# and libopenblas_$(LIBNAMESUFFIX).so. Meanwhile, the soname in shared library

Makefile.system

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,8 @@ LD = $(CROSS_SUFFIX)ld
186186
RANLIB = $(CROSS_SUFFIX)ranlib
187187
NM = $(CROSS_SUFFIX)nm
188188
DLLWRAP = $(CROSS_SUFFIX)dllwrap
189+
OBJCOPY = $(CROSS_SUFFIX)objcopy
190+
OBJCONV = $(CROSS_SUFFIX)objconv
189191

190192
#
191193
# OS dependent settings
@@ -845,6 +847,14 @@ else
845847
LIBPREFIX = libopenblas_$(LIBNAMESUFFIX)
846848
endif
847849

850+
ifndef SYMBOLPREFIX
851+
SYMBOLPREFIX =
852+
endif
853+
854+
ifndef SYMBOLSUFFIX
855+
SYMBOLSUFFIX =
856+
endif
857+
848858
KERNELDIR = $(TOPDIR)/kernel/$(ARCH)
849859

850860
include $(TOPDIR)/Makefile.$(ARCH)

common_arm.h

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*****************************************************************************
2-
Copyright (c) 2011, Lab of Parallel Software and Computational Science,ICSAS
2+
Copyright (c) 2011-2014, The OpenBLAS Project
33
All rights reserved.
44
55
Redistribution and use in source and binary forms, with or without
@@ -13,9 +13,10 @@ modification, are permitted provided that the following conditions are
1313
notice, this list of conditions and the following disclaimer in
1414
the documentation and/or other materials provided with the
1515
distribution.
16-
3. Neither the name of the ISCAS nor the names of its contributors may
17-
be used to endorse or promote products derived from this software
18-
without specific prior written permission.
16+
3. Neither the name of the OpenBLAS project nor the names of
17+
its contributors may be used to endorse or promote products
18+
derived from this software without specific prior written
19+
permission.
1920
2021
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
2122
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
@@ -27,7 +28,6 @@ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
2728
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
2829
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
2930
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30-
3131
**********************************************************************************/
3232

3333
/*********************************************************************/

common_arm64.h

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*****************************************************************************
2-
Copyright (c) 2011, Lab of Parallel Software and Computational Science,ICSAS
2+
Copyright (c) 2011-2014, The OpenBLAS Project
33
All rights reserved.
44
55
Redistribution and use in source and binary forms, with or without
@@ -13,9 +13,10 @@ modification, are permitted provided that the following conditions are
1313
notice, this list of conditions and the following disclaimer in
1414
the documentation and/or other materials provided with the
1515
distribution.
16-
3. Neither the name of the ISCAS nor the names of its contributors may
17-
be used to endorse or promote products derived from this software
18-
without specific prior written permission.
16+
3. Neither the name of the OpenBLAS project nor the names of
17+
its contributors may be used to endorse or promote products
18+
derived from this software without specific prior written
19+
permission.
1920
2021
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
2122
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
@@ -27,7 +28,6 @@ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
2728
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
2829
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
2930
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30-
3131
**********************************************************************************/
3232

3333
/*********************************************************************/
@@ -119,9 +119,9 @@ static inline int blas_quickdivide(blasint x, blasint y){
119119
}
120120

121121
#if defined(DOUBLE)
122-
#define GET_IMAGE(res) __asm__ __volatile__("vstr.f64 d1, %0" : "=m"(res) : : "memory")
122+
#define GET_IMAGE(res) __asm__ __volatile__("str d1, %0" : "=m"(res) : : "memory")
123123
#else
124-
#define GET_IMAGE(res) __asm__ __volatile__("vstr.f32 s1, %0" : "=m"(res) : : "memory")
124+
#define GET_IMAGE(res) __asm__ __volatile__("str s1, %0" : "=m"(res) : : "memory")
125125
#endif
126126

127127
#define GET_IMAGE_CANCEL
@@ -138,7 +138,6 @@ static inline int blas_quickdivide(blasint x, blasint y){
138138
#if defined(ASSEMBLER) && !defined(NEEDPARAM)
139139

140140
#define PROLOGUE \
141-
.arm ;\
142141
.global REALNAME ;\
143142
.func REALNAME ;\
144143
REALNAME:

common_mips64.h

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*****************************************************************************
2-
Copyright (c) 2011, Lab of Parallel Software and Computational Science,ICSAS
2+
Copyright (c) 2011-2014, The OpenBLAS Project
33
All rights reserved.
44
55
Redistribution and use in source and binary forms, with or without
@@ -13,9 +13,10 @@ modification, are permitted provided that the following conditions are
1313
notice, this list of conditions and the following disclaimer in
1414
the documentation and/or other materials provided with the
1515
distribution.
16-
3. Neither the name of the ISCAS nor the names of its contributors may
17-
be used to endorse or promote products derived from this software
18-
without specific prior written permission.
16+
3. Neither the name of the OpenBLAS project nor the names of
17+
its contributors may be used to endorse or promote products
18+
derived from this software without specific prior written
19+
permission.
1920
2021
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
2122
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
@@ -27,7 +28,6 @@ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
2728
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
2829
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
2930
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30-
3131
**********************************************************************************/
3232

3333
/*********************************************************************/

common_reference.h

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*****************************************************************************
2-
Copyright (c) 2011, Lab of Parallel Software and Computational Science,ICSAS
2+
Copyright (c) 2011-2014, The OpenBLAS Project
33
All rights reserved.
44
55
Redistribution and use in source and binary forms, with or without
@@ -13,9 +13,10 @@ modification, are permitted provided that the following conditions are
1313
notice, this list of conditions and the following disclaimer in
1414
the documentation and/or other materials provided with the
1515
distribution.
16-
3. Neither the name of the ISCAS nor the names of its contributors may
17-
be used to endorse or promote products derived from this software
18-
without specific prior written permission.
16+
3. Neither the name of the OpenBLAS project nor the names of
17+
its contributors may be used to endorse or promote products
18+
derived from this software without specific prior written
19+
permission.
1920
2021
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
2122
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE

0 commit comments

Comments
 (0)