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

Reply via email to