Linux MIPS Architecture development
 help / color / mirror / Atom feed
From: "H . J . Lu" <hjl@lucon.org>
To: Andreas Jaeger <aj@suse.de>
Cc: linux-mips@oss.sgi.com, GNU C Library <libc-alpha@sources.redhat.com>
Subject: Re: PATCH: Not use branch likely on mips
Date: Thu, 7 Feb 2002 09:13:27 -0800	[thread overview]
Message-ID: <20020207091327.B15331@lucon.org> (raw)
In-Reply-To: <hoadulk25q.fsf@gee.suse.de>; from aj@suse.de on Thu, Feb 07, 2002 at 11:38:09AM +0100

On Thu, Feb 07, 2002 at 11:38:09AM +0100, Andreas Jaeger wrote:
> "H . J . Lu" <hjl@lucon.org> writes:
> 
> > This patch removes branch likely.
> 
> Please update the copyright years next time.
> 
> I've committed the patch,
> 

Here is a new patch. I have checked in a gcc patch which makes
".set noreorder" unnecessary even with "gcc -g".

Thanks.


H.J.
----
2002-02-07  H.J. Lu  <hjl@gnu.org>

	* sysdeps/mips/pspinlock.c (__pthread_spin_lock): Silence the
	gcc warning.
	(__pthread_spin_lock): Remove ".set noreorder".
	* sysdeps/mips/pt-machine.h (__compare_and_swap): Liekwise.

2002-02-07  H.J. Lu  <hjl@gnu.org>

	* sysdeps/mips/atomicity.h (compare_and_swap): Remove
	".set noreorder".
	* sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set):
	Likewise.

--- libc/linuxthreads/sysdeps/mips/pspinlock.c.llsc	Thu Feb  7 08:48:57 2002
+++ libc/linuxthreads/sysdeps/mips/pspinlock.c	Wed Feb  6 12:12:50 2002
@@ -35,11 +35,8 @@ __pthread_spin_lock (pthread_spinlock_t 
     ("\t\t\t# spin_lock\n"
      "1:\n\t"
      "ll	%1,%3\n\t"
-     ".set	push\n\t"
-     ".set	noreorder\n\t"
+     "li	%2,1\n\t"
      "bnez	%1,1b\n\t"
-     " li	%2,1\n\t"
-     ".set	pop\n\t"
      "sc	%2,%0\n\t"
      "beqz	%2,1b"
      : "=m" (*lock), "=&r" (tmp1), "=&r" (tmp2)
@@ -54,7 +51,7 @@ __pthread_spin_lock (pthread_spinlock_t 
 int
 __pthread_spin_lock (pthread_spinlock_t *lock)
 {
-  while (_test_and_set (lock, 1));
+  while (_test_and_set ((int *) lock, 1));
   return 0;
 }
 
--- libc/linuxthreads/sysdeps/mips/pt-machine.h.llsc	Thu Feb  7 08:48:57 2002
+++ libc/linuxthreads/sysdeps/mips/pt-machine.h	Wed Feb  6 12:12:50 2002
@@ -60,11 +60,8 @@ __compare_and_swap (long int *p, long in
     ("/* Inline compare & swap */\n"
      "1:\n\t"
      "ll	%1,%5\n\t"
-     ".set	push\n\t"
-     ".set	noreorder\n\t"
+     "move	%0,$0\n\t"
      "bne	%1,%3,2f\n\t"
-     " move	%0,$0\n\t"
-     ".set	pop\n\t"
      "move	%0,%4\n\t"
      "sc	%0,%2\n\t"
      "beqz	%0,1b\n"
--- libc/sysdeps/mips/atomicity.h.llsc	Thu Feb  7 08:50:14 2002
+++ libc/sysdeps/mips/atomicity.h	Wed Feb  6 12:12:50 2002
@@ -75,11 +75,8 @@ compare_and_swap (volatile long int *p, 
     ("/* Inline compare & swap */\n"
      "1:\n\t"
      "ll	%1,%5\n\t"
-     ".set	push\n\t"
-     ".set	noreorder\n\t"
+     "move	%0,$0\n\t"
      "bne	%1,%3,2f\n\t"
-     " move	%0,$0\n\t"
-     ".set	pop\n\t"
      "move	%0,%4\n\t"
      "sc	%0,%2\n\t"
      "beqz	%0,1b\n"
--- libc/sysdeps/unix/sysv/linux/mips/sys/tas.h.llsc	Thu Feb  7 08:50:15 2002
+++ libc/sysdeps/unix/sysv/linux/mips/sys/tas.h	Wed Feb  6 12:12:50 2002
@@ -45,11 +45,8 @@ _test_and_set (int *p, int v) __THROW
     ("/* Inline test and set */\n"
      "1:\n\t"
      "ll	%0,%3\n\t"
-     ".set	push\n\t"
-     ".set	noreorder\n\t"
+     "move	%1,%4\n\t"
      "beq	%0,%4,2f\n\t"
-     " move	%1,%4\n\t"
-     ".set	pop\n\t"
      "sc	%1,%2\n\t"
      "beqz	%1,1b\n"
      "2:\n\t"

  reply	other threads:[~2002-02-07 17:13 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-02-06  2:02 PATCH: Not use branch likely on mips H . J . Lu
2002-02-07 10:38 ` Andreas Jaeger
2002-02-07 17:13   ` H . J . Lu [this message]
2002-02-08  8:00     ` Andreas Jaeger
2002-02-08 12:03       ` Maciej W. Rozycki
2002-02-08 16:15     ` Andreas Jaeger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20020207091327.B15331@lucon.org \
    --to=hjl@lucon.org \
    --cc=aj@suse.de \
    --cc=libc-alpha@sources.redhat.com \
    --cc=linux-mips@oss.sgi.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox