This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
problem with __mulsi3 and __divsi3 __umodsi3 operators
- To: "'ecos-discuss at sources dot redhat dot com'" <ecos-discuss at sources dot redhat dot com>
- Subject: [ECOS] problem with __mulsi3 and __divsi3 __umodsi3 operators
- From: Suet Fei Li <suetfei at bwrc dot eecs dot berkeley dot edu>
- Date: Tue, 5 Dec 2000 01:58:06 -0800
Hi guys, I am porting ecos to a new processor (Xtensa). And when I tried to
link the whole thing together, I had this weird problem. The compiler
complains:
_______
xt-gcc -nostartfiles -LM:\ecos_xtensa3\install/lib -Wl -o cpu_1 comms.o
inst
_ui_2.o inst_transport_1_transport_bs.o inst_transport_1_transport_remote.o
inst
_transport_1_merge2.o inst_transport_1_data_converter.o
inst_transport_1_merge1.
o param.o tasks.o user_start.o memset.o memcpy.o -Ttarget.ld -nostdlib
M:/ecos_xtensa3/install/lib/libtarget.a(infra_diag.o): In function
`diag_write_num':
//E/PROGRA~1/CYGNUS~1/eCos/packages/infra/v1_2_1/src/diag.cxx:190: undefined
reference to `__umodsi3'
//E/PROGRA~1/CYGNUS~1/eCos/packages/infra/v1_2_1/src/diag.cxx:192: undefined
reference to `__udivsi3'
M:/ecos_xtensa3/install/lib/libtarget.a(kernel_memfixed.o): In function
`Cyg_Mem
polt2<Cyg_Mempool_Fixed_Implementation>::try_alloc(int)':
//M/ecos_xtensa3/install/include/cyg/kernel/mempolt2.hxx(.text+0xd):
undefined reference to `__divsi3'
//M/ecos_xtensa3/install/include/cyg/kernel/mempolt2.hxx(.text+0x2a):
undefined reference to `__mulsi3'
//M/ecos_xtensa3/install/include/cyg/kernel/mempolt2.hxx(.text+0x51):
undefined reference to `__mulsi3'
//M/ecos_xtensa3/install/include/cyg/kernel/mempolt2.hxx(.gnu.linkonce.t.fre
e__t12Cyg_Mempolt21Z32Cyg_Mempool_Fixed_ImplementationPUci+0x2b): undefined
reference to `__divsi3'
//M/ecos_xtensa3/install/include/cyg/kernel/mempolt2.hxx(.gnu.linkonce.t.fre
e__t12Cyg_Mempolt21Z32Cyg_Mempool_Fixed_ImplementationPUci+0x32): undefined
reference to `__mulsi3'
M:/ecos_xtensa3/install/lib/libtarget.a(kernel_memfixed.o): In function
`Cyg_Mempool_Fixed::~Cyg_Mempool_Fixed(void)':
//E/PROGRA~1/CYGNUS~1/eCos/packages/kernel/v1_2_1/src/mem/memfixed.cxx:92:
undefined reference to `__mulsi3'
M:/ecos_xtensa3/install/lib/libtarget.a(kernel_memfixed.o): In function
`Cyg_Mempolt2<Cyg_Mempool_Fixed_Implementation>::try_alloc(int)':
//M/ecos_xtensa3/install/include/cyg/kernel/mempolt2.hxx(.gnu.linkonce.t.get
_freemem__t12Cyg_Mempolt21Z32Cyg_Mempool_Fixed_Implementation+0x1e):
undefined reference to `__mulsi3'
//M/ecos_xtensa3/install/include/cyg/kernel/mempolt2.hxx(.gnu.linkonce.t.get
_totalmem__t12Cyg_Mempolt21Z32Cyg_Mempool_Fixed_Implementation+0x1e):
undefined reference to `__mulsi3'
//M/ecos_xtensa3/install/include/cyg/kernel/mempolt2.hxx(.gnu.linkonce.t.try
_alloc__t12Cyg_Mempolt21Z32Cyg_Mempool_Fixed_Implementationi+0x63):
undefined reference to `__mulsi3'
M:/ecos_xtensa3/install/lib/libtarget.a(kernel_memfixed.o)(.gnu.linkonce.t.a
lloc__t12Cyg_Mempolt21Z32Cyg_Mempool_Fixed_ImplementationiUx+0x63)://M/ecos_
xtensa3/install/include/cyg/kernel/mempolt2.hxx: more undefined references
to `__mulsi3'
....
--------
Seems like it has problem finding arithmatic operators like: \, % and
multiply etc.
Does anyone have any insight on this? I am totally lost. Any help will be
great.
suetfei