[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
BOUNCE rtl@rtlinux.org: Approval required: Non-member submissionfrom [Tony Denault <denault@hawaii.edu>] (fwd)
- To: rtl@rtlinux.org
- Subject: BOUNCE rtl@rtlinux.org: Approval required: Non-member submissionfrom [Tony Denault <denault@hawaii.edu>] (fwd)
- From: Der Herr Hofrat <der.herr@hofr.at>
- Date: Fri, 25 May 2001 19:11:43 +0200 (CEST)
>From owner-rtl Fri May 25 12:05:58 2001
Received: from m2.hawaii.edu (pmdf@m2.hawaii.edu [128.171.94.30])
by hq.fsmlabs.com (8.11.2/8.11.2) with ESMTP id f4PI5wP25884
for <rtl@fsmlabs.com>; Fri, 25 May 2001 12:05:58 -0600
Received: from CONVERSION-DAEMON.m2.hawaii.edu by m2.hawaii.edu
(PMDF V6.0-24 #38439) id <0GDW00301KPDUW@m2.hawaii.edu>; Fri,
25 May 2001 08:00:49 -1000 (HST)
Received: from uhunix1.its.hawaii.edu (uhunix1.its.hawaii.edu [128.171.44.6])
by m2.hawaii.edu (PMDF V6.0-24 #38439)
with ESMTP id <0GDW001NUKPD63@m2.hawaii.edu>; Fri,
25 May 2001 08:00:49 -1000 (HST)
Received: from localhost (denault@localhost) by uhunix1.its.hawaii.edu
(8.8.8+Sun/8.8.8) with ESMTP id IAA23683 for <rtl@fsmlabs.com>; Fri,
25 May 2001 08:00:48 -1000 (HST)
Date: Fri, 25 May 2001 08:00:47 -1000 (HST)
From: Tony Denault <denault@hawaii.edu>
Subject: Re: [rtl] unresolved symbol __udivdi3 and __umoddi3
In-reply-to: <Pine.BSF.4.10.10105241224340.50956-100000@monica.cs.rpi.edu>
X-X-Sender: <denault@uhunix1>
To: rtl@fsmlabs.com
Message-id: <Pine.GSO.4.33.0105250750040.16136-100000@uhunix1>
MIME-version: 1.0
Content-type: TEXT/PLAIN; charset=US-ASCII
X-Authentication-warning: uhunix1.its.hawaii.edu: denault owned process doing
-bs
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 | |
\-----------------------------------------------------------------------------/