From Lloyd.Gomez at amlogic.com Thu Dec 13 23:33:19 2012 From: Lloyd.Gomez at amlogic.com (Lloyd Gomez) Date: Thu, 13 Dec 2012 15:33:19 -0800 Subject: [arm-gnu] Assembler error with VMSR NEON instruction Message-ID: <9E59E1B606725541B67C6B924137ADE237BAD482E1@mbx01-sc.amlogic.com> Hello, I am trying to compile some code for our Cortex-A9 with NEON device and am getting the following error when running the assembler: arm-none-eabi-as -gdwarf2 -mcpu=cortex-a9 -mfpu=neon -mthumb-interwork -I/home/lloyd.gomez/work/project_m8/ucode --defsym Install_Process_Irq=1 --defsym Install_Process_Fiq=1 host_boot_ddr_generic.s -o host_boot_ddr_generic.o host_boot_ddr_generic.s: Assembler messages: host_boot_ddr_generic.s:435: Error: operand 0 must be FPSCR -- `vmsr FPEXC,r0' VMSR is a valid instruction so I don't know why the assembler is complaining. This is too bad because I need this instruction to enable NEON in our chip. Has anyone else run into this problem? Here's my version of arm-none-eabi-as: GNU assembler (Sourcery G++ Lite 2011.03-42) 2.20.51.20100809 Copyright 2010 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License version 3 or later. This program has absolutely no warranty. This assembler was configured for a target of `arm-none-eabi'. Thanks for your help, Lloyd -------------- next part -------------- An HTML attachment was scrubbed... URL: From ricardo_anguiano at mentor.com Thu Dec 13 23:57:40 2012 From: ricardo_anguiano at mentor.com (Ricardo Anguiano) Date: Thu, 13 Dec 2012 15:57:40 -0800 Subject: [arm-gnu] Assembler error with VMSR NEON instruction In-Reply-To: <9E59E1B606725541B67C6B924137ADE237BAD482E1@mbx01-sc.amlogic.com> References: <9E59E1B606725541B67C6B924137ADE237BAD482E1@mbx01-sc.amlogic.com> Message-ID: <50CA6B74.9060501@mentor.com> On 12/13/2012 3:33 PM, Lloyd Gomez wrote: > I am trying to compile some code for our Cortex-A9 with NEON device > and am getting the following error when running the assembler: > > arm-none-eabi-as -gdwarf2 -mcpu=cortex-a9 -mfpu=neon -mthumb-interwork -I/home/lloyd.gomez/work/project_m8/ucode --defsym Install_Process_Irq=1 --defsym Install_Process_Fiq=1 host_boot_ddr_generic.s -o host_boot_ddr_generic.o > > host_boot_ddr_generic.s: Assembler messages: > > host_boot_ddr_generic.s:435: Error: operand 0 must be FPSCR -- `vmsr FPEXC,r0' > > VMSR is a valid instruction so I don?t know why the assembler is > complaining. This is too bad because I need this instruction to > enable NEON in our chip. Has anyone else run into this problem? This looks like a bug patched earlier this year: http://lists.gnu.org/archive/html/bug-binutils/2012-03/msg00097.html > Here?s my version of arm-none-eabi-as: > > GNU assembler (Sourcery G++ Lite 2011.03-42) 2.20.51.20100809 The most recent release is 2012.09-63. Download it from here: http://www.mentor.com/embedded-software/sourcery-tools/sourcery-codebench/editions/lite-edition/ I tried 2012.09-63 on the code snippet from the bug report and as appears to work without complaint: ricardo at sourcerydemo:~/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_EABI$ cat ~/foo.s mov r0, #(0x1 << 30) vmsr fpexc, r0 ricardo at sourcerydemo:~/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_EABI$ bin/arm-none-eabi-as -gdwarf2 -mcpu=cortex-a9 -mfpu=neon -mthumb-interwork ~/foo.s -o ~/foo.o ricardo at sourcerydemo:~/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_EABI$ bin/arm-none-eabi-objdump -d ~/foo.o /home/ricardo/foo.o: file format elf32-littlearm Disassembly of section .text: 00000000 <.text>: 0: e3a00101 mov r0, #1073741824 ; 0x40000000 4: eee80a10 vmsr fpexc, r0 Thanks, -- Ricardo Anguiano Mentor Graphics +1-510-354-6774 From Lloyd.Gomez at amlogic.com Fri Dec 14 09:17:58 2012 From: Lloyd.Gomez at amlogic.com (Lloyd Gomez) Date: Fri, 14 Dec 2012 01:17:58 -0800 Subject: [arm-gnu] Assembler error with VMSR NEON instruction In-Reply-To: <50CA6B74.9060501@mentor.com> References: <9E59E1B606725541B67C6B924137ADE237BAD482E1@mbx01-sc.amlogic.com>, <50CA6B74.9060501@mentor.com> Message-ID: <9E59E1B606725541B67C6B924137ADE237BABF015E@mbx01-sc.amlogic.com> Hi Ricardo, Thank you so much for the quick response. I downloaded 2012.09-63 and was able to successfully compile and run my test. Take care, Lloyd ________________________________________ From: Ricardo Anguiano [ricardo_anguiano at mentor.com] Sent: Thursday, December 13, 2012 3:57 PM To: Lloyd Gomez Cc: arm-gnu at codesourcery.com Subject: Re: [arm-gnu] Assembler error with VMSR NEON instruction On 12/13/2012 3:33 PM, Lloyd Gomez wrote: > I am trying to compile some code for our Cortex-A9 with NEON device > and am getting the following error when running the assembler: > > arm-none-eabi-as -gdwarf2 -mcpu=cortex-a9 -mfpu=neon -mthumb-interwork -I/home/lloyd.gomez/work/project_m8/ucode --defsym Install_Process_Irq=1 --defsym Install_Process_Fiq=1 host_boot_ddr_generic.s -o host_boot_ddr_generic.o > > host_boot_ddr_generic.s: Assembler messages: > > host_boot_ddr_generic.s:435: Error: operand 0 must be FPSCR -- `vmsr FPEXC,r0' > > VMSR is a valid instruction so I don?t know why the assembler is > complaining. This is too bad because I need this instruction to > enable NEON in our chip. Has anyone else run into this problem? This looks like a bug patched earlier this year: http://lists.gnu.org/archive/html/bug-binutils/2012-03/msg00097.html > Here?s my version of arm-none-eabi-as: > > GNU assembler (Sourcery G++ Lite 2011.03-42) 2.20.51.20100809 The most recent release is 2012.09-63. Download it from here: http://www.mentor.com/embedded-software/sourcery-tools/sourcery-codebench/editions/lite-edition/ I tried 2012.09-63 on the code snippet from the bug report and as appears to work without complaint: ricardo at sourcerydemo:~/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_EABI$ cat ~/foo.s mov r0, #(0x1 << 30) vmsr fpexc, r0 ricardo at sourcerydemo:~/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_EABI$ bin/arm-none-eabi-as -gdwarf2 -mcpu=cortex-a9 -mfpu=neon -mthumb-interwork ~/foo.s -o ~/foo.o ricardo at sourcerydemo:~/CodeSourcery/Sourcery_CodeBench_Lite_for_ARM_EABI$ bin/arm-none-eabi-objdump -d ~/foo.o /home/ricardo/foo.o: file format elf32-littlearm Disassembly of section .text: 00000000 <.text>: 0: e3a00101 mov r0, #1073741824 ; 0x40000000 4: eee80a10 vmsr fpexc, r0 Thanks, -- Ricardo Anguiano Mentor Graphics +1-510-354-6774 From oleg.kakorin at gmail.com Mon Dec 17 19:40:24 2012 From: oleg.kakorin at gmail.com (Oleg Kakorin) Date: Mon, 17 Dec 2012 14:40:24 -0500 Subject: [arm-gnu] myprog "Shared library" Message-ID: I am building embedded ARM Linux from scratch and compile embedded ARM program with Sourcery CodeBench Lite Edition. I have to fill out embedded system /lib directory with shared libraries. For-instance, I detect what shared libs myprog use: > arm-none-linux-gnueabi-readelf -a myprog | grep "Shared library:" 0x00000001 (NEEDED) Shared library: [libgcc_s.so.1] 0x00000001 (NEEDED) Shared library: [libc.so.6] When I running search CodeSourcery/arm-2012.03/ directory for-instance for ?libc.so.6? I've got three locations: /home/oleg/CodeSourcery/arm-2012.03/arm-none-linux-gnueabi/libc/armv4t/lib /home/oleg/CodeSourcery/arm-2012.03/arm-none-linux-gnueabi/libc/lib /home/oleg/CodeSourcery/arm-2012.03/arm-none-linux-gnueabi/libc/thumb2/lib All of them different size, looks like different libs. Could you tell me, please, how I can detect which one for myprog? Regards, Oleg K. -------------- next part -------------- An HTML attachment was scrubbed... URL: From umar.qureshey at outlook.com Thu Dec 20 06:30:48 2012 From: umar.qureshey at outlook.com (Umar Qureshey) Date: Wed, 19 Dec 2012 22:30:48 -0800 Subject: [arm-gnu] Linking error in arm-none-linux-gnueabi toolchain Message-ID: Hi, I am trying to compile using arm-none-linux-gnueabi-gcc (Sourcery CodeBench Lite 2012.09-64) 4.7.2 I am getting linking errors upon issuance of this command: arm-none-linux-gnueabi-ld -p -X -T arch/arm/vmlinux.lds arch/arm/kernel/head-armv.o arch/arm/kernel/init_task.o init/main.o init/version.o \ ??????????????? --start-group \ ??????????????? arch/arm/kernel/kernel.o arch/arm/mm/mm.o arch/arm/mach-clps711x/clps711x.o kernel/kernel.o mm/mm.o fs/fs.o ipc/ipc.o \ ???????????????? drivers/serial/serial.o drivers/char/char.o drivers/block/block.o drivers/misc/misc.o drivers/net/net.o drivers/media/media.o drivers/video/video.o \ ??????????????? net/network.o \ ??????????????? arch/arm/nwfpe/math-emu.o arch/arm/lib/lib.a /home/umar/iradt/arm-linux/lib/lib.a \ ??????????????? --end-group \ ??????????????? -o vmlinux init/main.o:(.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr0' init/main.o:(.ARM.exidx.text.init+0x0): undefined reference to `__aeabi_unwind_cpp_pr0' init/main.o:(.ARM.exidx.text.init+0x8): undefined reference to `__aeabi_unwind_cpp_pr1' arch/arm/kernel/kernel.o:(.ARM.exidx.text.init+0x0): undefined reference to `__aeabi_unwind_cpp_pr0' arch/arm/kernel/kernel.o:(.ARM.exidx.text.init+0x8): undefined reference to `__aeabi_unwind_cpp_pr0' arch/arm/kernel/kernel.o:(.ARM.exidx.text.init+0x10): undefined reference to `__aeabi_unwind_cpp_pr1' arch/arm/kernel/kernel.o:(.ARM.exidx.text.init+0x18): undefined reference to `__aeabi_unwind_cpp_pr0' arch/arm/kernel/kernel.o:(.ARM.exidx.text.init+0x20): undefined reference to `__aeabi_unwind_cpp_pr0' arch/arm/kernel/kernel.o:(.ARM.exidx.text.init+0x38): undefined reference to `__aeabi_unwind_cpp_pr1' arch/arm/kernel/kernel.o:(.ARM.exidx.text.init+0x40): undefined reference to `__aeabi_unwind_cpp_pr0' arch/arm/kernel/kernel.o:(.ARM.exidx.text.init+0x48): undefined reference to `__aeabi_unwind_cpp_pr0' arch/arm/kernel/kernel.o:(.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr0' arch/arm/kernel/kernel.o:(.ARM.exidx+0x10): undefined reference to `__aeabi_unwind_cpp_pr0' [snipped] arch/arm/nwfpe/math-emu.o: In function `estimateSqrt32': :(.text+0x112c): undefined reference to `__aeabi_uidiv' :(.text+0x114c): undefined reference to `__aeabi_uldivmod' :(.text+0x117c): undefined reference to `__aeabi_uidiv' arch/arm/nwfpe/math-emu.o: In function `estimateDiv128To64': :(.text+0x39f4): undefined reference to `__aeabi_uldivmod' :(.text+0x3a10): undefined reference to `__aeabi_uldivmod' arch/arm/nwfpe/math-emu.o: In function `float32_div': :(.text+0x4700): undefined reference to `__aeabi_uldivmod' arch/arm/nwfpe/math-emu.o: In function `float32_rem': :(.text+0x48a4): undefined reference to `__aeabi_uldivmod' arch/arm/nwfpe/math-emu.o:(.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr0' arch/arm/nwfpe/math-emu.o:(.ARM.exidx+0x20): undefined reference to `__aeabi_unwind_cpp_pr0' [snipped] All these symbols resolve within libgcc or thereabouts because I checked with nm but don't know why the linker is unable to find. Not sure if this'll help but the object code is compiled with: make CFLAGS="-D__KERNEL__ -I/home/umar/iradt/arm-linux/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2? -fno-strict-aliasing -fno-common -fno-builtin-sprintf -Wno-packed -Wno-pointer-sign -fno-common -pipe? -march=armv4 -mtune=arm7tdmi -msoft-float " -C? arch/arm/lib Thanks & Regards, Umar From list-bastian.schick at sciopta.com Thu Dec 20 19:46:31 2012 From: list-bastian.schick at sciopta.com (42Bastian) Date: Thu, 20 Dec 2012 20:46:31 +0100 Subject: [arm-gnu] Linking error in arm-none-linux-gnueabi toolchain In-Reply-To: References: Message-ID: <50D36B17.4010905@sciopta.com> Hi > arm-none-linux-gnueabi-ld -p -X -T arch/arm/vmlinux.lds arch/arm/kernel/head-armv.o arch/arm/kernel/init_task.o init/main.o init/version.o \ Do _everything_ with gcc, compiling C/C++, assembler _and_ linking. -- 42Bastian + | http://www.sciopta.com | Fastest direct message passing kernel. | IEC61508 certified. + From umar.qureshey at outlook.com Fri Dec 21 08:30:46 2012 From: umar.qureshey at outlook.com (Umar Qureshey) Date: Fri, 21 Dec 2012 00:30:46 -0800 Subject: [arm-gnu] Linking error in arm-none-linux-gnueabi toolchain In-Reply-To: References: Message-ID: Solution: The linking succeeds if I remove the -march=armv4 flag. From gds at chartertn.net Fri Dec 28 05:22:03 2012 From: gds at chartertn.net (Gene Smith) Date: Fri, 28 Dec 2012 00:22:03 -0500 Subject: [arm-gnu] Mailing list archives in two places Message-ID: <50DD2C7B.6070206@chartertn.net> The archives for this list are now in two places: Newer: from 2011-Sept forward are here: http://sourcerytools.com/pipermail/arm-gnu/ Older: (pre-Mentor) 2011-Aug to 2004 are here: http://communities.mentor.com/community/cs/archives/arm-gnu/maillist.html (Must scroll through many pages to see it all.) It would be nice if the complete and searchable archive were available in one place or via gmane or similar service. -- Gene