This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Problem with THUMB mode with AT91
- From: Claudio Leonel <cls at xpnet dot com dot br>
- To: ecos-discuss at sources dot redhat dot com
- Date: Mon, 22 Sep 2003 09:52:22 +0000
- Subject: [ECOS] Problem with THUMB mode with AT91
Hi all,
I tried to generate a version of eCos for the AT91 EB55 platform
with THUMB MODE. I set the options in eCos configuration:
- Enable Thumb instruction set
- Enable Thumb interworking compiler option
I also included the '-mthumb' option in the Global Compiler Flags,
because setting the previous options was not enough (bug?).
I got an error in the assembly of the vectors.S file (see below),
but the problem seems to be in the 'hal_platform_setup.h' file in the
macros:"_led_init" and "_led"
It seems that it has instructions that are not THUMB compatible.
I am not familiar with ARM Assembly Language, does anyone know
how to fix this ?
===================================================================================
arm-elf-gcc -Wp,-MD,vectors.tmp
-I/home/LinServ/paks/srcpu1//ecos_ram/ecos_ram_install/include
-I/home/LinServ/paks/ecos/cvs/ecos/packages/hal/arm/arch/current
-I/home/LinServ/paks/ecos/cvs/ecos/packages/hal/arm/arch/current/src
-I/home/LinServ/paks/ecos/cvs/ecos/packages/hal/arm/arch/current/tests
-I. -mcpu=arm7tdmi -mthumb -mno-short-load-words -Wall -Wpointer-arith
-Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2
-ffunction-sections -fdata-sections -fno-rtti -fno-exceptions
-fvtable-gc -finit-priority -c -o
/home/LinServ/paks/srcpu1//ecos_ram/ecos_ram_install/lib/vectors.o
/home/LinServ/paks/ecos/cvs/ecos/packages/hal/arm/arch/current/src/vectors.S
/home/LinServ/paks/ecos/cvs/ecos/packages/hal/arm/arch/current/src/vectors.S:
Assembler messages:
/home/LinServ/paks/ecos/cvs/ecos/packages/hal/arm/arch/current/src/vectors.S:427:
Error: invalid immediate -- `mov r1,#0x0000FF00'
/home/LinServ/paks/ecos/cvs/ecos/packages/hal/arm/arch/current/src/vectors.S:427:
Error: invalid immediate -- `mov r1,#(3<<8)'
/home/LinServ/paks/ecos/cvs/ecos/packages/hal/arm/arch/current/src/vectors.S:457:
Error: invalid immediate -- `mov r1,#0x0000FF00'
/home/LinServ/paks/ecos/cvs/ecos/packages/hal/arm/arch/current/src/vectors.S:457:
Error: invalid immediate -- `mov r1,#(2<<8)'
/home/LinServ/paks/ecos/cvs/ecos/packages/hal/arm/arch/current/src/vectors.S:462:
Error: invalid immediate -- `mov r1,#0x0000FF00'
/home/LinServ/paks/ecos/cvs/ecos/packages/hal/arm/arch/current/src/vectors.S:462:
Error: invalid immediate -- `mov r1,#(1<<8)'
===================================================================================
Regards,
Claudio L. Salvadori
Elaxys Tecnologia
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss