aboutsummaryrefslogtreecommitdiff
path: root/linuxthreads
diff options
context:
space:
mode:
Diffstat (limited to 'linuxthreads')
-rw-r--r--linuxthreads/sysdeps/mips/pspinlock.c3
-rw-r--r--linuxthreads/sysdeps/mips/pt-machine.h6
2 files changed, 6 insertions, 3 deletions
diff --git a/linuxthreads/sysdeps/mips/pspinlock.c b/linuxthreads/sysdeps/mips/pspinlock.c
index 7df3040..caa82e3 100644
--- a/linuxthreads/sysdeps/mips/pspinlock.c
+++ b/linuxthreads/sysdeps/mips/pspinlock.c
@@ -32,7 +32,8 @@ __pthread_spin_lock (pthread_spinlock_t *lock)
unsigned int tmp;
asm volatile
- ("\t\t\t# spin_lock\n\t"
+ (".set mips2\n\t"
+ "\t\t\t# spin_lock\n\t"
"1:\n\t"
"ll %1,%2\n\t"
".set push\n\t"
diff --git a/linuxthreads/sysdeps/mips/pt-machine.h b/linuxthreads/sysdeps/mips/pt-machine.h
index 16e2640..7b4ef61 100644
--- a/linuxthreads/sysdeps/mips/pt-machine.h
+++ b/linuxthreads/sysdeps/mips/pt-machine.h
@@ -41,7 +41,8 @@ testandset (int *spinlock)
long int ret, temp;
__asm__ __volatile__
- ("/* Inline spinlock test & set */\n\t"
+ (".set mips2\n\t"
+ "/* Inline spinlock test & set */\n\t"
"1:\n\t"
"ll %0,%3\n\t"
".set push\n\t"
@@ -87,7 +88,8 @@ __compare_and_swap (long int *p, long int oldval, long int newval)
long int ret;
__asm__ __volatile__
- ("/* Inline compare & swap */\n\t"
+ (".set mips2\n\t"
+ "/* Inline compare & swap */\n\t"
"1:\n\t"
"ll %0,%4\n\t"
".set push\n"