It is not a bug with gcc... it is just that you are not using the right
flag use -march=armv6z.
Regards,
Sundar.
Anil Thoppil wrote:
> Hi,
>
> arm gcc not able to compile smc instruction when -march=armv6 but it
> compiles correctly when -march=armv7a is it a bug in gcc
>
>
> arm-none-linux-gnueabi-gcc -Wp,-MD,/home/anilpaul/module/.secure.o.d
> -nostdinc -isystem
> /home/anilpaul/arm-2006q3/bin/../lib/gcc/arm-none-linux-gnueabi/4.1.1/in clude
> -D__KERNEL__ -Iinclude -include include/linux/autoconf.h
> -mlittle-endian -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs
> -fno-strict-aliasing -fno-common -Os -fno-omit-frame-pointer -mapcs
> -mno-sched-prolog -mabi=aapcs-linux -mno-thumb-interwork
> -D__LINUX_ARM_ARCH__=6 -march=armv6 -mtune=strongarm -msoft-float
> -Uarm -fno-omit-frame-pointer -fno-optimize-sibling-calls -g
> -fno-stack-protector -Wdeclaration-after-statement -Wno-pointer-sign
> -DMODULE -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(secure)"
> -D"KBUILD_MODNAME=KBUILD_STR(secure)" -c -o
> /home/anilpaul/module/secure.o /home/anilpaul/module/secure.c
> /tmp/ccwoKXUg.s: Assembler messages:
> /tmp/ccwoKXUg.s:46: Error: selected processor does not support `smc 0'
> make[2]: *** [/home/anilpaul/module/secure.o] Error 1
> make[1]: *** [_module_/home/anilpaul/module] Error 2
> make[1]: Leaving directory `/home/anilpaul/linux-2.6.19'
> make: *** [default] Error 2
>
> thanks
> --Anil Paul