Build problems; Please help
Jagat Brahma
jbrahma@riverdelta.com
Tue Jul 25 11:54:00 GMT 2000
>Your problem is that __arm__ is being defined in Thumb mode. The
>-mthumb switch tells gcc to produce Thumb opcodes. The libgcc support
>file gcc/longlong.h however, has an inlined version of the umul_ppmm
>function, which contains ARM instructions. This inlined version
>therefore, should be used in ARM mode, not Thumb mode. The inclusion
>f the inclined version is dependent upon the preprocessor symbol
>__arm__ being defined. This symbol is supposed to be defined in ARM
>mode, but not in Thumb mode.
>
>I suspect that this is happening because your configuration is
>including gcc/config/arm/vxarm.h which unilaterally defines __arm__ in
>CPP_PREDEFINES. I would suggest that you try removing the definition
>from there and allowing the CPP_SPEC code in arm.h to handle defining
>this macro.
Some More Updates on Build Problem. The assembler error was being
generated
because the -mthumb option to gcc was not being passed down to the
assembler.
Because the specs file didn't have that specified. So I added the line
%{mthumb:-mthumb}
to the asm specs in the file /home/jbrahma/local/zip/build-egcs/gcc/specs
The diff is
-------------------------------------------------
*** /home/jbrahma/local/zip/build-egcs/gcc/specs Tue Jul 25 15:29:48
2000
--- /home/jbrahma/local/zip/build-egcs/gcc/specs.bak Tue Jul 25 15:43:44
2000
***************
*** 1,5 ****
*asm:
! %{mbig-endian:-EB} %{mcpu=*:-m%*} %{march=*:-m%*} %{mapcs-*:-mapcs-%*}
%{mapcs-float:-mfloat} %{msoft-float:-mno-fpu}
%{mthumb-interwork:-mthumb-interwork} %{mthumb:-mthumb}
*asm_final:
--- 1,5 ----
*asm:
! %{mbig-endian:-EB} %{mcpu=*:-m%*} %{march=*:-m%*} %{mapcs-*:-mapcs-%*}
%{mapcs-float:-mfloat} %{msoft-float:-mno-fpu}
%{mthumb-interwork:-mthumb-interwork}
*asm_final:
-------------------------------------------------
But I don't know how the specs file is generated from the source files.
So If somebody know where to put the patch in the sources, please mail
me. May be this patch should be also applied to the CVS.
Thanks
JP Brahma
More information about the Gcc
mailing list