[arm-gnu] Assembler error with VMSR NEON instruction

Ricardo Anguiano ricardo_anguiano at mentor.com
Thu Dec 13 23:57:40 UTC 2012


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



More information about the arm-gnu mailing list