I can reproduce this with FSF gcc-4.5/4.6 and binutils-2.20.1 on armv5tel-linux-gnueabi:
> gcc/xgcc -Bgcc -mcpu=cortex-m3 -mthumb -O2 -c MyFile.c /tmp/ccCisNkW.s: Assembler messages: /tmp/ccCisNkW.s:27: Error: immediate value out of range -- `movt r3,-32768'
With gcc-4.4 the error does not occur.
I can reproduce this with FSF gcc-4.5/4.6 and binutils-2.20.1 on armv5tel- linux-gnueabi:
> gcc/xgcc -Bgcc -mcpu=cortex-m3 -mthumb -O2 -c MyFile.c
/tmp/ccCisNkW.s: Assembler messages:
/tmp/ccCisNkW.s:27: Error: immediate value out of range -- `movt r3,-32768'
With gcc-4.4 the error does not occur.