linux-mips
[Top] [All Lists]

Re: problem about the tool chain for R3000

To: "David Daney" <ddaney@avtrex.com>
Subject: Re: problem about the tool chain for R3000
From: "guo guo" <sunnyboyguo@gmail.com>
Date: Wed, 29 Aug 2007 18:08:44 -0700
Cc: linux-mips@linux-mips.org
Dkim-signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=mC2NpYxOG7WwuegGQYiGHM0WkhIGTZ1rKEF97epkUu+G6Yu2I+Frme4CQZsCqGm5rS6C1BT2mnj0fkmC9hBatfYGElWEMbktJTi73BcREPPU8110LE2wnX1MvbhVPoUWvyMWz3Wj3wHkFPshXLw3JU6tI0/4e4cvlJ3gwwUcdbU=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=BxxDuWlfWHErT5w87oWNghqleMZYg8bJYt8KAzhJ3WNNhYE+NwW98d6X0i2Ssd28KdN7XrAXiXk8tde6oEK0bGw7F4ly6ZD1RNnZtKRoyEWflhfm5GVWysCohhk79/P4sESLl+cE8pu8JKO7s+Pba24dyXki7ml5dEaPFPxfRxY=
In-reply-to: <46D60675.2070709@avtrex.com>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <50f30abd0708291609i72e4aa57oce757d79a7e87fd6@mail.gmail.com> <46D60675.2070709@avtrex.com>
Sender: linux-mips-bounce@linux-mips.org
Dear Daney,
Thank you very much.
Under nptl directory, there are 6 places use rdhwr instruction. What's
difference between rdhwr and move instructions?
Could I use move or other r3000 instructions to replace rdhwr?

And I didn't find ll/sc instructions in libc-2.5.90.so. maybe gcc
avoid them for R3000 chip.

Best regards,
Tony


2007/8/29, David Daney <ddaney@avtrex.com>:
> guo guo wrote:
> > Dear All,
> >
> > I'm trying to build tool chain with gcc4.2, binutils2.17 and glibc2.5
> > for mips r3000 chip.
> > During configure gcc I add ?Cmabi=32 ?Cmarch=r3000 ?Cmtune=r3000. and
> > during building glibc, I add CFLAGS= -O2 ?Cmabi=32 ?Cmarch=r3000
> > ?Cmtune=r3000,
> > Then I dissembled the libc-2.5.90.so to check the instructions. I
> > found it has two instructions rdhwr(0x7c03e83b) and sync(0x0000000f)
> > that don't belongs to mips r3000.
>
> The rdhwr and sync are used by the NPTL pthread library and must be
> emulated by the linux kernel.  Probably you will see ll and sc in there
> as well.  If you use glibc2.3.x with Linux threads then the rdhwr will
> not be generated.
>
>  Probably if you did not use libpthread you would not need any of the
> thread synchronization primitives that cause ll,sc, and sync to be
> generated.
>
> But if you want libpthread and your CPU does not support the
> instructions, you will have to emulate them.
>
>
> David Daney
>
<Prev in Thread] Current Thread [Next in Thread>