This is the mail archive of the
libc-ports@sources.redhat.com
mailing list for the libc-ports project.
Re: [PATCH] powerpc: 405/440/464/476 support and optimizations
On Fri, 20 Jan 2012 09:52:22 -0600
"Ryan S. Arnold" <ryan.arnold@gmail.com> wrote:
_omissis__
>
> Integration can often expose problems, but I suspect something else is
> going on here...
>
> Does the machine you're building this toolchain on understand the
> 440fp instruction set? If not then the loader is likely encountering
> a sigill.
>
> The solution to this situation is to enable cross compiling prior to
> running configure. This will prevent the build from attempting to run
> any of the code.
>
> echo "cross-compiling=yes" >> configparms
>
> If that's not the problem I would suggest trying to build using 440 without fp.
>
hi,
also without fp it makes no difference and i still have the same problem.
Just to be sure about the compiler[1]... i simply removed those seven files (the optimized routines) and i successfully built it "--with-cpu=440 --with-fp". Indeed i've always been able to build everything, even, with very aggressive cflags[2] without any kind of issues.
> If that works then I suspect that the problem is related to the string
> routine optimizations that one of my guys put in for the 476
> processor. It was requested that we provide it to the entire 4xx
> series since the instructions used (allegedly) weren't unique to the
> 476.
>
> It'd be interesting to run a debugger against the loader at this point
> and identify whether you're encountering a sigill or a sigsegv.
>
btw, i guess a SIGSEGV because it simply stuck there and cpu goes idle.
If you need i can provide to you an ssh access on this little board [3].
best,
--nico
[1]
binutils-2.21.1, gcc-4.5.3, glibc-2.12.2
gmp-5.0.2-2, mpfr-3.1.0-p3, mpc-0.9
ppl-0.11.2, cloog-ppl-0.15.11
[2]
"-O3 -mcpu=440fp -mmulhw -mdlmzb -pipe -fsigned-char -mpowerpc-gfxopt -fpeel-loops -ftracer -fgraphite-identity -floop-parallelize-all -ftree-loop-linear -ftree-loop-distribution -funroll-loops -floop-interchange -floop-strip-mine -floop-block"
[3]
root@sam4x0:~# uname -a
Linux sam4x0 3.1.10 #1 PREEMPT Fri Jan 20 21:30:46 CET 2012 ppc 440EP Rev. C GNU/Linux
root@sam4x0:~# lscpu
Architecture: ppc
Byte Order: Big Endian
CPU(s): 1
On-line CPU(s) list: 0
Model: acube,sam440ep
BogoMIPS: 1333.33
L1d cache: 32K
L1i cache: 32K
root@sam4x0:~# cat /proc/cpuinfo
processor : 0
cpu : 440EP Rev. C
clock : 666.666660MHz
revision : 24.212 (pvr 4222 18d4)
bogomips : 1333.33
timebase : 666666660
platform : Sam440ep
model : acube,sam440ep
Memory : 1023 MB
root@sam4x0:~# lspci
00:00.0 Bridge: IBM Device 027f
00:0a.0 PCI bridge: Pericom Semiconductor PCI to PCI Bridge (rev 02)
00:0c.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI RV280 [Radeon 9200 PRO] (rev 01)
00:0c.1 Display controller: Advanced Micro Devices [AMD] nee ATI RV280 [Radeon 9200 PRO] (Secondary) (rev 01)
00:0e.0 Mass storage controller: Silicon Image, Inc. SiI 3114 [SATALink/SATARaid] Serial ATA Controller (rev 02)
01:04.0 Multimedia audio controller: Cirrus Logic Crystal CS4281 PCI Audio (rev 01)
01:05.0 USB controller: NEC Corporation USB (rev 43)
01:05.1 USB controller: NEC Corporation USB (rev 43)
01:05.2 USB controller: NEC Corporation USB 2.0 (rev 04)
--
acrux <acrux@cruxppc.org>