summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2004-06-04 23:55:44 +0000
committerChristopher Faylor <me@cgf.cx>2004-06-04 23:55:44 +0000
commitcf4bfdb2f8d4554eb10291762fcf933f6084260a (patch)
treef81b5195d20bbb9a465d9ae85ddaae7eb8f67467
parent04612c69eb22ce29040765a84841591ece412d68 (diff)
downloadcygnal-cf4bfdb2f8d4554eb10291762fcf933f6084260a.tar.gz
cygnal-cf4bfdb2f8d4554eb10291762fcf933f6084260a.tar.bz2
cygnal-cf4bfdb2f8d4554eb10291762fcf933f6084260a.zip
* winbase.h (ilockincr): Add more neverending changes from the inexplicable
world of gcc asm constraint magic. Should stop random crashes. (ilockdecr): Ditto.
-rw-r--r--winsup/cygwin/ChangeLog7
-rw-r--r--winsup/cygwin/winbase.h4
2 files changed, 9 insertions, 2 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 6385fc102..0253d982d 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,10 @@
+2004-06-04 Christopher Faylor <cgf@alum.bu.edu>
+
+ * winbase.h (ilockincr): Add more neverending changes from the
+ inexplicable world of gcc asm constraint magic. Should stop random
+ crashes.
+ (ilockdecr): Ditto.
+
2004-06-03 Christopher Faylor <cgf@alum.bu.edu>
* autoload.cc (IsDosDeviceName_U): Define.
diff --git a/winsup/cygwin/winbase.h b/winsup/cygwin/winbase.h
index 6f9228efc..177de7aef 100644
--- a/winsup/cygwin/winbase.h
+++ b/winsup/cygwin/winbase.h
@@ -19,7 +19,7 @@ ilockincr (long *m)
movl $1,%0\n\
lock xadd %0,%1\n\
inc %0\n\
- ": "=a" (__res), "=m" (*m): "m" (m): "cc");
+ ": "=r" (__res), "=m" (*m): "m" (*m): "cc");
return __res;
}
@@ -31,7 +31,7 @@ ilockdecr (long *m)
movl $0xffffffff,%0\n\
lock xadd %0,%1\n\
dec %0\n\
- ": "=a" (__res), "=m" (*m): "m" (m): "cc");
+ ": "=r" (__res), "=m" (*m): "m" (*m): "cc");
return __res;
}