[PATCH] asm-i386/signal.h broken asm constraints

Artur Skawina (skawina@geocities.com)
Wed, 28 Jul 1999 21:18:16 +0200


This is a multi-part message in MIME format.

--------------453D32487992449751E5FCAB
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

the cpu uses only the lowest 5 bits when the arg is immediate.

--------------453D32487992449751E5FCAB
Content-Type: text/plain; charset=us-ascii; name="patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline; filename="patch"

diff -urNp --exclude-from /usr/src/lkdontdiff /img/linux-2.3.12p8/include/asm-i386/signal.h linux-2.3.12p8as/include/asm-i386/signal.h
--- /img/linux-2.3.12p8/include/asm-i386/signal.h Mon Dec 28 06:18:28 1998
+++ linux-2.3.12p8as/include/asm-i386/signal.h Wed Jul 28 16:52:11 1999
@@ -180,12 +180,12 @@ typedef struct sigaltstack {

extern __inline__ void sigaddset(sigset_t *set, int _sig)
{
- __asm__("btsl %1,%0" : "=m"(*set) : "ir"(_sig - 1) : "cc");
+ __asm__("btsl %1,%0" : "=m"(*set) : "Ir"(_sig - 1) : "cc");
}

extern __inline__ void sigdelset(sigset_t *set, int _sig)
{
- __asm__("btrl %1,%0" : "=m"(*set) : "ir"(_sig - 1) : "cc");
+ __asm__("btrl %1,%0" : "=m"(*set) : "Ir"(_sig - 1) : "cc");
}

extern __inline__ int __const_sigismember(sigset_t *set, int _sig)
@@ -198,7 +198,7 @@ extern __inline__ int __gen_sigismember(
{
int ret;
__asm__("btl %2,%1\n\tsbbl %0,%0"
- : "=r"(ret) : "m"(*set), "ir"(_sig-1) : "cc");
+ : "=r"(ret) : "m"(*set), "Ir"(_sig-1) : "cc");
return ret;
}

--------------453D32487992449751E5FCAB--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/