Re: __divdi3 unresolved + X pointer blocks

3 messages, 2 authors, 2001-07-04 · open the first message on its own page

Re: __divdi3 unresolved + X pointer blocks

From: David Edelsohn <hidden>
Date: 2001-07-04 22:22:45

quoted
quoted
quoted
quoted
Jean-Jacques Levy writes:
Jean-Jacques> I installed gcc-3.0 release, and remained with my undefined
Jean-Jacques> __divdi3. Then I patched inode.c in fs/fat and replaced two divisions
Jean-Jacques> by 512 by >> 9. The error disapeared.

Jean-Jacques> Either gcc-3.0 has a bug, either there is a missing module to
Jean-Jacques> implement long divisions (by 512!) in fs/fat.o

	It might be that GCC is not optimizing this division as strongly
as it should.  __divdi3 is a 64-bit signed divide.  A signed divide is not
the same as a shift.  Maybe the 64-bit variable is not declared as
unsigned when it should be?

	The Linux kernel does not link against libgcc.a, so any GCC
support routines (such as __divdi3) need to be provided explicitly.

David


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

Re: __divdi3 unresolved + X pointer blocks

From: Kaoru Fukui <hidden>
Date: 2001-07-04 22:24:47

From: David Edelsohn <redacted>
To: Jean-Jacques.Levy@inria.fr
Subject: Re: __divdi3 unresolved + X pointer blocks
Date: Wed, 04 Jul 2001 18:22:45 -0400
cc: k_fukui@highway.ne.jp, linuxppc-dev@lists.linuxppc.org
quoted
quoted
quoted
quoted
quoted
Jean-Jacques Levy writes:
Jean-Jacques> I installed gcc-3.0 release, and remained with my undefined
Jean-Jacques> __divdi3. Then I patched inode.c in fs/fat and replaced two
divisions
Jean-Jacques> by 512 by >> 9. The error disapeared.

Jean-Jacques> Either gcc-3.0 has a bug, either there is a missing module
to
Jean-Jacques> implement long divisions (by 512!) in fs/fat.o

	It might be that GCC is not optimizing this division as strongly
as it should.  __divdi3 is a 64-bit signed divide.  A signed divide is not
the same as a shift.  Maybe the 64-bit variable is not declared as
unsigned when it should be?

	The Linux kernel does not link against libgcc.a, so any GCC
support routines (such as __divdi3) need to be provided explicitly.
I could compile kernel-2.4.6 using gcc-3.0.1pre without this problem.
So I will upload kernel-2.4.6 the makelog and gcc-3.0.1, later.
Let you know when I will upload the package done for JJ.
I believe  that gcc-3.0 also be able to compile the kernel with no problem.

Kaoru


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

Re: __divdi3 unresolved + X pointer blocks

From: Kaoru Fukui <hidden>
Date: 2001-07-04 22:45:36

From: Kaoru Fukui <redacted>
To: David Edelsohn <redacted>, Jean-Jacques.Levy@inria.fr,Benjamin
Herrenschmidt [off-list ref]
Subject: Re: __divdi3 unresolved + X pointer blocks
Date: Thu, 5 Jul 2001 07:24:47 +0900
CC: linuxppc-dev@lists.linuxppc.org
I could compile kernel-2.4.6 using gcc-3.0.1pre without this problem.
So I will upload kernel-2.4.6 the makelog and gcc-3.0.1, later.
Let you know when I will upload the package done for JJ.
I believe  that gcc-3.0 also be able to compile the kernel with no problem.
Sorry, compilation has done but I got also Unresolved symbols .

Kaoru


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help