[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

BOUNCE rtl@rtlinux.org: Approval required: Non-member submissionfrom ["Jonas Persson" <jonas.persson@comsys.se>] (fwd)



>From owner-rtl Mon May 28 01:37:13 2001
Received: from kanga.comsys.se (kanga.comsys.ideon.se [194.237.138.68])
	by hq.fsmlabs.com (8.11.2/8.11.2) with ESMTP id f4S7bCs18244
	for <rtl@fsmlabs.com>; Mon, 28 May 2001 01:37:12 -0600
Received: from zeta (zeta [192.168.0.9])
	by kanga.comsys.se (8.9.3/8.9.3/Debian 8.9.3-21) with SMTP id JAA01654
	for <rtl@fsmlabs.com>; Mon, 28 May 2001 09:31:52 +0200
From: "Jonas Persson" <jonas.persson@comsys.se>
To: <rtl@fsmlabs.com>
Subject: SV: [rtl] unresolved symbol __udivdi3 and __umoddi3
Date: Mon, 28 May 2001 09:29:51 +0200
Message-ID: <GBEBJEDLOFFHLCHJLHDLOENFCDAA.jonas.persson@comsys.se>
MIME-Version: 1.0
Content-Type: text/plain;
	charset="us-ascii"
X-Priority: 3 (Normal)
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0)
Importance: Normal
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400
In-Reply-To: <Pine.GSO.4.33.0105250750040.16136-100000@uhunix1>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by hq.fsmlabs.com id f4S7bDs18245

I have also had problems with __udivdi3. I got rid of the problem by typecasting to float, the math processor can do 64 bit division.

Regards,
Jonas

______________________________________________________________________
 Jonas Persson                    E-mail: jonas.persson@comsys.se
 Project Manager, M.Sc C.Sc&E     http://www.comsys.se/
 Comsys AB                        Phone: +46-(0)46-286 3051
 Forskningsbyn IDEON              Fax: +46-(0)46-286 3505
 S-223 70 Lund, Sweden


-----Ursprungligt meddelande-----
Fran: owner-rtl@fsmlabs.com [mailto:owner-rtl@fsmlabs.com]For Tony
Denault
Skickat: den 25 maj 2001 20:01
Till: rtl@fsmlabs.com
Amne: Re: [rtl] unresolved symbol __udivdi3 and __umoddi3




On Thu, 24 May 2001, Christopher D. Carothers wrote:

> 	Hi Havard --
>
> 	You need to link in the libgcc.a which is located at:
> /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/libgcc.a
>
> > When I insert ahrs.o as a module (insmod ahrs.o) I get these errors:
> >
> > ahrs.o: unresolved symbol __udivdi3
> > ahrs.o: unresolved symbol __umoddi3
> >
> > I have no idea where the __udivdi3 and __umoddi3 are comming from and
> > what their purpose is. So any suggestions are welcome.

I had a similar problem but with __divdi3(). Linking in the libgcc.a
resolved the problem because the compiler is generating a reference to
this library.

I found out the __divdi3() is needed to do 64 bit division. Later I got
rid of my 64bit division, and didn't need to reference libgcc.a.
I suspect you are doing a divid & mod on a long long type.
Are you doing math on hrtime_t? hrtime_t is a long long.

To check, you can us the -S option in gcc to produce the assemble code
intermediate file. Then you can see were and why these function are needed
by the compiler.

Tony

/-----------------------------------------------------------------------------\
| Tony Denault                        | Internet: denault@irtf.ifa.hawaii.edu |
| NASA IRTF, Institute of Astronomy   |                 Phone: (808) 974-4206 |
| 1175 Manono St., Bldg 393           |                   Fax: (808) 974-4207 |
| Hilo, Hawaii 96720                  |                                       |
\-----------------------------------------------------------------------------/


-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail majordomo@rtlinux.org OR
echo "unsubscribe rtl <Your_email>" | mail majordomo@rtlinux.org
--
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/