This is the mail archive of the libc-ports@sources.redhat.com mailing list for the libc-ports project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]