* sysdeps/mips/atomicity.h (compare_and_swap): Remove
authoraj <aj>
Fri, 8 Feb 2002 16:15:30 +0000 (16:15 +0000)
committeraj <aj>
Fri, 8 Feb 2002 16:15:30 +0000 (16:15 +0000)
".set noreorder".
* sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set):
Likewise.

sysdeps/mips/atomicity.h
sysdeps/unix/sysv/linux/mips/sys/tas.h

index a1a7761..b4b7b64 100644 (file)
@@ -75,11 +75,8 @@ compare_and_swap (volatile long int *p, long int oldval, long int newval)
     ("/* 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"
index 1bfbbcf..2a1a045 100644 (file)
@@ -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"