| To: | dan@debian.org |
|---|---|
| Subject: | Re: mips RDHWR instruction in glibc |
| From: | Atsushi Nemoto <anemo@mba.ocn.ne.jp> |
| Date: | Fri, 16 Jun 2006 00:28:37 +0900 (JST) |
| Cc: | libc-ports@sourceware.org, linux-mips@linux-mips.org |
| In-reply-to: | <20060614165040.GA19480@nevyn.them.org> |
| Original-recipient: | rfc822;linux-mips@linux-mips.org |
| References: | <20060615.001238.65193088.anemo@mba.ocn.ne.jp> <20060614165040.GA19480@nevyn.them.org> |
| Sender: | linux-mips-bounce@linux-mips.org |
On Wed, 14 Jun 2006 12:50:40 -0400, Daniel Jacobowitz <dan@debian.org> wrote:
> > For example, in the code below, RDHWR is placed _before_ checking the
> > error. I suppose these instructions were reordered by gcc's
> > optimization, but the optimization would have large negative effect in
> > this case.
>
> You'd have to figure out how to get GCC not to eagerly schedule the
> rdhwr. This might be quite hard. I don't know much about this part of
> the scheduler.
I really did not understand yet how errno is bound TLS. I found some
"rdhwr" in glibc-ports source code (tls-macros.h, nptl/tls.h). The
RDHWR instruction in the example code comes from one of them, no?
I also found a "rdhwr" in gcc's mips.md file ("tls_get_tp_<mode>").
Is this the origin? MD is a very foreign language for me...
---
Atsushi Nemoto
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | [PATCH] vr41xx: remove unnecessay items from vr41xx/Kconfig, Yoichi Yuasa |
|---|---|
| Next by Date: | Re: mips RDHWR instruction in glibc, Daniel Jacobowitz |
| Previous by Thread: | Re: mips RDHWR instruction in glibc, Daniel Jacobowitz |
| Next by Thread: | Re: mips RDHWR instruction in glibc, Daniel Jacobowitz |
| Indexes: | [Date] [Thread] [Top] [All Lists] |