Fix build issue on POWER8 with DYNAMIC_ARCH
authorRajalakshmi Srinivasaraghavan <rajis@linux.ibm.com>
Fri, 12 Feb 2021 03:28:03 +0000 (21:28 -0600)
committerRajalakshmi Srinivasaraghavan <rajis@linux.ibm.com>
Fri, 12 Feb 2021 03:28:03 +0000 (21:28 -0600)
Running make DYNAMIC_ARCH=1 on POWER 8 BE with gcc10.2 version, gives
the following error due to the difference in UNROLL_M/N.
'No rule to make target 'dgemm_incopy_POWER10.o', needed by kernel'

param.h

diff --git a/param.h b/param.h
index 6a790ab..9ba25de 100644 (file)
--- a/param.h
+++ b/param.h
@@ -2443,8 +2443,13 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #define SGEMM_DEFAULT_UNROLL_M 16
 #define SGEMM_DEFAULT_UNROLL_N 8
+#if defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__)
+#define DGEMM_DEFAULT_UNROLL_M 16
+#define DGEMM_DEFAULT_UNROLL_N 4
+#else
 #define DGEMM_DEFAULT_UNROLL_M 8
 #define DGEMM_DEFAULT_UNROLL_N 8
+#endif
 #define CGEMM_DEFAULT_UNROLL_M 8
 #define CGEMM_DEFAULT_UNROLL_N 4
 #define ZGEMM_DEFAULT_UNROLL_M 8