Hello community,

here is the log from the commit of package libatlas3 for openSUSE:Factory 
checked in at 2015-08-13 18:10:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libatlas3 (Old)
 and      /work/SRC/openSUSE:Factory/.libatlas3.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libatlas3"

Changes:
--------
--- /work/SRC/openSUSE:Factory/libatlas3/libatlas3.changes      2015-08-11 
08:26:23.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.libatlas3.new/libatlas3.changes 2015-08-13 
18:10:50.000000000 +0200
@@ -1,0 +2,13 @@
+Tue Aug 11 10:41:43 UTC 2015 - norm...@linux.vnet.ibm.com
+
+- For ppc64/ppc64le architectures:
+  Update the related patches to new version 3.10.2
+  deleted patches:
+    issue_64.patch is embeded in 3.10.2
+    atlas.3.10.1-ppc64le_abiv2.patch
+    atlas.3.10.1-add_power8_cpu.patch
+  new patches:
+    atlas.3.10.2-ppc64le_abiv2.patch
+    atlas.3.10.2-add_power8_cpu.patch
+
+-------------------------------------------------------------------

Old:
----
  atlas.3.10.1-add_power8_cpu.patch
  atlas.3.10.1-ppc64le_abiv2.patch
  issue_64.patch

New:
----
  atlas.3.10.2-add_power8_cpu.patch
  atlas.3.10.2-ppc64le_abiv2.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libatlas3.spec ++++++
--- /var/tmp/diff_new_pack.IRQYry/_old  2015-08-13 18:10:52.000000000 +0200
+++ /var/tmp/diff_new_pack.IRQYry/_new  2015-08-13 18:10:52.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package libatlas3
 #
-# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -36,11 +36,11 @@
 # for ppc64 ppc64le
 # https://bugzilla.redhat.com/show_bug.cgi?id=1080073#c40
 Patch10:        getdoublearr.stripwhite.patch
-Patch11:        issue_64.patch
+#atch11:        issue_64.patch
 Patch12:        initialize_malloc_memory.invtrsm.wms.oct23.patch
-Patch13:        atlas.3.10.1-ppc64le_abiv2.patch
+Patch13:        atlas.3.10.2-ppc64le_abiv2.patch
 Patch14:        atlas-new_archdef_for_ppc64le.patch
-Patch15:        atlas.3.10.1-add_power8_cpu.patch
+Patch15:        atlas.3.10.2-add_power8_cpu.patch
 # for ppc64le tempo patch
 Patch16:        atlas.3.10.2-ppc64le_do_not_use_files_with_lvx.patch
 
@@ -200,7 +200,7 @@
 %endif
 %ifarch ppc64le ppc64
 %patch10 -p1
-%patch11 -p1
+#patch11 -p1
 %patch12 -p1
 %patch13 -p1
 %patch14 -p1

++++++ atlas.3.10.1-add_power8_cpu.patch -> atlas.3.10.2-add_power8_cpu.patch 
++++++
--- /work/SRC/openSUSE:Factory/libatlas3/atlas.3.10.1-add_power8_cpu.patch      
2015-08-11 08:26:23.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.libatlas3.new/atlas.3.10.2-add_power8_cpu.patch 
2015-08-13 18:10:50.000000000 +0200
@@ -1,8 +1,8 @@
 From: Michel Normand <norm...@linux.vnet.ibm.com>
-Subject: atlas.3.10.1 add power8 cpu
+Subject: atlas.3.10.2 add power8 cpu
 Date: Thu, 18 Sep 2014 15:13:24 +0200
 
-atlas.3.10.1 add Power8 cpu
+atlas.3.10.2 add Power8 cpu
 tracked upstream by issue 67
 https://sourceforge.net/p/math-atlas/patches/67/
 
@@ -28,7 +28,7 @@
          PPCG432AltiVec.tar.bz2 PPCG532AltiVec.tar.bz2 PPCG564AltiVec.tar.bz2 \
          PPRO32.tar.bz2 USIII32.tar.bz2 USIII64.tar.bz2 USIV32.tar.bz2 \
          USIV64.tar.bz2 UST232.tar.bz2 UST264.tar.bz2 atlas_test1.1.3.tar.bz2 \
-@@ -302,6 +303,12 @@ POWER764VSX.tar.bz2 : $(basdr)/POWER764V
+@@ -308,6 +309,12 @@ POWER764VSX.tar.bz2 : $(basdr)/POWER764V
             /tmp/POWER764VSX.tar POWER764VSX
        bzip2 /tmp/POWER764VSX.tar
        mv /tmp/POWER764VSX.tar.bz2 ./.
@@ -49,21 +49,21 @@
  enum ARCHFAM {AFOther=0, AFPPC, AFSPARC, AFALPHA, AFX86, AFIA64, AFMIPS,
                AFARM, AFS390};
  
--#define NMACH 47
-+#define NMACH 48
+-#define NMACH 52
++#define NMACH 53
  static char *machnam[NMACH] =
     {"UNKNOWN", "POWER3", "POWER4", "POWER5", "PPCG4", "PPCG5",
--    "POWER6", "POWER7", "IBMz9", "IBMz10", "IBMz196",
-+    "POWER6", "POWER7", "POWER8", "IBMz9", "IBMz10", "IBMz196",
+-    "POWER6", "POWER7", "POWERe6500", "IBMz9", "IBMz10", "IBMz196",
++    "POWER6", "POWER7", "POWER8", "POWERe6500", "IBMz9", "IBMz10", "IBMz196",
      "x86x87", "x86SSE1", "x86SSE2", "x86SSE3",
      "P5", "P5MMX", "PPRO", "PII", "PIII", "PM", "CoreSolo",
-     "CoreDuo", "Core2Solo", "Core2", "Corei1", "Corei2", "Atom", "P4", "P4E",
-@@ -30,7 +30,7 @@ static char *machnam[NMACH] =
-     "USI", "USII", "USIII", "USIV", "UST2", "UnknownUS",
+     "CoreDuo", "Core2Solo", "Core2", "Corei1", "Corei2", "Corei3",
+@@ -31,7 +31,7 @@ static char *machnam[NMACH] =
+     "USI", "USII", "USIII", "USIV", "UST1", "UST2", "UnknownUS",
      "MIPSR1xK", "MIPSICE9", "ARMv7"};
  enum MACHTYPE {MACHOther, IbmPwr3, IbmPwr4, IbmPwr5, PPCG4, PPCG5,
--               IbmPwr6, IbmPwr7,
-+               IbmPwr6, IbmPwr7, IbmPwr8,
+-               IbmPwr6, IbmPwr7, Pwre6500,
++               IbmPwr6, IbmPwr7, IbmPwr8, Pwre6500,
                 IbmZ9, IbmZ10, IbmZ196,  /* s390(x) in Linux */
                 x86x87, x86SSE1, x86SSE2, x86SSE3, /* generic targets */
                 IntP5, IntP5MMX, IntPPRO, IntPII, IntPIII, IntPM, IntCoreS,
@@ -71,7 +71,7 @@
 ===================================================================
 --- ATLAS.orig/CONFIG/src/atlcomp.txt
 +++ ATLAS/CONFIG/src/atlcomp.txt
-@@ -186,6 +186,10 @@ MACH=PPCG5 OS=ALL LVL=1000 COMPS=dmc,icc
+@@ -190,6 +190,10 @@ MACH=PPCG5 OS=ALL LVL=1000 COMPS=dmc,icc
     'gcc' '-mpowerpc64 -maltivec -mabi=altivec -mcpu=970 -mtune=970 -O2'
  MACH=PPCG5 OS=ALL LVL=1000 COMPS=skc
     'gcc' '-mpowerpc64 -maltivec -mabi=altivec -mcpu=970 -mtune=970 -O2 
-mvrsave'
@@ -82,7 +82,7 @@
  MACH=POWER7 OS=ALL LVL=1010 COMPS=icc,smc,dmc,skc,dkc,xcc,gcc
     'gcc' '-O2 -mvsx -mcpu=power7 -mtune=power7 -m64 -mvrsave 
-funroll-all-loops'
  MACH=POWER7 OS=ALL LVL=1010 COMPS=f77
-@@ -206,6 +210,8 @@ MACH=POWER4 OS=ALL LVL=1010 COMPS=icc,dm
+@@ -210,6 +214,8 @@ MACH=POWER4 OS=ALL LVL=1010 COMPS=icc,dm
     'gcc' '-mcpu=power4 -mtune=power4 -O3 -fno-schedule-insns 
-fno-rerun-loop-opt'
  MACH=POWER4 OS=ALL LVL=1010 COMPS=f77
     'xlf' '-qtune=pwr4 -qarch=pwr4 -O3 -qmaxmem=-1 -qfloat=hsflt'

++++++ atlas.3.10.1-ppc64le_abiv2.patch -> atlas.3.10.2-ppc64le_abiv2.patch 
++++++
--- /work/SRC/openSUSE:Factory/libatlas3/atlas.3.10.1-ppc64le_abiv2.patch       
2015-08-11 08:26:23.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.libatlas3.new/atlas.3.10.2-ppc64le_abiv2.patch  
2015-08-13 18:10:50.000000000 +0200
@@ -1,143 +1,39 @@
 From: Michel Normand <norm...@linux.vnet.ibm.com>
-Subject: atlas.ppc64le abiv2
-Date: Mon, 14 Apr 2014 18:03:06 +0200
-References: http://sourceforge.net/p/math-atlas/mailman/message/32471499/
-
-atlas.ppc64le abiv2
-* do not use opd section for ABI V2
-* define TOC in r2 in function call
-  TODO: may be not required everywhere.
-based on work of Guy and Thierry
-
-TODO: still have to work on stack FSIZE
-
-TODO: for ATLAS/tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c
-    need to better understand the change about ld pC0
+Subject: atlas.3.10.2 ppc64le abiv2 patch
+Date: Mon, 28 Jul 2014 04:29:05 -0400
 
+atlas.3.10.2 abiv2 step2 complete the changes already present in atlas 3.10.2
+* still some files with opd ABI V1 to be disabled for ABI V2
+ tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c
+ tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c
+ tune/blas/gemm/CASES/ATL_smm4x4x128_av.c
+
+atlas.3.10.2 ppc64le abiv2 step3
+* change offsets of parameters read from stack to avoid some segfaults.
+  (values changes 120 => 104 and 128 => 112 identified by gdb investigation)
+
+Despite this step3 patch there are two Remaining problems for ppc64le archi:
+* TODO: still have seg-faults in console during build/check
+but is not critical (without make check) and rpm are generated on fedora.
+unable to investigate because of problem tracked by issue 950
+https://sourceforge.net/p/math-atlas/support-requests/950/
+
+* TODO: make check failure because xsslvtst execution failure
+related to vector assembly code that assumes big-endian env
+as written in ATL_cmm4x4x128_av.c and ATL_smm4x4x128_av.c.
+Would need significant work to support little-endian as per
+endianess comments of all PowerPC vector instructions in:
+https://www-01.ibm.com/chips/techlib/techlib.nsf/techdocs/FBFA164F824370F987256D6A006F424D/$file/vector_simd_pem.ppc.2005AUG23.pdf
 
 Signed-off-by: Michel Normand <norm...@linux.vnet.ibm.com>
 ---
- CONFIG/src/backend/probe_AltiVec.S       |    2 +-
- CONFIG/src/backend/probe_VSX.S           |    2 +-
- src/threads/ATL_DecAtomicCount_ppc.S     |    2 +-
- src/threads/ATL_ResetAtomicCount_ppc.S   |    2 +-
- tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c |    9 ++++++++-
- tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c |    9 ++++++++-
+ tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c |    7 +++++++
+ tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c |    7 +++++++
  tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c |    9 ++++++++-
  tune/blas/gemm/CASES/ATL_dmm4x4x80_ppc.c |   20 ++++++++++++++++++--
  tune/blas/gemm/CASES/ATL_smm4x4x128_av.c |   23 ++++++++++++++++++++++-
- 9 files changed, 68 insertions(+), 10 deletions(-)
+ 5 files changed, 62 insertions(+), 4 deletions(-)
 
-Index: ATLAS/CONFIG/src/backend/probe_AltiVec.S
-===================================================================
---- ATLAS.orig/CONFIG/src/backend/probe_AltiVec.S
-+++ ATLAS/CONFIG/src/backend/probe_AltiVec.S
-@@ -6,7 +6,7 @@
-  *
-  */
- .text
--#if defined(ATL_USE64BITS) && defined (ATL_OS_Linux)
-+#if defined(ATL_USE64BITS) && defined (ATL_OS_Linux) && _CALL_ELF != 2
-         .align 2
-         .globl  ATL_asmdecor(do_vsum)
-         .section        ".opd","aw"
-Index: ATLAS/CONFIG/src/backend/probe_VSX.S
-===================================================================
---- ATLAS.orig/CONFIG/src/backend/probe_VSX.S
-+++ ATLAS/CONFIG/src/backend/probe_VSX.S
-@@ -6,7 +6,7 @@
-  *
-  */
- .text
--#if defined(ATL_USE64BITS) && defined (ATL_OS_Linux)
-+#if defined(ATL_USE64BITS) && defined (ATL_OS_Linux) && _CALL_ELF != 2
-         .align 2
-         .globl  ATL_asmdecor(do_vsum)
-         .section        ".opd","aw"
-Index: ATLAS/src/threads/ATL_DecAtomicCount_ppc.S
-===================================================================
---- ATLAS.orig/src/threads/ATL_DecAtomicCount_ppc.S
-+++ ATLAS/src/threads/ATL_DecAtomicCount_ppc.S
-@@ -4,7 +4,7 @@
-    .globl _ATL_DecAtomicCount
-    _ATL_DecAtomicCount:
- #else
--   #if defined(ATL_USE64BITS)
-+   #if defined(ATL_USE64BITS) && _CALL_ELF != 2
- /*
-  *      Official Program Descripter section, seg fault w/o it on Linux/PPC64
-  */
-Index: ATLAS/src/threads/ATL_ResetAtomicCount_ppc.S
-===================================================================
---- ATLAS.orig/src/threads/ATL_ResetAtomicCount_ppc.S
-+++ ATLAS/src/threads/ATL_ResetAtomicCount_ppc.S
-@@ -4,7 +4,7 @@
-    .globl _ATL_ResetAtomicCount
-    _ATL_ResetAtomicCount:
- #else
--   #if defined(ATL_USE64BITS)
-+   #if defined(ATL_USE64BITS) && _CALL_ELF != 2
- /*
-  *      Official Program Descripter section, seg fault w/o it on Linux/PPC64
-  */
-Index: ATLAS/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c
-===================================================================
---- ATLAS.orig/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c
-+++ ATLAS/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c
-@@ -181,7 +181,7 @@ void ATL_USERMM(const int M, const int N
-       .globl  Mjoin(_,ATL_USERMM)
- Mjoin(_,ATL_USERMM):
- #else
--   #if defined(ATL_USE64BITS)
-+   #if defined(ATL_USE64BITS) && _CALL_ELF != 2
- /*
-  *      Official Program Descripter section, seg fault w/o it on Linux/PPC64
-  */
-@@ -258,8 +258,15 @@ ATL_USERMM:
-         eqv     r0, r0, r0      /* all 1s */
-         ATL_WriteVRSAVE(r0)     /* signal we use all vector regs */
- #if defined (ATL_USE64BITS)
-+#if _CALL_ELF == 2
-+/* ABIv2 */
-+        ld      pC0, FSIZE+104(r1)
-+        ld      ldc, FSIZE+112(r1)
-+#else
-+/* ABIv1 */
-         ld      pC0, FSIZE+120(r1)
-         ld      ldc, FSIZE+128(r1)
-+#endif
- #elif defined(ATL_AS_OSX_PPC)
-         lwz     pC0, FSIZE+60(r1)
-         lwz     ldc,  FSIZE+64(r1)
-Index: ATLAS/tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c
-===================================================================
---- ATLAS.orig/tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c
-+++ ATLAS/tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c
-@@ -279,7 +279,7 @@ void ATL_USERMM(const int M, const int N
- #endif
- .text
- #ifdef ATL_GAS_LINUX_PPC
--   #if defined(ATL_USE64BITS)
-+   #if defined(ATL_USE64BITS) && _CALL_ELF != 2
- /*
-  *       No idea what this does, but seg fault without it (I think it is
-  *       partially resp for making code callable from both static & PIC code)
-@@ -405,8 +405,15 @@ Mjoin(_,ATL_USERMM):
-  */
- #ifdef ATL_GAS_LINUX_PPC
-    #ifdef ATL_USE64BITS
-+      #if _CALL_ELF == 2
-+      /* ABIv2 */
-+        ld      pC0, 104(r1)
-+        ld      incCn, 112(r1)
-+      #else
-+      /* ABIv1 */
-       ld      pC0, 120(r1)
-       ld      incCn, 128(r1)
-+      #endif
-    #else
-       lwz     incCn, FSIZE+8(r1)
-    #endif
 Index: ATLAS/tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c
 ===================================================================
 --- ATLAS.orig/tune/blas/gemm/CASES/ATL_dmm4x4x32_ppc.c
@@ -282,3 +178,43 @@
  #elif defined(ATL_AS_OSX_PPC)
          lwz     pC0, FSIZE+60(r1)
          lwz     ldc,  FSIZE+64(r1)
+Index: ATLAS/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c
+===================================================================
+--- ATLAS.orig/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c
++++ ATLAS/tune/blas/gemm/CASES/ATL_cmm4x4x128_av.c
+@@ -258,8 +258,15 @@ ATL_USERMM:
+         eqv     r0, r0, r0      /* all 1s */
+         ATL_WriteVRSAVE(r0)     /* signal we use all vector regs */
+ #if defined (ATL_USE64BITS)
++#if _CALL_ELF == 2
++/* ABIv2 */
++        ld      pC0, FSIZE+104(r1)
++        ld      ldc, FSIZE+112(r1)
++#else
++/* ABIv1 */
+         ld      pC0, FSIZE+120(r1)
+         ld      ldc, FSIZE+128(r1)
++#endif
+ #elif defined(ATL_AS_OSX_PPC)
+         lwz     pC0, FSIZE+60(r1)
+         lwz     ldc,  FSIZE+64(r1)
+Index: ATLAS/tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c
+===================================================================
+--- ATLAS.orig/tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c
++++ ATLAS/tune/blas/gemm/CASES/ATL_dmm4x4x2pf_av.c
+@@ -405,8 +405,15 @@ Mjoin(_,ATL_USERMM):
+  */
+ #ifdef ATL_GAS_LINUX_PPC
+    #ifdef ATL_USE64BITS
++      #if _CALL_ELF == 2
++      /* ABIv2 */
++        ld      pC0, 104(r1)
++        ld      incCn, 112(r1)
++      #else
++      /* ABIv1 */
+       ld      pC0, 120(r1)
+       ld      incCn, 128(r1)
++      #endif
+    #else
+       lwz     incCn, FSIZE+8(r1)
+    #endif


Reply via email to