Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 128178 - sci-libs/blas-atlas-3.7.11: camm_dpa.h:1488: error: syntax error before "volatile"
Summary: sci-libs/blas-atlas-3.7.11: camm_dpa.h:1488: error: syntax error before "vola...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Science Related Packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-03-30 15:20 UTC by Martin Mokrejš
Modified: 2006-10-05 18:20 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
error_Linux_P4ESSE2_4.tgz (error_Linux_P4ESSE2_4.tgz,78.25 KB, application/octet-stream)
2006-04-09 05:46 UTC, Martin Mokrejš
Details
clobbering.patch (clobbering.patch,319 bytes, patch)
2006-09-25 13:01 UTC, Fabio Rossi
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Mokrejš 2006-03-30 15:20:47 UTC
/usr/bin/gcc -c -DL2SIZE=1048576 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/Linux_P4ESSE2_4 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib  -DAdd__ -DStringSunStyle -DATL_OS_Linux -DATL_ARCH_P4E -DATL_SSE2 -DATL_SSE1 -DATL_GAS_x8632 -DATL_NCPU=4 -march=pentium4 -mcpu=pentium4 -mmmx -msse -msse2 -msse3 -O3 -fomit-frame-pointer -funroll-loops -pipe -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/ger/Linux_P4ESSE2_4 -o ATL_sger1.o -DSREAL ATL_sger1.c
`-mcpu=' is deprecated. Use `-mtune=' or '-march=' instead.
In file included from /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/ATL_gemv_ger_SSE.h:36,
                 from ATL_sger1.c:42:
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In function `dp4dpGuBL':
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488: error: syntax error before "volatile"
In file included from /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/ATL_gemv_ger_SSE.h:45,
                 from ATL_sger1.c:42:
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In function `dp3dpGuBL':
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488: error: syntax error before "volatile"
In file included from /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/ATL_gemv_ger_SSE.h:54,
                 from ATL_sger1.c:42:
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In function `dp2dpGuBL':
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488: error: syntax error before "volatile"
In file included from /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/ATL_gemv_ger_SSE.h:62,
                 from ATL_sger1.c:42:
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In function `dp1dpGuBL':
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488: error: syntax error before "volatile"
In file included from /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/ATL_gemv_ger_SSE.h:68,
                 from ATL_sger1.c:42:
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In function `dp4dpGuBLm':
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488: error: syntax error before "volatile"
make[5]: *** [ATL_sger1.o] Error 1
make[5]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/ger/Linux_P4ESSE2_4'
make[4]: *** [sr1case] Error 2
make[4]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/ger/Linux_P4ESSE2_4'
make sr1case r1rout=ATL_ger1_axpy.c cas=1 l1mul=50 iflag=0 xu=16 yu=1
make[4]: Entering directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/ger/Linux_P4ESSE2_4'

Please note the emerge process continues into next directory! So I guess many people have overlooked this error message. I just guess the net effect is that the optimization finally picked up a bit wrong.



Portage 2.1_pre7-r3 (default-linux/x86/2005.1, gcc-3.4.6, glibc-2.4-r1, 2.6.15.6 i686)
=================================================================
System uname: 2.6.15.6 i686 Intel(R) Xeon(TM) CPU 3.06GHz
Gentoo Base System version 1.12.0_pre16
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
dev-lang/python:     2.3.5, 2.4.2-r1
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r3
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=pentium4 -mcpu=pentium4 -mmmx -msse -msse2 -msse3 -O3 -fomit-frame-pointer -funroll-loops -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/X11/xkb /usr/share/config /var/bind /var/qmail/alias /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/texmf/web2c /etc/env.d"
CXXFLAGS="-march=pentium4 -mcpu=pentium4 -mmmx -msse -msse2 -msse3 -O3 -fomit-frame-pointer -funroll-loops -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://gentoo.mirror.icd.hu/ http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ http://gd.tuwien.ac.at/opsys/linux/gentoo/ ftp://ftp.tu-clausthal.de/pub/linux/gentoo/"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 FFmpeg X Xaw3d aalib acpi apache2 apm arts ati avi berkdb bidi bitmap-fonts caca cdparanoia cdr crypt cscope cups curl dba dga directfb distcc divx divx4 divx4linux divx5 divx5linux dri dvb dvd dvdr dvdread eds emacs emacs-w3 emboss encode ethereal evo f77 faad faad2 fam fame fbcon ffmpeg flash foomaticdb fortran fvwm2 g77 gb gcj gd gdbm ggi gif gphoto2 gpm gstreamer gtk gtk2 gtkhtml i8x0 icc imagemagick imlib imlib2 innodb isdnlog ithreads java jpeg lcms leim libg++ libwww live lzo mad mcal mesa mikmod mmx mmx2 motif mozilla mp3 mpeg mule mysql ncurses network nls nptl nptlonly ogg oggvorbis opengl oss pam pcre pda pdflib perl php php4 plotutils png ppds pppd pthread pthreads python qt qtx quicktime readline rtc samba sdl slp spell sse sse2 sse3 ssl tcltk tcpd tetex theora thread threads tiff truetype truetype-fonts type1-fonts unicode usb utf8 v4l v4l2 vorbis win32 winvidix wmf xml xml2 xmms xosd xv xvid xvmc zeo zlib elibc_glibc kernel_linux userland_GNU video_cards_ati"
Unset:  ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTDIR_OVERLAY
Comment 1 Markus Dittrich (RETIRED) gentoo-dev 2006-03-30 19:27:06 UTC
Hi Martin,

Could you please try with less aggressive CFLAGS, e.g.
-O2 -march=pentium4, and report back!

Thanks,
Markus
Comment 2 Martin Mokrejš 2006-04-08 11:53:06 UTC
Using "-O2 -march=pentium4" worked. BTW, the following I have found suspicious at the end of install process:

--- !empty dir /usr/include
--- !empty dir /usr
>>> Original instance of package unmerged safely.
Changing BLAS implementation to threaded-ATLAS in
  /lib
Affected language interfaces
/usr/share/eselect//libs/config.bash: line 63: local: `F77_/lib=': not a valid identifier
/usr/share/eselect//libs/config.bash: line 63: local: `C_/lib=': not a valid identifier
/usr/share/eselect//libs/config.bash: line 63: local: `F77_/lib_CURRENT=': not a valid identifier
/usr/share/eselect//libs/config.bash: line 63: local: `C_/lib_CURRENT=': not a valid identifier
//var/lib/eselect/blas/blas.config: line 3: F77_/lib=: No such file or directory
//var/lib/eselect/blas/blas.config: line 4: C_/lib=: No such file or directory
//var/lib/eselect/blas/blas.config: line 5: F77_/lib_CURRENT=threaded-ATLAS: No such file or directory
//var/lib/eselect/blas/blas.config: line 6: C_/lib_CURRENT=: No such file or directory
/usr/share/eselect//libs/config.bash: line 63: local: `F77_/lib=': not a valid identifier
/usr/share/eselect//libs/config.bash: line 63: local: `C_/lib=': not a valid identifier
/usr/share/eselect//libs/config.bash: line 63: local: `F77_/lib_CURRENT=': not a valid identifier
/usr/share/eselect//libs/config.bash: line 63: local: `C_/lib_CURRENT=': not a valid identifier
//var/lib/eselect/blas/blas.config: line 3: F77_/lib=: No such file or directory
//var/lib/eselect/blas/blas.config: line 4: C_/lib=: No such file or directory
//var/lib/eselect/blas/blas.config: line 5: F77_/lib_CURRENT=: No such file or directory
//var/lib/eselect/blas/blas.config: line 6: C_/lib_CURRENT=threaded-ATLAS: No such file or directory
  C F77
 *
 * Fortran users link using -lblas
 *
 * C users compile against the header /usr/include/atlas/cblas.h and
 * link using -lcblas
 *
>>> Regenerating /etc/ld.so.cache...
>>> sci-libs/blas-atlas-3.7.11 merged.


Portage 2.1_pre7-r4 (default-linux/x86/2005.1, gcc-3.4.6, glibc-2.4-r1, 2.6.15.6 i686)
=================================================================
System uname: 2.6.15.6 i686 Intel(R) Xeon(TM) CPU 3.06GHz
Gentoo Base System version 1.12.0_pre17
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
dev-lang/python:     2.3.5, 2.4.2-r1
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r3
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=pentium4 -mcpu=pentium4 -mmmx -msse -msse2 -msse3 -O3 -fomit-frame-pointer -funroll-loops -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/X11/xkb /usr/share/config /var/bind /var/qmail/alias /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/eselect/compiler /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/env.d"
CXXFLAGS="-march=pentium4 -mcpu=pentium4 -mmmx -msse -msse2 -msse3 -O3 -fomit-frame-pointer -funroll-loops -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://gentoo.mirror.icd.hu/ http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ http://gd.tuwien.ac.at/opsys/linux/gentoo/ ftp://ftp.tu-clausthal.de/pub/linux/gentoo/"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 FFmpeg X Xaw3d aalib acpi apache2 apm arts ati avi berkdb bidi bitmap-fonts caca cdparanoia cdr crypt cscope cups curl dba dga directfb distcc divx divx4 divx4linux divx5 divx5linux dri dvb dvd dvdr dvdread eds emacs emacs-w3 emboss encode ethereal evo f77 faad faad2 fam fame fbcon ffmpeg flash foomaticdb fortran fvwm2 g77 gb gcj gd gdbm ggi gif gphoto2 gpm gstreamer gtk gtk2 gtkhtml i8x0 icc imagemagick imlib imlib2 innodb isdnlog ithreads java jpeg lcms leim libg++ libwww live lzo mad mcal mesa mikmod mmx mmx2 motif mozilla mp3 mpeg mule mysql ncurses network nls nptl nptlonly ogg oggvorbis opengl oss pam pcre pda pdflib perl php php4 plotutils png ppds pppd pthread pthreads python qt qtx quicktime readline rtc samba sdl slp spell sse sse2 sse3 ssl tcltk tcpd tetex theora thread threads tiff truetype truetype-fonts type1-fonts unicode usb utf8 v4l v4l2 vorbis win32 winvidix wmf xml xml2 xmms xosd xv xvid xvmc zeo zlib elibc_glibc kernel_linux userland_GNU video_cards_ati"
Unset:  ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTDIR_OVERLAY


# gcc-config -l
 [1] i386-pc-linux-gnu-3.3.2
 [2] i686-pc-linux-gnu-3.3.4
 [3] i686-pc-linux-gnu-3.4.6 *
 [4] i686-pc-linux-gnu-3.4.6-hardened
 [5] i686-pc-linux-gnu-3.4.6-hardenednopie
 [6] i686-pc-linux-gnu-3.4.6-hardenednopiessp
 [7] i686-pc-linux-gnu-3.4.6-hardenednossp
#
Comment 3 Markus Dittrich (RETIRED) gentoo-dev 2006-04-08 15:39:21 UTC
Hi Martin,

Good to hear that you got it to compile! Regarding the eselect issue,
maye try re-emerging it and see if this fixes the problems.

Thanks,
Markus
Comment 4 Martin Mokrejš 2006-04-09 05:45:26 UTC
So I upgraded eselect from 1.0.0. to 1.0.1 and retried:

[...]
make[8]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/level1/Linux_P4ESSE2_4'
make[8]: Entering directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/level1/Linux_P4ESSE2_4'
/usr/bin/gcc -DL2SIZE=1048576 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/Linux_P4ESSE2_4 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib  -DAdd__ -DStringSunStyle -DATL_OS_Linux -DATL_ARCH_P4E -DATL_SSE2 -DATL_SSE1 -DATL_GAS_x8632 -DATL_NCPU=4 -O2 -march=pentium4 -o cscaltime.o -c -DSCPLX ../scaltime.c
../scaltime.c: In function `DoTiming':
../scaltime.c:235: warning: initialization from incompatible pointer type
../scaltime.c:245: warning: passing arg 2 of `cplxinvert' from incompatible pointer type
../scaltime.c:289: warning: comparison of distinct pointer types lacks a cast
../scaltime.c:290: warning: assignment from incompatible pointer type
../scaltime.c:291: warning: assignment from incompatible pointer type
rm -f cscal.c cscal.o
cp ../SCAL/cscal1_x0.c cscal.c
/usr/bin/gcc -DL2SIZE=1048576 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/Linux_P4ESSE2_4 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib  -DAdd__ -DStringSunStyle -DATL_OS_Linux -DATL_ARCH_P4E -DATL_SSE2 -DATL_SSE1 -DATL_GAS_x8632 -DATL_NCPU=4 -DL2SIZE=1048576 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/Linux_P4ESSE2_4 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib  -DAdd__ -DStringSunStyle -DATL_OS_Linux -DATL_ARCH_P4E -DATL_SSE2 -DATL_SSE1 -DATL_GAS_x8632 -DATL_NCPU=4 -O2 -march=pentium4 -DSCPLX -c cscal.c
/usr/bin/gcc -DL2SIZE=1048576 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/Linux_P4ESSE2_4 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib  -DAdd__ -DStringSunStyle -DATL_OS_Linux -DATL_ARCH_P4E -DATL_SSE2 -DATL_SSE1 -DATL_GAS_x8632 -DATL_NCPU=4  -o xcscal cscaltime.o \
           ATL_cscal_stub.o cscal.o \
              /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/sysinfo/Linux_P4ESSE2_4/time.o -lpthread -lm
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/bin/Linux_P4ESSE2_4/ATLrun.sh /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/level1/Linux_P4ESSE2_4 xcscal -n 5000 -f res/cSCAL1_a2b2x1y0


CANNOT GET TIMINGS IN TOLERANCE, EXITING!!

      N=5000, tim=4.347826e-05
      N=5000, tim=3.804348e-05
      N=5000, tim=4.347826e-05
      N=5000, tim=3.804348e-05
      N=5000, tim=3.804348e-05
      N=5000, tim=3.804348e-05
      N=5000, tim=3.804348e-05
      N=5000, tim=3.804348e-05
      N=5000, tim=4.347826e-05
      N=5000, tim=3.804348e-05
make[8]: *** [cscalcase] Error 11
make[8]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/level1/Linux_P4ESSE2_4'
make[8]: Entering directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/level1/Linux_P4ESSE2_4'
rm -f cscal.c cscal.o
cp ../SCAL/cscal2p28_x1.c cscal.c
/usr/bin/gcc -DL2SIZE=1048576 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/Linux_P4ESSE2_4 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib  -DAdd__ -DStringSunStyle -DATL_OS_Linux -DATL_ARCH_P4E -DATL_SSE2 -DATL_SSE1 -DATL_GAS_x8632 -DATL_NCPU=4 -DL2SIZE=1048576 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/Linux_P4ESSE2_4 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib  -DAdd__ -DStringSunStyle -DATL_OS_Linux -DATL_ARCH_P4E -DATL_SSE2 -DATL_SSE1 -DATL_GAS_x8632 -DATL_NCPU=4 -O2 -march=pentium4 -DSCPLX -c cscal.c
/usr/bin/gcc -DL2SIZE=1048576 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/Linux_P4ESSE2_4 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib  -DAdd__ -DStringSunStyle -DATL_OS_Linux -DATL_ARCH_P4E -DATL_SSE2 -DATL_SSE1 -DATL_GAS_x8632 -DATL_NCPU=4  -o xcscal cscaltime.o \
           ATL_cscal_stub.o cscal.o \
              /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/sysinfo/Linux_P4ESSE2_4/time.o -lpthread -lm
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/bin/Linux_P4ESSE2_4/ATLrun.sh /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/level1/Linux_P4ESSE2_4 xcscal -n 5000 -f res/cSCAL2_a2b2x1y0
      N=5000, tim=4.347826e-05
      N=5000, tim=4.347826e-05
      N=5000, tim=4.347826e-05
   N=5000, time=4.347826e-05, mflop=690.000000
N=5000, incX=1, mflop = 690.000000
make[8]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/level1/Linux_P4ESSE2_4'
make[8]: Entering directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/level1/Linux_P4ESSE2_4'
rm -f cscal.c cscal.o
cp ../SCAL/cscal1_x0.c cscal.c
/usr/bin/gcc -DL2SIZE=1048576 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/Linux_P4ESSE2_4 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib  -DAdd__ -DStringSunStyle -DATL_OS_Linux -DATL_ARCH_P4E -DATL_SSE2 -DATL_SSE1 -DATL_GAS_x8632 -DATL_NCPU=4 -DL2SIZE=1048576 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/Linux_P4ESSE2_4 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib  -DAdd__ -DStringSunStyle -DATL_OS_Linux -DATL_ARCH_P4E -DATL_SSE2 -DATL_SSE1 -DATL_GAS_x8632 -DATL_NCPU=4 -O2 -march=pentium4 -DSCPLX -c cscal.c
/usr/bin/gcc -DL2SIZE=1048576 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/Linux_P4ESSE2_4 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib  -DAdd__ -DStringSunStyle -DATL_OS_Linux -DATL_ARCH_P4E -DATL_SSE2 -DATL_SSE1 -DATL_GAS_x8632 -DATL_NCPU=4  -o xcscal cscaltime.o \
           ATL_cscal_stub.o cscal.o \
              /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/sysinfo/Linux_P4ESSE2_4/time.o -lpthread -lm
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/bin/Linux_P4ESSE2_4/ATLrun.sh /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/level1/Linux_P4ESSE2_4 xcscal -n 5000 -f res/cSCAL1_a2b2x1y0
      N=5000, tim=3.804348e-05
      N=5000, tim=4.347826e-05
      N=5000, tim=3.804348e-05
      N=5000, tim=4.347826e-05
      N=5000, tim=3.804348e-05
   N=5000, time=3.804348e-05, mflop=788.571429
N=5000, incX=1, mflop = 788.571429
make[8]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/level1/Linux_P4ESSE2_4'
NO GENERAL CASE SURVIVED!!  ABORTING!!
  ID  incX  incY  alpha  beta  ROUT
====  ====  ====  =====  ====  =============
   1     0     0     2     2  cscal1_x0.c
   2     1     0     2     2  cscal2p28_x1.c

  ID  incX  incY  alpha  beta  ROUT
====  ====  ====  =====  ====  =============
   1     0     0     2     2  cscal1_x0.c
   2     1     0     2     2  cscal2p28_x1.c

   incX  incY  alpha  beta    ID  ROUTINE
   ====  ====  =====  ====  ====  ==================
      0     0      2     2    -1  UNKNOWN
      1     0      2     2    -1  UNKNOWN

TIM: make cscalcase N=5000 urout=cscal1_x0.c fout="-f res/cSCAL1_a2b2x1y0" opt=""
TIM: make cscalcase N=5000 urout=cscal2p28_x1.c fout="-f res/cSCAL2_a2b2x1y0" opt=""
TIM: make cscalcase N=5000 urout=cscal1_x0.c fout="-f res/cSCAL1_a2b2x1y0" opt=""
make[7]: *** [cinstall_scal] Error 255
make[7]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/level1/Linux_P4ESSE2_4'
make[6]: *** [Make_cscal] Error 2
make[6]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/src/blas/level1/Linux_P4ESSE2_4'
make[5]: *** [cgen] Error 2
make[5]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/src/blas/level1/Linux_P4ESSE2_4'
make[4]: *** [clib] Error 2
make[4]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/src/blas/level1/Linux_P4ESSE2_4'
make[3]: *** [lib.grd] Error 2
make[3]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/src/auxil/Linux_P4ESSE2_4'
make[2]: *** [IStage1] Error 2
make[2]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/bin/Linux_P4ESSE2_4'
ERROR 396 DURING CACHESIZE SEARCH!!.  CHECK INSTALL_LOG/Stage1.log FOR DETAILS.
make[2]: Entering directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/bin/Linux_P4ESSE2_4'
cd ../.. ; make error_report arch=Linux_P4ESSE2_4
make[3]: Entering directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS'
make -f Make.top error_report arch=Linux_P4ESSE2_4
make[4]: Entering directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS'
uname -a 2>&1 >> bin/Linux_P4ESSE2_4/INSTALL_LOG/ERROR.LOG
/usr/bin/gcc -v 2>&1  >> bin/Linux_P4ESSE2_4/INSTALL_LOG/ERROR.LOG
Reading specs from /usr/lib/gcc/i686-pc-linux-gnu/3.4.6/specs
Configured with: /var/tmp/portage/gcc-3.4.6/work/gcc-3.4.6/configure --prefix=/usr --bindir=/usr/i686-pc-linux-gnu/gcc-bin/3.4.6 --includedir=/usr/lib/gcc/i686-pc-linux-gnu/3.4.6/include --datadir=/usr/share/gcc-data/i686-pc-linux-gnu/3.4.6 --mandir=/usr/share/gcc-data/i686-pc-linux-gnu/3.4.6/man --infodir=/usr/share/gcc-data/i686-pc-linux-gnu/3.4.6/info --with-gxx-include-dir=/usr/lib/gcc/i686-pc-linux-gnu/3.4.6/include/g++-v3 --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu --disable-altivec --enable-nls --without-included-gettext --with-system-zlib --disable-checking --disable-werror --disable-libunwind-exceptions --disable-multilib --enable-java-awt=gtk --enable-languages=c,c++,java,f77 --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu
Thread model: posix
gcc version 3.4.6 (Gentoo 3.4.6, ssp-3.4.5-1.0, pie-8.7.9)
/usr/bin/gcc -V 2>&1  >> bin/Linux_P4ESSE2_4/INSTALL_LOG/ERROR.LOG
gcc: `-V' option must have argument
make[4]: [error_report] Error 1 (ignored)
/usr/bin/gcc --version 2>&1  >> bin/Linux_P4ESSE2_4/INSTALL_LOG/ERROR.LOG
/bin/tar  cf error_Linux_P4ESSE2_4.tar Make.Linux_P4ESSE2_4 bin/Linux_P4ESSE2_4/INSTALL_LOG/*
/bin/gzip  --best error_Linux_P4ESSE2_4.tar
mv error_Linux_P4ESSE2_4.tar.gz error_Linux_P4ESSE2_4.tgz
make[4]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS'
make[3]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS'
make[2]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/bin/Linux_P4ESSE2_4'
Error report error_<ARCH>.tgz has been created in your top-level ATLAS
directory.  Be sure to include this file in any help request.


First, make sure this error is not covered in the ATLAS errata file,
   http://math-atlas.sourceforge.net/errata.html
All known errors, and most common mistakes/system problems are documented
in this file, so it will save everyone hassle in the long run if you take
the time to scope it out before sending e-mail to the help list.

If this does not have the solution to your problem, and you can't figure out
what went wrong, submit a support request to the ATLAS support tracker, as
discussed here:
   http://math-atlas.sourceforge.net/faq.html#help

In the above examples, <ARCH> should be replaced with your architecture
string, such as "Linux_PIII" or "FreeBSD_21264".

make[1]: *** [install] Error 255
make[1]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS'
make: *** [install] Error 2

!!! ERROR: sci-libs/blas-atlas-3.7.11 failed.
Call stack:
  ebuild.sh, line 1526:   Called dyn_compile
  ebuild.sh, line 923:   Called src_compile
  blas-atlas-3.7.11.ebuild, line 119:   Called die

!!! Failed to install blas-atlas
Comment 5 Martin Mokrejš 2006-04-09 05:46:56 UTC
Created attachment 84262 [details]
error_Linux_P4ESSE2_4.tgz
Comment 6 Markus Dittrich (RETIRED) gentoo-dev 2006-04-09 07:52:02 UTC
Hi Martin,

Well, the timing error clearly has nothing to do with upgrading
eselect and is a well known issue with blas-atlas. You may have
a look at the atlas FAQ and follow the steps there
http://math-atlas.sourceforge.net/errata.html#tol
Sometimes, simply re-emerging it also helps (possibly
depending on the processor load at compile time). Please
let us know how that goes.

best,
Markus
Comment 7 Markus Dittrich (RETIRED) gentoo-dev 2006-08-25 06:00:00 UTC
Hi,

Have you been able to successfully emerge blas-atlas or do your timing
errors persist? In the former case I'd like to close this bug.

Thanks,
Markus
Comment 8 Fabio Rossi 2006-09-23 10:49:42 UTC
Here there is the same problem:

make[5]: Entering directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/gemv/Linux_PIIISSE1'
/usr/bin/gcc -c -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/gemv/Linux_PIIISSE1 -fomit-frame-pointer -O2 -DL2SIZE=1048576 -I/var/tmp/portage/
              -DSREAL -DBETA0 -DALPHA1 ATL_sgemvN.c
In file included from /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/ATL_gemv_ger_SSE.h:54,
                 from ATL_sgemvN.c:54:
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In function `dp2dpNb0':
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488: error: syntax error before "volatile"
In file included from /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/ATL_gemv_ger_SSE.h:62,
                 from ATL_sgemvN.c:54:
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In function `dp1dpNb0':
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488: error: syntax error before "volatile"
In file included from /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/ATL_gemv_ger_SSE.h:68,
                 from ATL_sgemvN.c:54:
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In function `dp2dpNb0m':
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488: error: syntax error before "volatile"
make[5]: *** [ATL_sgemvN_b0.o] Error 1
make[5]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/gemv/Linux_PIIISSE1'
make[4]: *** [smvtstcaseN] Error 2
make[4]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/gemv/Linux_PIIISSE1'
make smvcaseN mvrout=ATL_gemvN_mm.c cas=1 xu=1 yu=1 l1mul=75 iflag=8 gmvout="-o res/sgemvN_1_75"


Portage 2.1.1 (default-linux/x86/2006.1, gcc-3.4.6, glibc-2.4-r3, 2.6.17-gentoo-r8 i686)
=================================================================
System uname: 2.6.17-gentoo-r8 i686 Intel(R) Pentium(R) III Mobile CPU      1200MHz
Gentoo Base System version 1.12.5
Last Sync: Mon, 18 Sep 2006 18:00:06 +0000
app-admin/eselect-compiler: [Not Present]
dev-java/java-config: 1.2.11-r1
dev-lang/python:     2.3.5-r2, 2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     [Not Present]
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.13-r3
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.17-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-O2 -march=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://www.die.unipd.it/pub/Linux/distributions/gentoo-sources/ http://ftp.students.cs.unibo.it/gentoo/"
LANG="it_IT.UTF-8"
LINGUAS=""
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X aac acl alsa arts asf audiofile bash-completion berkdb bitmap-fonts blas boehm-gc browserplugin bzip2 cairo cddb cdparanoia cdr chroot clamav cli cmucl crypt cups curl dlloader dri dv dvb dvd dvdread elibc_glibc encode ethereal examples exif fame fbcon ffmpeg fftw firefox fortran fpx gcj gd gdbm gimpprint gmp gnutls gpm graphviz gs gtk gtk2 gtkhtml imagemagick imlib innodb input_devices_evdev input_devices_keyboard input_devices_mouse input_devices_synaptics isdnlog java jbig jpeg jpeg2k kdeenablefinal kernel_linux lcms libg++ live lm_sensors lzo mad mime mjpeg mmx mozdevelop mozsvg mozxmlterm mpeg ncurses network nls nntp nptl nptlonly nsplugin odbc ogg opengl oss pam pcre perl plotutils png ppds pppd python qt3 readline real reflection sdk sdl session skey smime spl sse ssl stats svg tcltk tcpd theora threads tiff truetype truetype-fonts type1 type1-fonts udev unicode userland_GNU utf8 video_cards_fbdev video_cards_radeon video_cards_vesa video_cards_vga vim-with-x vorbis wifi win32codecs wmf wxgtk1 wxwindows xanim xine xorg xv xvid yv12 zlib"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 9 Fabio Rossi 2006-09-23 11:55:03 UTC
I have just solved removing these lines from the ebuild:

    sed -i \
        -e "s:ASM:ASM VOLATILE:" \
        include/contrib/camm_dpa.h \
        || die "sed failed to fix clobbering"

because in ATLAS/include/contrib/camm_util.h ASM is redefined as 

#undef ASM
#define ASM __asm__ VOLATILE
Comment 10 Fabio Rossi 2006-09-24 13:52:13 UTC
But then I get clobbering errors:

 /usr/bin/gcc -c -DL2SIZE=1048576 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/Linux_PIIISSE1 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib -DAdd__ -DStringSunStyle -DATL_OS_Linux -DATL_ARCH_PIII -DATL_SSE1 -DATL_GAS_x8632 -fomit-frame-pointer -O2 -DSREAL -DATL_NOL1PREFETCH -DATL_NOL2PREFETCH -DBETA1 -DALPHA1 -DATL_sgemvN_a1_x1_b1_y1=ATL_sgemvS_a1_x1_b1_y1 ATL_sgemvS.c  -fPIC -DPIC -o .libs/ATL_sgemvS_b1.o
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In function `dp1dpNb1':
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488: error: PIC register `bx' clobbered in `asm'
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In function `dp2dpNb1m':
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488: error: PIC register `bx' clobbered in `asm'
make[4]: *** [ATL_sgemvS_b1.o] Error 1
make[4]: *** Waiting for unfinished jobs....
 /usr/bin/gcc -c -DL2SIZE=1048576 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/Linux_PIIISSE1 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib -DAdd__ -DStringSunStyle -DATL_OS_Linux -DATL_ARCH_PIII -DATL_SSE1 -DATL_GAS_x8632 -fomit-frame-pointer -O2 -DSREAL -DATL_NOL1PREFETCH -DATL_NOL2PREFETCH -DBETA0 -DALPHA1 -DATL_sgemvN_a1_x1_b0_y1=ATL_sgemvS_a1_x1_b0_y1 ATL_sgemvS.c  -fPIC -DPIC -o .libs/ATL_sgemvS_b0.o
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In function `dp1dpNb0':
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488: error: PIC register `bx' clobbered in `asm'
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In function `dp2dpNb0m':
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488: error: PIC register `bx' clobbered in `asm'
make[4]: *** [ATL_sgemvS_b0.o] Error 1
make[4]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/src/blas/gemv/Linux_PIIISSE1'
make[3]: *** [slib] Error 2
make[3]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/src/blas/gemv/Linux_PIIISSE1'
make[2]: *** [IBuildLibs] Error 2
make[2]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/bin/Linux_PIIISSE1'

and

 /usr/bin/gcc -c -DL2SIZE=1048576 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/Linux_PIIISSE1 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib -DAdd__ -DStringSunStyle -DATL_OS_Linux -DATL_ARCH_PIII -DATL_SSE1 -DATL_GAS_x8632 -fomit-frame-pointer -O2 -DSREAL -DATL_NOL1PREFETCH -DATL_NOL2PREFETCH -DBETA1 -DALPHA1 -DATL_sgemvN_a1_x1_b1_y1=ATL_sgemvS_a1_x1_b1_y1 ATL_sgemvS.c  -fPIC -DPIC -o .libs/ATL_sgemvS_b1.o
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In function `dp1dpNb1':
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488: error: PIC register `bx' clobbered in `asm'
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In function `dp2dpNb1m':
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488: error: PIC register `bx' clobbered in `asm'
make[8]: *** [ATL_sgemvS_b1.o] Error 1
make[8]: *** Waiting for unfinished jobs....
 /usr/bin/gcc -c -DL2SIZE=1048576 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/Linux_PIIISSE1 -I/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib -DAdd__ -DStringSunStyle -DATL_OS_Linux -DATL_ARCH_PIII -DATL_SSE1 -DATL_GAS_x8632 -fomit-frame-pointer -O2 -DSREAL -DATL_NOL1PREFETCH -DATL_NOL2PREFETCH -DBETA0 -DALPHA1 -DATL_sgemvN_a1_x1_b0_y1=ATL_sgemvS_a1_x1_b0_y1 ATL_sgemvS.c  -fPIC -DPIC -o .libs/ATL_sgemvS_b0.o
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In function `dp1dpNb0':
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488: error: PIC register `bx' clobbered in `asm'
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In function `dp2dpNb0m':
/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488: error: PIC register `bx' clobbered in `asm'
make[8]: *** [ATL_sgemvS_b0.o] Error 1
make[8]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/src/blas/gemv/Linux_PIIISSE1'
make[7]: *** [slib] Error 2
make[7]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/src/blas/gemv/Linux_PIIISSE1'
make[6]: *** [sl2lib] Error 2
make[6]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/bin/Linux_PIIISSE1'
make[5]: *** [sbindep] Error 2
make[5]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/level3/Linux_PIIISSE1'
make[4]: *** [xsinvtrsm] Error 2
make[4]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/level3/Linux_PIIISSE1'
make[3]: *** [res/sTRSM_NB] Error 2
make[3]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/tune/blas/level3/Linux_PIIISSE1'
make[2]: *** [IPostTune] Error 2
make[2]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/bin/Linux_PIIISSE1'
 
So the fix in the ebuild to remove clobbering errors isn't right
Comment 11 Markus Dittrich (RETIRED) gentoo-dev 2006-09-25 05:44:38 UTC
(In reply to comment #8)
> /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488:
> error: syntax error before "volatile"
> In file included from
> /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/ATL_gemv_ger_SSE.h:62,
>                  from ATL_sgemvN.c:54:
> /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In
> function `dp1dpNb0':
> /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488:
> error: syntax error before "volatile"
> In file included from
> /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/ATL_gemv_ger_SSE.h:68,
>                  from ATL_sgemvN.c:54:
> /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h: In
> function `dp2dpNb0m':
> /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/include/contrib/camm_dpa.h:1488:
> error: syntax error before "volatile"
> make[5]: *** [ATL_sgemvN_b0.o] Error 1

Thanks for your report and I will have a look at it! This piece of asm has 
caused grief in the past! Does your build fail at this point or does atlas'
build system continue despite the failure?

Thanks,
Markus
Comment 12 Fabio Rossi 2006-09-25 12:57:24 UTC
(In reply to comment #11)
> 
> Thanks for your report and I will have a look at it! This piece of asm has 
> caused grief in the past! Does your build fail at this point or does atlas'
> build system continue despite the failure?
> 
> Thanks,
> Markus
> 

The compilation goes on but then it fails with

libtool --mode=install install -s libblas.la /var/tmp/portage/blas-atlas-3.7.11/work/ATLAS/gentoo/libs
/bin/sh: line 0: cd: gentoo/libf77blas.a: No such file or directory
libtool: link: `*.lo' is not a valid libtool object
gcc: .libs/*.o: No such file or directory
libtool: install: `libblas.la' is not a valid libtool archive
Try `libtool --help --mode=install' for more information.
make[1]: *** [libblas.so] Error 1
make[1]: Leaving directory `/var/tmp/portage/blas-atlas-3.7.11/work/ATLAS'
make: *** [shared-strip] Error 2
Comment 13 Fabio Rossi 2006-09-25 13:01:51 UTC
Created attachment 98060 [details, diff]
clobbering.patch

Is it correct the attached patch to solve clobbering problems? The ebx register is saved/restored on/from the stack in ATLAS/include/contrib/camm_dpa.h so I guess it can be removed from the clobbering list in the inline assembly code
Comment 14 Markus Dittrich (RETIRED) gentoo-dev 2006-09-25 22:09:22 UTC
(In reply to comment #13)
> Created an attachment (id=98060) [edit]
> clobbering.patch
> 
> Is it correct the attached patch to solve clobbering problems? The ebx register
> is saved/restored on/from the stack in ATLAS/include/contrib/camm_dpa.h so I
> guess it can be removed from the clobbering list in the inline assembly code
> 

Thank you very much for the patch. I just had a closer look at the asm
in camm_dpa.h and the current ASM -> ASM VOLATILE patch in the ebuild
definitely has a problem. Getting rid of the bx registers from the clobbers looks
pretty safe, but I'll have to do some testing. 
In any case, you might want to give 3.7.17 a shot and see if it compiles for
you. This version is currently package.mask'ed but should work fine and
perform well. I've been using it for a while now. I'll post back once I have
more news regarding the clobbering issues.

Thanks,
Markus
Comment 15 Fabio Rossi 2006-09-26 05:08:42 UTC
(In reply to comment #14)
> Thank you very much for the patch. I just had a closer look at the asm
> in camm_dpa.h and the current ASM -> ASM VOLATILE patch in the ebuild
> definitely has a problem. 

Yes, the ASM VOLATILE patch in the ebuild is not needed.
 
> Getting rid of the bx registers from the clobbers looks
> pretty safe, but I'll have to do some testing. 
> In any case, you might want to give 3.7.17 a shot and see if it compiles for
> you. This version is currently package.mask'ed but should work fine and
> perform well. I've been using it for a while now.

I have just compiled (the vanilla version in portage): it takes a lot of time (the log is 20M) :-) The compilation/installation with the ebuild command finishes but there are some errors. I'll report them in the bug #144314.

> I'll post back once I have
> more news regarding the clobbering issues.

Ok, I'll wait for your news.

Thanks!
Comment 16 Markus Dittrich (RETIRED) gentoo-dev 2006-09-28 06:03:02 UTC
(In reply to comment #15)
> > I'll post back once I have
> > more news regarding the clobbering issues.
> 
> Ok, I'll wait for your news.
> 
> Thanks!
> 

I think the patch is good and I've applied it to 3.7.17 for now.
If it doesn't break any of the non-x86 arches we might want to backport
it to the current stable 3.7.11.

Regarding the 3.7.17 compile errors; I have them as well but I am not
sure at the moment if they are "bad". I'll check with upstream to see
what they have to say about it.

Thanks,
Markus
Comment 17 Markus Dittrich (RETIRED) gentoo-dev 2006-10-05 18:20:24 UTC
This asm clobbering has been fixed in 3.7.11-r1 and 3.7.17 and seems
to work fine. Hence I am closing this bug. Thanks again for your patch!

Best,
Markus