Where does __sdivsi3_i4 come from?

Vincent Rubiolo vincent.rubiolo@st.com
Tue Jun 10 15:09:00 GMT 2003


Did you check that you are correctly linking against libgcc? IIRC, these symbs are used by libgcc to 
emulate math hardware instructions (yours should be about division, obviously) if they are not found 
on a certain architecture.

Hopes that helps,


kernel-hacker@bennee.com wrote:

> Hi,
> I'm currently porting the isp1161 usb driver to my SH kernel and I've
> come across a bizare symbol problem.
> When I try to insmod the compiled module I get the following error:
> root@ insmod hc_isp116x.o
> hc_isp116x.o: unresolved symbol __sdivsi3_i4
> I can get the line to disappear by commenting out the function call, but
> I have no idea what causes it as the function is currently NULL and
> called from three other places in the code without causing the failure.
> If looked at the .s output put asside from seeing the function call made
> I can't figure out what line of code is causing this. 
> I did some grepping in the kernel and found this
> ./arch/sh/kernel/sh_ksyms.c:DECLARE_EXPORT(__sdivsi3);
> with the comment that:
> /* These symbols are generated by the compiler itself */
> So far googling hasn't enlightend me. Anyone got any ideas? Appologies
> for the gratuitous cross-posting but I'm unsure if this is a gcc or sh
> issue.

Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com

More information about the crossgcc mailing list