diff options
author | Bruce Momjian <bruce@momjian.us> | 2002-04-05 11:38:13 +0000 |
---|---|---|
committer | Bruce Momjian <bruce@momjian.us> | 2002-04-05 11:38:13 +0000 |
commit | 3cbe6b2478d7a321e203857f255bcaf69bcc5c8d (patch) | |
tree | 5bdf962ef68c6987579cc9ac0c73addb5b9bbd52 /src | |
parent | b9ae55f2aabb21d9c3d34554b5a19be6f8770adf (diff) | |
download | postgresql-3cbe6b2478d7a321e203857f255bcaf69bcc5c8d.tar.gz postgresql-3cbe6b2478d7a321e203857f255bcaf69bcc5c8d.zip |
Looks like a small patch is needed as well to do the right thing on Linux.
The patch enables the mips2 ISA for the ll/sc operations, and then restores
it when done. The kernel/libc emulation code will take over on CPUs without
ll/sc, and on CPUs with it, it'll use the operations provided by the CPU.
Combined with the earlier fix (removing -mips2), postgresql builds again on
mips and mipsel. The patch is against 7.2-7.
Oliver Elphick
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/storage/lmgr/s_lock.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/backend/storage/lmgr/s_lock.c b/src/backend/storage/lmgr/s_lock.c index ea7b40581e4..80f4b654970 100644 --- a/src/backend/storage/lmgr/s_lock.c +++ b/src/backend/storage/lmgr/s_lock.c @@ -9,7 +9,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/storage/lmgr/s_lock.c,v 1.5 2001/11/05 17:46:28 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/storage/lmgr/s_lock.c,v 1.6 2002/04/05 11:38:13 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -173,9 +173,12 @@ tas_dummy() .global tas \n\ tas: \n\ .frame $sp, 0, $31 \n\ + .set push \n\ + .set mips2 \n\n ll $14, 0($4) \n\ or $15, $14, 1 \n\ sc $15, 0($4) \n\ + .set pop \n\ beq $15, 0, fail\n\ bne $14, 0, fail\n\ li $2, 0 \n\ |