Appears to be invalid code produced when -mthumb selected.
Happens with gcc 4.1.1 and 4.2.2 when compiling with:
arm-rtems4.9-gcc -mcpu=arm7tdmi -mthumb -O2 -c /tmp/test1.c
/tmp/cccISkv7.s: Assembler messages:
/tmp/cccISkv7.s:205: Error: unshifted register required -- `eor
r2,r3,r3,ROR#16'
/tmp/cccISkv7.s:206: Error: unshifted register required -- `bic
r2,r2,#0xff0000'
/tmp/cccISkv7.s:208: Error: unshifted register required -- `eor r3,r3,r2,LSR#8'
/tmp/cccISkv7.s:217: Error: unshifted register required -- `eor
r3,r2,r2,ROR#16'
/tmp/cccISkv7.s:218: Error: unshifted register required -- `bic
r3,r3,#0xff0000'
/tmp/cccISkv7.s:220: Error: unshifted register required -- `eor r2,r2,r3,LSR#8'
/tmp/cccISkv7.s:236: Error: unshifted register required -- `eor r2,r3,r3,ROR#16
.....
Assembler was invoked as
/opt/rtems-4.9/lib/gcc/arm-rtems4.9/4.2.2/../../../../arm-rtems4.9/bin/as -mcpu
=arm7tdmi -mfpu=softfpa -o test1.o /tmp/cc7F7jPZ.s
When I compile test2.c, it gives errors about duplicate type definitions. That
is the same file with cpp comments removed. Strange.
--
Summary: Illegal assembly on ARM/Thumb
Product: gcc
Version: 4.2.2
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: joel at gcc dot gnu dot org
GCC target triplet: arm-unknown-rtems
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34436