Line 0
Link Here
|
|
|
1 |
--- src/vc.c.orig Mon May 16 13:33:11 2005 |
2 |
+++ src/vc.c Mon May 16 13:33:11 2005 |
3 |
@@ -60,28 +60,23 @@ |
4 |
inline void |
5 |
blatch(void *head, int n) |
6 |
{ |
7 |
- |
8 |
- __asm__ volatile ("\t clc\n" |
9 |
- "1:\n" |
10 |
- "\t andb %%bl, (%%eax)\n" |
11 |
- "\t incl %%eax\n" |
12 |
- "\t loop 1b\n" |
13 |
- : "=bl" (head), "=c"(n) |
14 |
- : "eax"((long)head), "0"(0x7F), "1"(n)); |
15 |
+ char *tmp = (char *)head; |
16 |
+ do { |
17 |
+ *tmp &= 0x7f; |
18 |
+ tmp++; |
19 |
+ } while( --n ); |
20 |
} |
21 |
|
22 |
static |
23 |
inline void |
24 |
llatch(void *head, int n) |
25 |
{ |
26 |
- |
27 |
- __asm__ volatile ("\t clc\n" |
28 |
- "1:\n" |
29 |
- "\t andl %%ebx, (%%eax)\n" |
30 |
- "\t addl $4, %%eax\n" |
31 |
- "\t loop 1b\n" |
32 |
- : "=ebx" (head), "=c"(n) |
33 |
- : "eax"((long)head), "0"(0x7F7F7F7F), "1"(n >> 2)); |
34 |
+ int *tmp = (int *)head; |
35 |
+ n /= 4; |
36 |
+ do { |
37 |
+ *tmp &= 0x7f7f7f7f; |
38 |
+ tmp++; |
39 |
+ } while( --n ); |
40 |
} |
41 |
|
42 |
static inline u_int |