summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAndy Grover <agrover@groveronline.com>2002-11-18 20:35:36 -0800
committerAndy Grover <agrover@groveronline.com>2002-11-18 20:35:36 -0800
commit8ea430ce380233c1945a31d5cb42d6695b06514b (patch)
tree522e3b6ebb808f4f4a354b63954cd0964e45b294 /include
parentf16897fa7b64209a58bf920999639ddb0c5217e9 (diff)
parentfdea9fc98bc266f5992b35c01737e5e6f70ffdd1 (diff)
Merge groveronline.com:/root/bk/linux-2.5
into groveronline.com:/root/bk/linux-acpi
Diffstat (limited to 'include')
-rw-r--r--include/asm-alpha/hardirq.h2
-rw-r--r--include/asm-alpha/module.h24
-rw-r--r--include/asm-alpha/unistd.h8
-rw-r--r--include/asm-alpha/xor.h1574
-rw-r--r--include/linux/device.h4
-rw-r--r--include/linux/jffs2.h103
-rw-r--r--include/linux/jffs2_fs_i.h5
-rw-r--r--include/linux/jffs2_fs_sb.h6
-rw-r--r--include/linux/module.h39
-rw-r--r--include/linux/nfs_fs.h18
-rw-r--r--include/linux/nfs_xdr.h12
-rw-r--r--include/linux/udf_fs_i.h5
-rw-r--r--include/linux/udf_fs_sb.h2
-rw-r--r--include/math-emu/op-4.h90
-rw-r--r--include/sound/core.h10
15 files changed, 973 insertions, 929 deletions
diff --git a/include/asm-alpha/hardirq.h b/include/asm-alpha/hardirq.h
index 1ab68af0af44..78f2c634fa43 100644
--- a/include/asm-alpha/hardirq.h
+++ b/include/asm-alpha/hardirq.h
@@ -3,6 +3,8 @@
#include <linux/config.h>
#include <linux/threads.h>
+#include <linux/cache.h>
+
/* entry.S is sensitive to the offsets of these fields */
typedef struct {
diff --git a/include/asm-alpha/module.h b/include/asm-alpha/module.h
index 1bc29f948da1..edd833ab79dd 100644
--- a/include/asm-alpha/module.h
+++ b/include/asm-alpha/module.h
@@ -1,28 +1,6 @@
#ifndef _ASM_ALPHA_MODULE_H
#define _ASM_ALPHA_MODULE_H
-/*
- * This file contains the alpha architecture specific module code.
- */
-#define module_map(x) vmalloc(x)
-#define module_unmap(x) vfree(x)
-#define module_arch_init(x) alpha_module_init(x)
-#define arch_init_modules(x) alpha_init_modules(x)
-
-static inline int
-alpha_module_init(struct module *mod)
-{
- if (!mod_bound(mod->gp - 0x8000, 0, mod)) {
- printk(KERN_ERR "module_arch_init: mod->gp out of bounds.\n");
- return 1;
- }
- return 0;
-}
-
-static inline void
-alpha_init_modules(struct module *mod)
-{
- __asm__("stq $29,%0" : "=m" (mod->gp));
-}
+/* Module rewrite still in progress. */
#endif /* _ASM_ALPHA_MODULE_H */
diff --git a/include/asm-alpha/unistd.h b/include/asm-alpha/unistd.h
index 296408dae77a..769a9ff1b65d 100644
--- a/include/asm-alpha/unistd.h
+++ b/include/asm-alpha/unistd.h
@@ -343,7 +343,13 @@
#define __NR_alloc_hugepages 403
#define __NR_free_hugepages 404
#define __NR_exit_group 405
-#define NR_SYSCALLS 406
+#define __NR_lookup_dcookie 406
+#define __NR_sys_epoll_create 407
+#define __NR_sys_epoll_ctl 408
+#define __NR_sys_epoll_wait 409
+#define __NR_remap_file_pages 410
+#define __NR_set_tid_address 411
+#define NR_SYSCALLS 412
#if defined(__GNUC__)
diff --git a/include/asm-alpha/xor.h b/include/asm-alpha/xor.h
index e11477f33d47..a88d79d6e3ac 100644
--- a/include/asm-alpha/xor.h
+++ b/include/asm-alpha/xor.h
@@ -32,793 +32,793 @@ extern void xor_alpha_prefetch_5(unsigned long, unsigned long *,
unsigned long *, unsigned long *,
unsigned long *, unsigned long *);
-asm("
- .text
- .align 3
- .ent xor_alpha_2
-xor_alpha_2:
- .prologue 0
- srl $16, 6, $16
- .align 4
-2:
- ldq $0,0($17)
- ldq $1,0($18)
- ldq $2,8($17)
- ldq $3,8($18)
-
- ldq $4,16($17)
- ldq $5,16($18)
- ldq $6,24($17)
- ldq $7,24($18)
-
- ldq $19,32($17)
- ldq $20,32($18)
- ldq $21,40($17)
- ldq $22,40($18)
-
- ldq $23,48($17)
- ldq $24,48($18)
- ldq $25,56($17)
- xor $0,$1,$0 # 7 cycles from $1 load
-
- ldq $27,56($18)
- xor $2,$3,$2
- stq $0,0($17)
- xor $4,$5,$4
-
- stq $2,8($17)
- xor $6,$7,$6
- stq $4,16($17)
- xor $19,$20,$19
-
- stq $6,24($17)
- xor $21,$22,$21
- stq $19,32($17)
- xor $23,$24,$23
-
- stq $21,40($17)
- xor $25,$27,$25
- stq $23,48($17)
- subq $16,1,$16
-
- stq $25,56($17)
- addq $17,64,$17
- addq $18,64,$18
- bgt $16,2b
-
- ret
- .end xor_alpha_2
-
- .align 3
- .ent xor_alpha_3
-xor_alpha_3:
- .prologue 0
- srl $16, 6, $16
- .align 4
-3:
- ldq $0,0($17)
- ldq $1,0($18)
- ldq $2,0($19)
- ldq $3,8($17)
-
- ldq $4,8($18)
- ldq $6,16($17)
- ldq $7,16($18)
- ldq $21,24($17)
-
- ldq $22,24($18)
- ldq $24,32($17)
- ldq $25,32($18)
- ldq $5,8($19)
-
- ldq $20,16($19)
- ldq $23,24($19)
- ldq $27,32($19)
- nop
-
- xor $0,$1,$1 # 8 cycles from $0 load
- xor $3,$4,$4 # 6 cycles from $4 load
- xor $6,$7,$7 # 6 cycles from $7 load
- xor $21,$22,$22 # 5 cycles from $22 load
-
- xor $1,$2,$2 # 9 cycles from $2 load
- xor $24,$25,$25 # 5 cycles from $25 load
- stq $2,0($17)
- xor $4,$5,$5 # 6 cycles from $5 load
-
- stq $5,8($17)
- xor $7,$20,$20 # 7 cycles from $20 load
- stq $20,16($17)
- xor $22,$23,$23 # 7 cycles from $23 load
-
- stq $23,24($17)
- xor $25,$27,$27 # 7 cycles from $27 load
- stq $27,32($17)
- nop
-
- ldq $0,40($17)
- ldq $1,40($18)
- ldq $3,48($17)
- ldq $4,48($18)
-
- ldq $6,56($17)
- ldq $7,56($18)
- ldq $2,40($19)
- ldq $5,48($19)
-
- ldq $20,56($19)
- xor $0,$1,$1 # 4 cycles from $1 load
- xor $3,$4,$4 # 5 cycles from $4 load
- xor $6,$7,$7 # 5 cycles from $7 load
-
- xor $1,$2,$2 # 4 cycles from $2 load
- xor $4,$5,$5 # 5 cycles from $5 load
- stq $2,40($17)
- xor $7,$20,$20 # 4 cycles from $20 load
-
- stq $5,48($17)
- subq $16,1,$16
- stq $20,56($17)
- addq $19,64,$19
-
- addq $18,64,$18
- addq $17,64,$17
- bgt $16,3b
- ret
- .end xor_alpha_3
-
- .align 3
- .ent xor_alpha_4
-xor_alpha_4:
- .prologue 0
- srl $16, 6, $16
- .align 4
-4:
- ldq $0,0($17)
- ldq $1,0($18)
- ldq $2,0($19)
- ldq $3,0($20)
-
- ldq $4,8($17)
- ldq $5,8($18)
- ldq $6,8($19)
- ldq $7,8($20)
-
- ldq $21,16($17)
- ldq $22,16($18)
- ldq $23,16($19)
- ldq $24,16($20)
-
- ldq $25,24($17)
- xor $0,$1,$1 # 6 cycles from $1 load
- ldq $27,24($18)
- xor $2,$3,$3 # 6 cycles from $3 load
-
- ldq $0,24($19)
- xor $1,$3,$3
- ldq $1,24($20)
- xor $4,$5,$5 # 7 cycles from $5 load
-
- stq $3,0($17)
- xor $6,$7,$7
- xor $21,$22,$22 # 7 cycles from $22 load
- xor $5,$7,$7
-
- stq $7,8($17)
- xor $23,$24,$24 # 7 cycles from $24 load
- ldq $2,32($17)
- xor $22,$24,$24
-
- ldq $3,32($18)
- ldq $4,32($19)
- ldq $5,32($20)
- xor $25,$27,$27 # 8 cycles from $27 load
-
- ldq $6,40($17)
- ldq $7,40($18)
- ldq $21,40($19)
- ldq $22,40($20)
-
- stq $24,16($17)
- xor $0,$1,$1 # 9 cycles from $1 load
- xor $2,$3,$3 # 5 cycles from $3 load
- xor $27,$1,$1
-
- stq $1,24($17)
- xor $4,$5,$5 # 5 cycles from $5 load
- ldq $23,48($17)
- ldq $24,48($18)
-
- ldq $25,48($19)
- xor $3,$5,$5
- ldq $27,48($20)
- ldq $0,56($17)
-
- ldq $1,56($18)
- ldq $2,56($19)
- xor $6,$7,$7 # 8 cycles from $6 load
- ldq $3,56($20)
-
- stq $5,32($17)
- xor $21,$22,$22 # 8 cycles from $22 load
- xor $7,$22,$22
- xor $23,$24,$24 # 5 cycles from $24 load
-
- stq $22,40($17)
- xor $25,$27,$27 # 5 cycles from $27 load
- xor $24,$27,$27
- xor $0,$1,$1 # 5 cycles from $1 load
-
- stq $27,48($17)
- xor $2,$3,$3 # 4 cycles from $3 load
- xor $1,$3,$3
- subq $16,1,$16
-
- stq $3,56($17)
- addq $20,64,$20
- addq $19,64,$19
- addq $18,64,$18
-
- addq $17,64,$17
- bgt $16,4b
- ret
- .end xor_alpha_4
-
- .align 3
- .ent xor_alpha_5
-xor_alpha_5:
- .prologue 0
- srl $16, 6, $16
- .align 4
-5:
- ldq $0,0($17)
- ldq $1,0($18)
- ldq $2,0($19)
- ldq $3,0($20)
-
- ldq $4,0($21)
- ldq $5,8($17)
- ldq $6,8($18)
- ldq $7,8($19)
-
- ldq $22,8($20)
- ldq $23,8($21)
- ldq $24,16($17)
- ldq $25,16($18)
-
- ldq $27,16($19)
- xor $0,$1,$1 # 6 cycles from $1 load
- ldq $28,16($20)
- xor $2,$3,$3 # 6 cycles from $3 load
-
- ldq $0,16($21)
- xor $1,$3,$3
- ldq $1,24($17)
- xor $3,$4,$4 # 7 cycles from $4 load
-
- stq $4,0($17)
- xor $5,$6,$6 # 7 cycles from $6 load
- xor $7,$22,$22 # 7 cycles from $22 load
- xor $6,$23,$23 # 7 cycles from $23 load
-
- ldq $2,24($18)
- xor $22,$23,$23
- ldq $3,24($19)
- xor $24,$25,$25 # 8 cycles from $25 load
-
- stq $23,8($17)
- xor $25,$27,$27 # 8 cycles from $27 load
- ldq $4,24($20)
- xor $28,$0,$0 # 7 cycles from $0 load
-
- ldq $5,24($21)
- xor $27,$0,$0
- ldq $6,32($17)
- ldq $7,32($18)
-
- stq $0,16($17)
- xor $1,$2,$2 # 6 cycles from $2 load
- ldq $22,32($19)
- xor $3,$4,$4 # 4 cycles from $4 load
-
- ldq $23,32($20)
- xor $2,$4,$4
- ldq $24,32($21)
- ldq $25,40($17)
-
- ldq $27,40($18)
- ldq $28,40($19)
- ldq $0,40($20)
- xor $4,$5,$5 # 7 cycles from $5 load
-
- stq $5,24($17)
- xor $6,$7,$7 # 7 cycles from $7 load
- ldq $1,40($21)
- ldq $2,48($17)
-
- ldq $3,48($18)
- xor $7,$22,$22 # 7 cycles from $22 load
- ldq $4,48($19)
- xor $23,$24,$24 # 6 cycles from $24 load
-
- ldq $5,48($20)
- xor $22,$24,$24
- ldq $6,48($21)
- xor $25,$27,$27 # 7 cycles from $27 load
-
- stq $24,32($17)
- xor $27,$28,$28 # 8 cycles from $28 load
- ldq $7,56($17)
- xor $0,$1,$1 # 6 cycles from $1 load
-
- ldq $22,56($18)
- ldq $23,56($19)
- ldq $24,56($20)
- ldq $25,56($21)
-
- xor $28,$1,$1
- xor $2,$3,$3 # 9 cycles from $3 load
- xor $3,$4,$4 # 9 cycles from $4 load
- xor $5,$6,$6 # 8 cycles from $6 load
-
- stq $1,40($17)
- xor $4,$6,$6
- xor $7,$22,$22 # 7 cycles from $22 load
- xor $23,$24,$24 # 6 cycles from $24 load
-
- stq $6,48($17)
- xor $22,$24,$24
- subq $16,1,$16
- xor $24,$25,$25 # 8 cycles from $25 load
-
- stq $25,56($17)
- addq $21,64,$21
- addq $20,64,$20
- addq $19,64,$19
-
- addq $18,64,$18
- addq $17,64,$17
- bgt $16,5b
- ret
- .end xor_alpha_5
-
- .align 3
- .ent xor_alpha_prefetch_2
-xor_alpha_prefetch_2:
- .prologue 0
- srl $16, 6, $16
-
- ldq $31, 0($17)
- ldq $31, 0($18)
-
- ldq $31, 64($17)
- ldq $31, 64($18)
-
- ldq $31, 128($17)
- ldq $31, 128($18)
-
- ldq $31, 192($17)
- ldq $31, 192($18)
- .align 4
-2:
- ldq $0,0($17)
- ldq $1,0($18)
- ldq $2,8($17)
- ldq $3,8($18)
-
- ldq $4,16($17)
- ldq $5,16($18)
- ldq $6,24($17)
- ldq $7,24($18)
-
- ldq $19,32($17)
- ldq $20,32($18)
- ldq $21,40($17)
- ldq $22,40($18)
-
- ldq $23,48($17)
- ldq $24,48($18)
- ldq $25,56($17)
- ldq $27,56($18)
-
- ldq $31,256($17)
- xor $0,$1,$0 # 8 cycles from $1 load
- ldq $31,256($18)
- xor $2,$3,$2
-
- stq $0,0($17)
- xor $4,$5,$4
- stq $2,8($17)
- xor $6,$7,$6
-
- stq $4,16($17)
- xor $19,$20,$19
- stq $6,24($17)
- xor $21,$22,$21
-
- stq $19,32($17)
- xor $23,$24,$23
- stq $21,40($17)
- xor $25,$27,$25
-
- stq $23,48($17)
- subq $16,1,$16
- stq $25,56($17)
- addq $17,64,$17
-
- addq $18,64,$18
- bgt $16,2b
- ret
- .end xor_alpha_prefetch_2
-
- .align 3
- .ent xor_alpha_prefetch_3
-xor_alpha_prefetch_3:
- .prologue 0
- srl $16, 6, $16
-
- ldq $31, 0($17)
- ldq $31, 0($18)
- ldq $31, 0($19)
-
- ldq $31, 64($17)
- ldq $31, 64($18)
- ldq $31, 64($19)
-
- ldq $31, 128($17)
- ldq $31, 128($18)
- ldq $31, 128($19)
-
- ldq $31, 192($17)
- ldq $31, 192($18)
- ldq $31, 192($19)
- .align 4
-3:
- ldq $0,0($17)
- ldq $1,0($18)
- ldq $2,0($19)
- ldq $3,8($17)
-
- ldq $4,8($18)
- ldq $6,16($17)
- ldq $7,16($18)
- ldq $21,24($17)
-
- ldq $22,24($18)
- ldq $24,32($17)
- ldq $25,32($18)
- ldq $5,8($19)
-
- ldq $20,16($19)
- ldq $23,24($19)
- ldq $27,32($19)
- nop
-
- xor $0,$1,$1 # 8 cycles from $0 load
- xor $3,$4,$4 # 7 cycles from $4 load
- xor $6,$7,$7 # 6 cycles from $7 load
- xor $21,$22,$22 # 5 cycles from $22 load
-
- xor $1,$2,$2 # 9 cycles from $2 load
- xor $24,$25,$25 # 5 cycles from $25 load
- stq $2,0($17)
- xor $4,$5,$5 # 6 cycles from $5 load
-
- stq $5,8($17)
- xor $7,$20,$20 # 7 cycles from $20 load
- stq $20,16($17)
- xor $22,$23,$23 # 7 cycles from $23 load
-
- stq $23,24($17)
- xor $25,$27,$27 # 7 cycles from $27 load
- stq $27,32($17)
- nop
-
- ldq $0,40($17)
- ldq $1,40($18)
- ldq $3,48($17)
- ldq $4,48($18)
-
- ldq $6,56($17)
- ldq $7,56($18)
- ldq $2,40($19)
- ldq $5,48($19)
-
- ldq $20,56($19)
- ldq $31,256($17)
- ldq $31,256($18)
- ldq $31,256($19)
-
- xor $0,$1,$1 # 6 cycles from $1 load
- xor $3,$4,$4 # 5 cycles from $4 load
- xor $6,$7,$7 # 5 cycles from $7 load
- xor $1,$2,$2 # 4 cycles from $2 load
-
- xor $4,$5,$5 # 5 cycles from $5 load
- xor $7,$20,$20 # 4 cycles from $20 load
- stq $2,40($17)
- subq $16,1,$16
-
- stq $5,48($17)
- addq $19,64,$19
- stq $20,56($17)
- addq $18,64,$18
-
- addq $17,64,$17
- bgt $16,3b
- ret
- .end xor_alpha_prefetch_3
-
- .align 3
- .ent xor_alpha_prefetch_4
-xor_alpha_prefetch_4:
- .prologue 0
- srl $16, 6, $16
-
- ldq $31, 0($17)
- ldq $31, 0($18)
- ldq $31, 0($19)
- ldq $31, 0($20)
-
- ldq $31, 64($17)
- ldq $31, 64($18)
- ldq $31, 64($19)
- ldq $31, 64($20)
-
- ldq $31, 128($17)
- ldq $31, 128($18)
- ldq $31, 128($19)
- ldq $31, 128($20)
-
- ldq $31, 192($17)
- ldq $31, 192($18)
- ldq $31, 192($19)
- ldq $31, 192($20)
- .align 4
-4:
- ldq $0,0($17)
- ldq $1,0($18)
- ldq $2,0($19)
- ldq $3,0($20)
-
- ldq $4,8($17)
- ldq $5,8($18)
- ldq $6,8($19)
- ldq $7,8($20)
-
- ldq $21,16($17)
- ldq $22,16($18)
- ldq $23,16($19)
- ldq $24,16($20)
-
- ldq $25,24($17)
- xor $0,$1,$1 # 6 cycles from $1 load
- ldq $27,24($18)
- xor $2,$3,$3 # 6 cycles from $3 load
-
- ldq $0,24($19)
- xor $1,$3,$3
- ldq $1,24($20)
- xor $4,$5,$5 # 7 cycles from $5 load
-
- stq $3,0($17)
- xor $6,$7,$7
- xor $21,$22,$22 # 7 cycles from $22 load
- xor $5,$7,$7
-
- stq $7,8($17)
- xor $23,$24,$24 # 7 cycles from $24 load
- ldq $2,32($17)
- xor $22,$24,$24
-
- ldq $3,32($18)
- ldq $4,32($19)
- ldq $5,32($20)
- xor $25,$27,$27 # 8 cycles from $27 load
-
- ldq $6,40($17)
- ldq $7,40($18)
- ldq $21,40($19)
- ldq $22,40($20)
-
- stq $24,16($17)
- xor $0,$1,$1 # 9 cycles from $1 load
- xor $2,$3,$3 # 5 cycles from $3 load
- xor $27,$1,$1
-
- stq $1,24($17)
- xor $4,$5,$5 # 5 cycles from $5 load
- ldq $23,48($17)
- xor $3,$5,$5
-
- ldq $24,48($18)
- ldq $25,48($19)
- ldq $27,48($20)
- ldq $0,56($17)
-
- ldq $1,56($18)
- ldq $2,56($19)
- ldq $3,56($20)
- xor $6,$7,$7 # 8 cycles from $6 load
-
- ldq $31,256($17)
- xor $21,$22,$22 # 8 cycles from $22 load
- ldq $31,256($18)
- xor $7,$22,$22
-
- ldq $31,256($19)
- xor $23,$24,$24 # 6 cycles from $24 load
- ldq $31,256($20)
- xor $25,$27,$27 # 6 cycles from $27 load
-
- stq $5,32($17)
- xor $24,$27,$27
- xor $0,$1,$1 # 7 cycles from $1 load
- xor $2,$3,$3 # 6 cycles from $3 load
-
- stq $22,40($17)
- xor $1,$3,$3
- stq $27,48($17)
- subq $16,1,$16
-
- stq $3,56($17)
- addq $20,64,$20
- addq $19,64,$19
- addq $18,64,$18
-
- addq $17,64,$17
- bgt $16,4b
- ret
- .end xor_alpha_prefetch_4
-
- .align 3
- .ent xor_alpha_prefetch_5
-xor_alpha_prefetch_5:
- .prologue 0
- srl $16, 6, $16
-
- ldq $31, 0($17)
- ldq $31, 0($18)
- ldq $31, 0($19)
- ldq $31, 0($20)
- ldq $31, 0($21)
-
- ldq $31, 64($17)
- ldq $31, 64($18)
- ldq $31, 64($19)
- ldq $31, 64($20)
- ldq $31, 64($21)
-
- ldq $31, 128($17)
- ldq $31, 128($18)
- ldq $31, 128($19)
- ldq $31, 128($20)
- ldq $31, 128($21)
-
- ldq $31, 192($17)
- ldq $31, 192($18)
- ldq $31, 192($19)
- ldq $31, 192($20)
- ldq $31, 192($21)
- .align 4
-5:
- ldq $0,0($17)
- ldq $1,0($18)
- ldq $2,0($19)
- ldq $3,0($20)
-
- ldq $4,0($21)
- ldq $5,8($17)
- ldq $6,8($18)
- ldq $7,8($19)
-
- ldq $22,8($20)
- ldq $23,8($21)
- ldq $24,16($17)
- ldq $25,16($18)
-
- ldq $27,16($19)
- xor $0,$1,$1 # 6 cycles from $1 load
- ldq $28,16($20)
- xor $2,$3,$3 # 6 cycles from $3 load
-
- ldq $0,16($21)
- xor $1,$3,$3
- ldq $1,24($17)
- xor $3,$4,$4 # 7 cycles from $4 load
-
- stq $4,0($17)
- xor $5,$6,$6 # 7 cycles from $6 load
- xor $7,$22,$22 # 7 cycles from $22 load
- xor $6,$23,$23 # 7 cycles from $23 load
-
- ldq $2,24($18)
- xor $22,$23,$23
- ldq $3,24($19)
- xor $24,$25,$25 # 8 cycles from $25 load
-
- stq $23,8($17)
- xor $25,$27,$27 # 8 cycles from $27 load
- ldq $4,24($20)
- xor $28,$0,$0 # 7 cycles from $0 load
-
- ldq $5,24($21)
- xor $27,$0,$0
- ldq $6,32($17)
- ldq $7,32($18)
-
- stq $0,16($17)
- xor $1,$2,$2 # 6 cycles from $2 load
- ldq $22,32($19)
- xor $3,$4,$4 # 4 cycles from $4 load
-
- ldq $23,32($20)
- xor $2,$4,$4
- ldq $24,32($21)
- ldq $25,40($17)
-
- ldq $27,40($18)
- ldq $28,40($19)
- ldq $0,40($20)
- xor $4,$5,$5 # 7 cycles from $5 load
-
- stq $5,24($17)
- xor $6,$7,$7 # 7 cycles from $7 load
- ldq $1,40($21)
- ldq $2,48($17)
-
- ldq $3,48($18)
- xor $7,$22,$22 # 7 cycles from $22 load
- ldq $4,48($19)
- xor $23,$24,$24 # 6 cycles from $24 load
-
- ldq $5,48($20)
- xor $22,$24,$24
- ldq $6,48($21)
- xor $25,$27,$27 # 7 cycles from $27 load
-
- stq $24,32($17)
- xor $27,$28,$28 # 8 cycles from $28 load
- ldq $7,56($17)
- xor $0,$1,$1 # 6 cycles from $1 load
-
- ldq $22,56($18)
- ldq $23,56($19)
- ldq $24,56($20)
- ldq $25,56($21)
-
- ldq $31,256($17)
- xor $28,$1,$1
- ldq $31,256($18)
- xor $2,$3,$3 # 9 cycles from $3 load
-
- ldq $31,256($19)
- xor $3,$4,$4 # 9 cycles from $4 load
- ldq $31,256($20)
- xor $5,$6,$6 # 8 cycles from $6 load
-
- stq $1,40($17)
- xor $4,$6,$6
- xor $7,$22,$22 # 7 cycles from $22 load
- xor $23,$24,$24 # 6 cycles from $24 load
-
- stq $6,48($17)
- xor $22,$24,$24
- ldq $31,256($21)
- xor $24,$25,$25 # 8 cycles from $25 load
-
- stq $25,56($17)
- subq $16,1,$16
- addq $21,64,$21
- addq $20,64,$20
-
- addq $19,64,$19
- addq $18,64,$18
- addq $17,64,$17
- bgt $16,5b
-
- ret
- .end xor_alpha_prefetch_5
+asm(" \n\
+ .text \n\
+ .align 3 \n\
+ .ent xor_alpha_2 \n\
+xor_alpha_2: \n\
+ .prologue 0 \n\
+ srl $16, 6, $16 \n\
+ .align 4 \n\
+2: \n\
+ ldq $0,0($17) \n\
+ ldq $1,0($18) \n\
+ ldq $2,8($17) \n\
+ ldq $3,8($18) \n\
+ \n\
+ ldq $4,16($17) \n\
+ ldq $5,16($18) \n\
+ ldq $6,24($17) \n\
+ ldq $7,24($18) \n\
+ \n\
+ ldq $19,32($17) \n\
+ ldq $20,32($18) \n\
+ ldq $21,40($17) \n\
+ ldq $22,40($18) \n\
+ \n\
+ ldq $23,48($17) \n\
+ ldq $24,48($18) \n\
+ ldq $25,56($17) \n\
+ xor $0,$1,$0 # 7 cycles from $1 load \n\
+ \n\
+ ldq $27,56($18) \n\
+ xor $2,$3,$2 \n\
+ stq $0,0($17) \n\
+ xor $4,$5,$4 \n\
+ \n\
+ stq $2,8($17) \n\
+ xor $6,$7,$6 \n\
+ stq $4,16($17) \n\
+ xor $19,$20,$19 \n\
+ \n\
+ stq $6,24($17) \n\
+ xor $21,$22,$21 \n\
+ stq $19,32($17) \n\
+ xor $23,$24,$23 \n\
+ \n\
+ stq $21,40($17) \n\
+ xor $25,$27,$25 \n\
+ stq $23,48($17) \n\
+ subq $16,1,$16 \n\
+ \n\
+ stq $25,56($17) \n\
+ addq $17,64,$17 \n\
+ addq $18,64,$18 \n\
+ bgt $16,2b \n\
+ \n\
+ ret \n\
+ .end xor_alpha_2 \n\
+ \n\
+ .align 3 \n\
+ .ent xor_alpha_3 \n\
+xor_alpha_3: \n\
+ .prologue 0 \n\
+ srl $16, 6, $16 \n\
+ .align 4 \n\
+3: \n\
+ ldq $0,0($17) \n\
+ ldq $1,0($18) \n\
+ ldq $2,0($19) \n\
+ ldq $3,8($17) \n\
+ \n\
+ ldq $4,8($18) \n\
+ ldq $6,16($17) \n\
+ ldq $7,16($18) \n\
+ ldq $21,24($17) \n\
+ \n\
+ ldq $22,24($18) \n\
+ ldq $24,32($17) \n\
+ ldq $25,32($18) \n\
+ ldq $5,8($19) \n\
+ \n\
+ ldq $20,16($19) \n\
+ ldq $23,24($19) \n\
+ ldq $27,32($19) \n\
+ nop \n\
+ \n\
+ xor $0,$1,$1 # 8 cycles from $0 load \n\
+ xor $3,$4,$4 # 6 cycles from $4 load \n\
+ xor $6,$7,$7 # 6 cycles from $7 load \n\
+ xor $21,$22,$22 # 5 cycles from $22 load \n\
+ \n\
+ xor $1,$2,$2 # 9 cycles from $2 load \n\
+ xor $24,$25,$25 # 5 cycles from $25 load \n\
+ stq $2,0($17) \n\
+ xor $4,$5,$5 # 6 cycles from $5 load \n\
+ \n\
+ stq $5,8($17) \n\
+ xor $7,$20,$20 # 7 cycles from $20 load \n\
+ stq $20,16($17) \n\
+ xor $22,$23,$23 # 7 cycles from $23 load \n\
+ \n\
+ stq $23,24($17) \n\
+ xor $25,$27,$27 # 7 cycles from $27 load \n\
+ stq $27,32($17) \n\
+ nop \n\
+ \n\
+ ldq $0,40($17) \n\
+ ldq $1,40($18) \n\
+ ldq $3,48($17) \n\
+ ldq $4,48($18) \n\
+ \n\
+ ldq $6,56($17) \n\
+ ldq $7,56($18) \n\
+ ldq $2,40($19) \n\
+ ldq $5,48($19) \n\
+ \n\
+ ldq $20,56($19) \n\
+ xor $0,$1,$1 # 4 cycles from $1 load \n\
+ xor $3,$4,$4 # 5 cycles from $4 load \n\
+ xor $6,$7,$7 # 5 cycles from $7 load \n\
+ \n\
+ xor $1,$2,$2 # 4 cycles from $2 load \n\
+ xor $4,$5,$5 # 5 cycles from $5 load \n\
+ stq $2,40($17) \n\
+ xor $7,$20,$20 # 4 cycles from $20 load \n\
+ \n\
+ stq $5,48($17) \n\
+ subq $16,1,$16 \n\
+ stq $20,56($17) \n\
+ addq $19,64,$19 \n\
+ \n\
+ addq $18,64,$18 \n\
+ addq $17,64,$17 \n\
+ bgt $16,3b \n\
+ ret \n\
+ .end xor_alpha_3 \n\
+ \n\
+ .align 3 \n\
+ .ent xor_alpha_4 \n\
+xor_alpha_4: \n\
+ .prologue 0 \n\
+ srl $16, 6, $16 \n\
+ .align 4 \n\
+4: \n\
+ ldq $0,0($17) \n\
+ ldq $1,0($18) \n\
+ ldq $2,0($19) \n\
+ ldq $3,0($20) \n\
+ \n\
+ ldq $4,8($17) \n\
+ ldq $5,8($18) \n\
+ ldq $6,8($19) \n\
+ ldq $7,8($20) \n\
+ \n\
+ ldq $21,16($17) \n\
+ ldq $22,16($18) \n\
+ ldq $23,16($19) \n\
+ ldq $24,16($20) \n\
+ \n\
+ ldq $25,24($17) \n\
+ xor $0,$1,$1 # 6 cycles from $1 load \n\
+ ldq $27,24($18) \n\
+ xor $2,$3,$3 # 6 cycles from $3 load \n\
+ \n\
+ ldq $0,24($19) \n\
+ xor $1,$3,$3 \n\
+ ldq $1,24($20) \n\
+ xor $4,$5,$5 # 7 cycles from $5 load \n\
+ \n\
+ stq $3,0($17) \n\
+ xor $6,$7,$7 \n\
+ xor $21,$22,$22 # 7 cycles from $22 load \n\
+ xor $5,$7,$7 \n\
+ \n\
+ stq $7,8($17) \n\
+ xor $23,$24,$24 # 7 cycles from $24 load \n\
+ ldq $2,32($17) \n\
+ xor $22,$24,$24 \n\
+ \n\
+ ldq $3,32($18) \n\
+ ldq $4,32($19) \n\
+ ldq $5,32($20) \n\
+ xor $25,$27,$27 # 8 cycles from $27 load \n\
+ \n\
+ ldq $6,40($17) \n\
+ ldq $7,40($18) \n\
+ ldq $21,40($19) \n\
+ ldq $22,40($20) \n\
+ \n\
+ stq $24,16($17) \n\
+ xor $0,$1,$1 # 9 cycles from $1 load \n\
+ xor $2,$3,$3 # 5 cycles from $3 load \n\
+ xor $27,$1,$1 \n\
+ \n\
+ stq $1,24($17) \n\
+ xor $4,$5,$5 # 5 cycles from $5 load \n\
+ ldq $23,48($17) \n\
+ ldq $24,48($18) \n\
+ \n\
+ ldq $25,48($19) \n\
+ xor $3,$5,$5 \n\
+ ldq $27,48($20) \n\
+ ldq $0,56($17) \n\
+ \n\
+ ldq $1,56($18) \n\
+ ldq $2,56($19) \n\
+ xor $6,$7,$7 # 8 cycles from $6 load \n\
+ ldq $3,56($20) \n\
+ \n\
+ stq $5,32($17) \n\
+ xor $21,$22,$22 # 8 cycles from $22 load \n\
+ xor $7,$22,$22 \n\
+ xor $23,$24,$24 # 5 cycles from $24 load \n\
+ \n\
+ stq $22,40($17) \n\
+ xor $25,$27,$27 # 5 cycles from $27 load \n\
+ xor $24,$27,$27 \n\
+ xor $0,$1,$1 # 5 cycles from $1 load \n\
+ \n\
+ stq $27,48($17) \n\
+ xor $2,$3,$3 # 4 cycles from $3 load \n\
+ xor $1,$3,$3 \n\
+ subq $16,1,$16 \n\
+ \n\
+ stq $3,56($17) \n\
+ addq $20,64,$20 \n\
+ addq $19,64,$19 \n\
+ addq $18,64,$18 \n\
+ \n\
+ addq $17,64,$17 \n\
+ bgt $16,4b \n\
+ ret \n\
+ .end xor_alpha_4 \n\
+ \n\
+ .align 3 \n\
+ .ent xor_alpha_5 \n\
+xor_alpha_5: \n\
+ .prologue 0 \n\
+ srl $16, 6, $16 \n\
+ .align 4 \n\
+5: \n\
+ ldq $0,0($17) \n\
+ ldq $1,0($18) \n\
+ ldq $2,0($19) \n\
+ ldq $3,0($20) \n\
+ \n\
+ ldq $4,0($21) \n\
+ ldq $5,8($17) \n\
+ ldq $6,8($18) \n\
+ ldq $7,8($19) \n\
+ \n\
+ ldq $22,8($20) \n\
+ ldq $23,8($21) \n\
+ ldq $24,16($17) \n\
+ ldq $25,16($18) \n\
+ \n\
+ ldq $27,16($19) \n\
+ xor $0,$1,$1 # 6 cycles from $1 load \n\
+ ldq $28,16($20) \n\
+ xor $2,$3,$3 # 6 cycles from $3 load \n\
+ \n\
+ ldq $0,16($21) \n\
+ xor $1,$3,$3 \n\
+ ldq $1,24($17) \n\
+ xor $3,$4,$4 # 7 cycles from $4 load \n\
+ \n\
+ stq $4,0($17) \n\
+ xor $5,$6,$6 # 7 cycles from $6 load \n\
+ xor $7,$22,$22 # 7 cycles from $22 load \n\
+ xor $6,$23,$23 # 7 cycles from $23 load \n\
+ \n\
+ ldq $2,24($18) \n\
+ xor $22,$23,$23 \n\
+ ldq $3,24($19) \n\
+ xor $24,$25,$25 # 8 cycles from $25 load \n\
+ \n\
+ stq $23,8($17) \n\
+ xor $25,$27,$27 # 8 cycles from $27 load \n\
+ ldq $4,24($20) \n\
+ xor $28,$0,$0 # 7 cycles from $0 load \n\
+ \n\
+ ldq $5,24($21) \n\
+ xor $27,$0,$0 \n\
+ ldq $6,32($17) \n\
+ ldq $7,32($18) \n\
+ \n\
+ stq $0,16($17) \n\
+ xor $1,$2,$2 # 6 cycles from $2 load \n\
+ ldq $22,32($19) \n\
+ xor $3,$4,$4 # 4 cycles from $4 load \n\
+ \n\
+ ldq $23,32($20) \n\
+ xor $2,$4,$4 \n\
+ ldq $24,32($21) \n\
+ ldq $25,40($17) \n\
+ \n\
+ ldq $27,40($18) \n\
+ ldq $28,40($19) \n\
+ ldq $0,40($20) \n\
+ xor $4,$5,$5 # 7 cycles from $5 load \n\
+ \n\
+ stq $5,24($17) \n\
+ xor $6,$7,$7 # 7 cycles from $7 load \n\
+ ldq $1,40($21) \n\
+ ldq $2,48($17) \n\
+ \n\
+ ldq $3,48($18) \n\
+ xor $7,$22,$22 # 7 cycles from $22 load \n\
+ ldq $4,48($19) \n\
+ xor $23,$24,$24 # 6 cycles from $24 load \n\
+ \n\
+ ldq $5,48($20) \n\
+ xor $22,$24,$24 \n\
+ ldq $6,48($21) \n\
+ xor $25,$27,$27 # 7 cycles from $27 load \n\
+ \n\
+ stq $24,32($17) \n\
+ xor $27,$28,$28 # 8 cycles from $28 load \n\
+ ldq $7,56($17) \n\
+ xor $0,$1,$1 # 6 cycles from $1 load \n\
+ \n\
+ ldq $22,56($18) \n\
+ ldq $23,56($19) \n\
+ ldq $24,56($20) \n\
+ ldq $25,56($21) \n\
+ \n\
+ xor $28,$1,$1 \n\
+ xor $2,$3,$3 # 9 cycles from $3 load \n\
+ xor $3,$4,$4 # 9 cycles from $4 load \n\
+ xor $5,$6,$6 # 8 cycles from $6 load \n\
+ \n\
+ stq $1,40($17) \n\
+ xor $4,$6,$6 \n\
+ xor $7,$22,$22 # 7 cycles from $22 load \n\
+ xor $23,$24,$24 # 6 cycles from $24 load \n\
+ \n\
+ stq $6,48($17) \n\
+ xor $22,$24,$24 \n\
+ subq $16,1,$16 \n\
+ xor $24,$25,$25 # 8 cycles from $25 load \n\
+ \n\
+ stq $25,56($17) \n\
+ addq $21,64,$21 \n\
+ addq $20,64,$20 \n\
+ addq $19,64,$19 \n\
+ \n\
+ addq $18,64,$18 \n\
+ addq $17,64,$17 \n\
+ bgt $16,5b \n\
+ ret \n\
+ .end xor_alpha_5 \n\
+ \n\
+ .align 3 \n\
+ .ent xor_alpha_prefetch_2 \n\
+xor_alpha_prefetch_2: \n\
+ .prologue 0 \n\
+ srl $16, 6, $16 \n\
+ \n\
+ ldq $31, 0($17) \n\
+ ldq $31, 0($18) \n\
+ \n\
+ ldq $31, 64($17) \n\
+ ldq $31, 64($18) \n\
+ \n\
+ ldq $31, 128($17) \n\
+ ldq $31, 128($18) \n\
+ \n\
+ ldq $31, 192($17) \n\
+ ldq $31, 192($18) \n\
+ .align 4 \n\
+2: \n\
+ ldq $0,0($17) \n\
+ ldq $1,0($18) \n\
+ ldq $2,8($17) \n\
+ ldq $3,8($18) \n\
+ \n\
+ ldq $4,16($17) \n\
+ ldq $5,16($18) \n\
+ ldq $6,24($17) \n\
+ ldq $7,24($18) \n\
+ \n\
+ ldq $19,32($17) \n\
+ ldq $20,32($18) \n\
+ ldq $21,40($17) \n\
+ ldq $22,40($18) \n\
+ \n\
+ ldq $23,48($17) \n\
+ ldq $24,48($18) \n\
+ ldq $25,56($17) \n\
+ ldq $27,56($18) \n\
+ \n\
+ ldq $31,256($17) \n\
+ xor $0,$1,$0 # 8 cycles from $1 load \n\
+ ldq $31,256($18) \n\
+ xor $2,$3,$2 \n\
+ \n\
+ stq $0,0($17) \n\
+ xor $4,$5,$4 \n\
+ stq $2,8($17) \n\
+ xor $6,$7,$6 \n\
+ \n\
+ stq $4,16($17) \n\
+ xor $19,$20,$19 \n\
+ stq $6,24($17) \n\
+ xor $21,$22,$21 \n\
+ \n\
+ stq $19,32($17) \n\
+ xor $23,$24,$23 \n\
+ stq $21,40($17) \n\
+ xor $25,$27,$25 \n\
+ \n\
+ stq $23,48($17) \n\
+ subq $16,1,$16 \n\
+ stq $25,56($17) \n\
+ addq $17,64,$17 \n\
+ \n\
+ addq $18,64,$18 \n\
+ bgt $16,2b \n\
+ ret \n\
+ .end xor_alpha_prefetch_2 \n\
+ \n\
+ .align 3 \n\
+ .ent xor_alpha_prefetch_3 \n\
+xor_alpha_prefetch_3: \n\
+ .prologue 0 \n\
+ srl $16, 6, $16 \n\
+ \n\
+ ldq $31, 0($17) \n\
+ ldq $31, 0($18) \n\
+ ldq $31, 0($19) \n\
+ \n\
+ ldq $31, 64($17) \n\
+ ldq $31, 64($18) \n\
+ ldq $31, 64($19) \n\
+ \n\
+ ldq $31, 128($17) \n\
+ ldq $31, 128($18) \n\
+ ldq $31, 128($19) \n\
+ \n\
+ ldq $31, 192($17) \n\
+ ldq $31, 192($18) \n\
+ ldq $31, 192($19) \n\
+ .align 4 \n\
+3: \n\
+ ldq $0,0($17) \n\
+ ldq $1,0($18) \n\
+ ldq $2,0($19) \n\
+ ldq $3,8($17) \n\
+ \n\
+ ldq $4,8($18) \n\
+ ldq $6,16($17) \n\
+ ldq $7,16($18) \n\
+ ldq $21,24($17) \n\
+ \n\
+ ldq $22,24($18) \n\
+ ldq $24,32($17) \n\
+ ldq $25,32($18) \n\
+ ldq $5,8($19) \n\
+ \n\
+ ldq $20,16($19) \n\
+ ldq $23,24($19) \n\
+ ldq $27,32($19) \n\
+ nop \n\
+ \n\
+ xor $0,$1,$1 # 8 cycles from $0 load \n\
+ xor $3,$4,$4 # 7 cycles from $4 load \n\
+ xor $6,$7,$7 # 6 cycles from $7 load \n\
+ xor $21,$22,$22 # 5 cycles from $22 load \n\
+ \n\
+ xor $1,$2,$2 # 9 cycles from $2 load \n\
+ xor $24,$25,$25 # 5 cycles from $25 load \n\
+ stq $2,0($17) \n\
+ xor $4,$5,$5 # 6 cycles from $5 load \n\
+ \n\
+ stq $5,8($17) \n\
+ xor $7,$20,$20 # 7 cycles from $20 load \n\
+ stq $20,16($17) \n\
+ xor $22,$23,$23 # 7 cycles from $23 load \n\
+ \n\
+ stq $23,24($17) \n\
+ xor $25,$27,$27 # 7 cycles from $27 load \n\
+ stq $27,32($17) \n\
+ nop \n\
+ \n\
+ ldq $0,40($17) \n\
+ ldq $1,40($18) \n\
+ ldq $3,48($17) \n\
+ ldq $4,48($18) \n\
+ \n\
+ ldq $6,56($17) \n\
+ ldq $7,56($18) \n\
+ ldq $2,40($19) \n\
+ ldq $5,48($19) \n\
+ \n\
+ ldq $20,56($19) \n\
+ ldq $31,256($17) \n\
+ ldq $31,256($18) \n\
+ ldq $31,256($19) \n\
+ \n\
+ xor $0,$1,$1 # 6 cycles from $1 load \n\
+ xor $3,$4,$4 # 5 cycles from $4 load \n\
+ xor $6,$7,$7 # 5 cycles from $7 load \n\
+ xor $1,$2,$2 # 4 cycles from $2 load \n\
+ \n\
+ xor $4,$5,$5 # 5 cycles from $5 load \n\
+ xor $7,$20,$20 # 4 cycles from $20 load \n\
+ stq $2,40($17) \n\
+ subq $16,1,$16 \n\
+ \n\
+ stq $5,48($17) \n\
+ addq $19,64,$19 \n\
+ stq $20,56($17) \n\
+ addq $18,64,$18 \n\
+ \n\
+ addq $17,64,$17 \n\
+ bgt $16,3b \n\
+ ret \n\
+ .end xor_alpha_prefetch_3 \n\
+ \n\
+ .align 3 \n\
+ .ent xor_alpha_prefetch_4 \n\
+xor_alpha_prefetch_4: \n\
+ .prologue 0 \n\
+ srl $16, 6, $16 \n\
+ \n\
+ ldq $31, 0($17) \n\
+ ldq $31, 0($18) \n\
+ ldq $31, 0($19) \n\
+ ldq $31, 0($20) \n\
+ \n\
+ ldq $31, 64($17) \n\
+ ldq $31, 64($18) \n\
+ ldq $31, 64($19) \n\
+ ldq $31, 64($20) \n\
+ \n\
+ ldq $31, 128($17) \n\
+ ldq $31, 128($18) \n\
+ ldq $31, 128($19) \n\
+ ldq $31, 128($20) \n\
+ \n\
+ ldq $31, 192($17) \n\
+ ldq $31, 192($18) \n\
+ ldq $31, 192($19) \n\
+ ldq $31, 192($20) \n\
+ .align 4 \n\
+4: \n\
+ ldq $0,0($17) \n\
+ ldq $1,0($18) \n\
+ ldq $2,0($19) \n\
+ ldq $3,0($20) \n\
+ \n\
+ ldq $4,8($17) \n\
+ ldq $5,8($18) \n\
+ ldq $6,8($19) \n\
+ ldq $7,8($20) \n\
+ \n\
+ ldq $21,16($17) \n\
+ ldq $22,16($18) \n\
+ ldq $23,16($19) \n\
+ ldq $24,16($20) \n\
+ \n\
+ ldq $25,24($17) \n\
+ xor $0,$1,$1 # 6 cycles from $1 load \n\
+ ldq $27,24($18) \n\
+ xor $2,$3,$3 # 6 cycles from $3 load \n\
+ \n\
+ ldq $0,24($19) \n\
+ xor $1,$3,$3 \n\
+ ldq $1,24($20) \n\
+ xor $4,$5,$5 # 7 cycles from $5 load \n\
+ \n\
+ stq $3,0($17) \n\
+ xor $6,$7,$7 \n\
+ xor $21,$22,$22 # 7 cycles from $22 load \n\
+ xor $5,$7,$7 \n\
+ \n\
+ stq $7,8($17) \n\
+ xor $23,$24,$24 # 7 cycles from $24 load \n\
+ ldq $2,32($17) \n\
+ xor $22,$24,$24 \n\
+ \n\
+ ldq $3,32($18) \n\
+ ldq $4,32($19) \n\
+ ldq $5,32($20) \n\
+ xor $25,$27,$27 # 8 cycles from $27 load \n\
+ \n\
+ ldq $6,40($17) \n\
+ ldq $7,40($18) \n\
+ ldq $21,40($19) \n\
+ ldq $22,40($20) \n\
+ \n\
+ stq $24,16($17) \n\
+ xor $0,$1,$1 # 9 cycles from $1 load \n\
+ xor $2,$3,$3 # 5 cycles from $3 load \n\
+ xor $27,$1,$1 \n\
+ \n\
+ stq $1,24($17) \n\
+ xor $4,$5,$5 # 5 cycles from $5 load \n\
+ ldq $23,48($17) \n\
+ xor $3,$5,$5 \n\
+ \n\
+ ldq $24,48($18) \n\
+ ldq $25,48($19) \n\
+ ldq $27,48($20) \n\
+ ldq $0,56($17) \n\
+ \n\
+ ldq $1,56($18) \n\
+ ldq $2,56($19) \n\
+ ldq $3,56($20) \n\
+ xor $6,$7,$7 # 8 cycles from $6 load \n\
+ \n\
+ ldq $31,256($17) \n\
+ xor $21,$22,$22 # 8 cycles from $22 load \n\
+ ldq $31,256($18) \n\
+ xor $7,$22,$22 \n\
+ \n\
+ ldq $31,256($19) \n\
+ xor $23,$24,$24 # 6 cycles from $24 load \n\
+ ldq $31,256($20) \n\
+ xor $25,$27,$27 # 6 cycles from $27 load \n\
+ \n\
+ stq $5,32($17) \n\
+ xor $24,$27,$27 \n\
+ xor $0,$1,$1 # 7 cycles from $1 load \n\
+ xor $2,$3,$3 # 6 cycles from $3 load \n\
+ \n\
+ stq $22,40($17) \n\
+ xor $1,$3,$3 \n\
+ stq $27,48($17) \n\
+ subq $16,1,$16 \n\
+ \n\
+ stq $3,56($17) \n\
+ addq $20,64,$20 \n\
+ addq $19,64,$19 \n\
+ addq $18,64,$18 \n\
+ \n\
+ addq $17,64,$17 \n\
+ bgt $16,4b \n\
+ ret \n\
+ .end xor_alpha_prefetch_4 \n\
+ \n\
+ .align 3 \n\
+ .ent xor_alpha_prefetch_5 \n\
+xor_alpha_prefetch_5: \n\
+ .prologue 0 \n\
+ srl $16, 6, $16 \n\
+ \n\
+ ldq $31, 0($17) \n\
+ ldq $31, 0($18) \n\
+ ldq $31, 0($19) \n\
+ ldq $31, 0($20) \n\
+ ldq $31, 0($21) \n\
+ \n\
+ ldq $31, 64($17) \n\
+ ldq $31, 64($18) \n\
+ ldq $31, 64($19) \n\
+ ldq $31, 64($20) \n\
+ ldq $31, 64($21) \n\
+ \n\
+ ldq $31, 128($17) \n\
+ ldq $31, 128($18) \n\
+ ldq $31, 128($19) \n\
+ ldq $31, 128($20) \n\
+ ldq $31, 128($21) \n\
+ \n\
+ ldq $31, 192($17) \n\
+ ldq $31, 192($18) \n\
+ ldq $31, 192($19) \n\
+ ldq $31, 192($20) \n\
+ ldq $31, 192($21) \n\
+ .align 4 \n\
+5: \n\
+ ldq $0,0($17) \n\
+ ldq $1,0($18) \n\
+ ldq $2,0($19) \n\
+ ldq $3,0($20) \n\
+ \n\
+ ldq $4,0($21) \n\
+ ldq $5,8($17) \n\
+ ldq $6,8($18) \n\
+ ldq $7,8($19) \n\
+ \n\
+ ldq $22,8($20) \n\
+ ldq $23,8($21) \n\
+ ldq $24,16($17) \n\
+ ldq $25,16($18) \n\
+ \n\
+ ldq $27,16($19) \n\
+ xor $0,$1,$1 # 6 cycles from $1 load \n\
+ ldq $28,16($20) \n\
+ xor $2,$3,$3 # 6 cycles from $3 load \n\
+ \n\
+ ldq $0,16($21) \n\
+ xor $1,$3,$3 \n\
+ ldq $1,24($17) \n\
+ xor $3,$4,$4 # 7 cycles from $4 load \n\
+ \n\
+ stq $4,0($17) \n\
+ xor $5,$6,$6 # 7 cycles from $6 load \n\
+ xor $7,$22,$22 # 7 cycles from $22 load \n\
+ xor $6,$23,$23 # 7 cycles from $23 load \n\
+ \n\
+ ldq $2,24($18) \n\
+ xor $22,$23,$23 \n\
+ ldq $3,24($19) \n\
+ xor $24,$25,$25 # 8 cycles from $25 load \n\
+ \n\
+ stq $23,8($17) \n\
+ xor $25,$27,$27 # 8 cycles from $27 load \n\
+ ldq $4,24($20) \n\
+ xor $28,$0,$0 # 7 cycles from $0 load \n\
+ \n\
+ ldq $5,24($21) \n\
+ xor $27,$0,$0 \n\
+ ldq $6,32($17) \n\
+ ldq $7,32($18) \n\
+ \n\
+ stq $0,16($17) \n\
+ xor $1,$2,$2 # 6 cycles from $2 load \n\
+ ldq $22,32($19) \n\
+ xor $3,$4,$4 # 4 cycles from $4 load \n\
+ \n\
+ ldq $23,32($20) \n\
+ xor $2,$4,$4 \n\
+ ldq $24,32($21) \n\
+ ldq $25,40($17) \n\
+ \n\
+ ldq $27,40($18) \n\
+ ldq $28,40($19) \n\
+ ldq $0,40($20) \n\
+ xor $4,$5,$5 # 7 cycles from $5 load \n\
+ \n\
+ stq $5,24($17) \n\
+ xor $6,$7,$7 # 7 cycles from $7 load \n\
+ ldq $1,40($21) \n\
+ ldq $2,48($17) \n\
+ \n\
+ ldq $3,48($18) \n\
+ xor $7,$22,$22 # 7 cycles from $22 load \n\
+ ldq $4,48($19) \n\
+ xor $23,$24,$24 # 6 cycles from $24 load \n\
+ \n\
+ ldq $5,48($20) \n\
+ xor $22,$24,$24 \n\
+ ldq $6,48($21) \n\
+ xor $25,$27,$27 # 7 cycles from $27 load \n\
+ \n\
+ stq $24,32($17) \n\
+ xor $27,$28,$28 # 8 cycles from $28 load \n\
+ ldq $7,56($17) \n\
+ xor $0,$1,$1 # 6 cycles from $1 load \n\
+ \n\
+ ldq $22,56($18) \n\
+ ldq $23,56($19) \n\
+ ldq $24,56($20) \n\
+ ldq $25,56($21) \n\
+ \n\
+ ldq $31,256($17) \n\
+ xor $28,$1,$1 \n\
+ ldq $31,256($18) \n\
+ xor $2,$3,$3 # 9 cycles from $3 load \n\
+ \n\
+ ldq $31,256($19) \n\
+ xor $3,$4,$4 # 9 cycles from $4 load \n\
+ ldq $31,256($20) \n\
+ xor $5,$6,$6 # 8 cycles from $6 load \n\
+ \n\
+ stq $1,40($17) \n\
+ xor $4,$6,$6 \n\
+ xor $7,$22,$22 # 7 cycles from $22 load \n\
+ xor $23,$24,$24 # 6 cycles from $24 load \n\
+ \n\
+ stq $6,48($17) \n\
+ xor $22,$24,$24 \n\
+ ldq $31,256($21) \n\
+ xor $24,$25,$25 # 8 cycles from $25 load \n\
+ \n\
+ stq $25,56($17) \n\
+ subq $16,1,$16 \n\
+ addq $21,64,$21 \n\
+ addq $20,64,$20 \n\
+ \n\
+ addq $19,64,$19 \n\
+ addq $18,64,$18 \n\
+ addq $17,64,$17 \n\
+ bgt $16,5b \n\
+ \n\
+ ret \n\
+ .end xor_alpha_prefetch_5 \n\
");
static struct xor_block_template xor_block_alpha = {
diff --git a/include/linux/device.h b/include/linux/device.h
index 6ce7d11cc8f9..b434f2725c23 100644
--- a/include/linux/device.h
+++ b/include/linux/device.h
@@ -438,9 +438,9 @@ extern void device_resume(u32 level);
extern void device_shutdown(void);
-/* drivrs/base/firmware.c */
+/* drivers/base/firmware.c */
extern int firmware_register(struct subsystem *);
-extern void firmware_uregister(struct subsystem *);
+extern void firmware_unregister(struct subsystem *);
/* debugging and troubleshooting/diagnostic helpers. */
#ifdef DEBUG
diff --git a/include/linux/jffs2.h b/include/linux/jffs2.h
index 89ed92acf87a..958cab16d8a7 100644
--- a/include/linux/jffs2.h
+++ b/include/linux/jffs2.h
@@ -8,7 +8,7 @@
* For licensing information, see the file 'LICENCE' in the
* jffs2 directory.
*
- * $Id: jffs2.h,v 1.24 2002/05/20 14:56:37 dwmw2 Exp $
+ * $Id: jffs2.h,v 1.25 2002/08/20 21:37:27 dwmw2 Exp $
*
*/
@@ -68,30 +68,65 @@
compression type */
+/* These can go once we've made sure we've caught all uses without
+ byteswapping */
+
+typedef struct {
+ uint32_t v32;
+} __attribute__((packed)) jint32_t;
+
+typedef struct {
+ uint16_t v16;
+} __attribute__((packed)) jint16_t;
+
+#define JFFS2_NATIVE_ENDIAN
+
+#if defined(JFFS2_NATIVE_ENDIAN)
+#define cpu_to_je16(x) ((jint16_t){x})
+#define cpu_to_je32(x) ((jint32_t){x})
+
+#define je16_to_cpu(x) ((x).v16)
+#define je32_to_cpu(x) ((x).v32)
+#elif defined(JFFS2_BIG_ENDIAN)
+#define cpu_to_je16(x) ((jint16_t){cpu_to_be16(x)})
+#define cpu_to_je32(x) ((jint32_t){cpu_to_be32(x)})
+
+#define je16_to_cpu(x) (be16_to_cpu(x.v16))
+#define je32_to_cpu(x) (be32_to_cpu(x.v32))
+#elif defined(JFFS2_LITTLE_ENDIAN)
+#define cpu_to_je16(x) ((jint16_t){cpu_to_le16(x)})
+#define cpu_to_je32(x) ((jint32_t){cpu_to_le32(x)})
+
+#define je16_to_cpu(x) (le16_to_cpu(x.v16))
+#define je32_to_cpu(x) (le32_to_cpu(x.v32))
+#else
+#error wibble
+#endif
+
struct jffs2_unknown_node
{
/* All start like this */
- uint16_t magic;
- uint16_t nodetype;
- uint32_t totlen; /* So we can skip over nodes we don't grok */
- uint32_t hdr_crc;
+ jint16_t magic;
+ jint16_t nodetype;
+ jint32_t totlen; /* So we can skip over nodes we don't grok */
+ jint32_t hdr_crc;
} __attribute__((packed));
struct jffs2_raw_dirent
{
- uint16_t magic;
- uint16_t nodetype; /* == JFFS_NODETYPE_DIRENT */
- uint32_t totlen;
- uint32_t hdr_crc;
- uint32_t pino;
- uint32_t version;
- uint32_t ino; /* == zero for unlink */
- uint32_t mctime;
+ jint16_t magic;
+ jint16_t nodetype; /* == JFFS_NODETYPE_DIRENT */
+ jint32_t totlen;
+ jint32_t hdr_crc;
+ jint32_t pino;
+ jint32_t version;
+ jint32_t ino; /* == zero for unlink */
+ jint32_t mctime;
uint8_t nsize;
uint8_t type;
uint8_t unused[2];
- uint32_t node_crc;
- uint32_t name_crc;
+ jint32_t node_crc;
+ jint32_t name_crc;
uint8_t name[0];
} __attribute__((packed));
@@ -103,27 +138,27 @@ struct jffs2_raw_dirent
*/
struct jffs2_raw_inode
{
- uint16_t magic; /* A constant magic number. */
- uint16_t nodetype; /* == JFFS_NODETYPE_INODE */
- uint32_t totlen; /* Total length of this node (inc data, etc.) */
- uint32_t hdr_crc;
- uint32_t ino; /* Inode number. */
- uint32_t version; /* Version number. */
- uint32_t mode; /* The file's type or mode. */
- uint16_t uid; /* The file's owner. */
- uint16_t gid; /* The file's group. */
- uint32_t isize; /* Total resultant size of this inode (used for truncations) */
- uint32_t atime; /* Last access time. */
- uint32_t mtime; /* Last modification time. */
- uint32_t ctime; /* Change time. */
- uint32_t offset; /* Where to begin to write. */
- uint32_t csize; /* (Compressed) data size */
- uint32_t dsize; /* Size of the node's data. (after decompression) */
+ jint16_t magic; /* A constant magic number. */
+ jint16_t nodetype; /* == JFFS_NODETYPE_INODE */
+ jint32_t totlen; /* Total length of this node (inc data, etc.) */
+ jint32_t hdr_crc;
+ jint32_t ino; /* Inode number. */
+ jint32_t version; /* Version number. */
+ jint32_t mode; /* The file's type or mode. */
+ jint16_t uid; /* The file's owner. */
+ jint16_t gid; /* The file's group. */
+ jint32_t isize; /* Total resultant size of this inode (used for truncations) */
+ jint32_t atime; /* Last access time. */
+ jint32_t mtime; /* Last modification time. */
+ jint32_t ctime; /* Change time. */
+ jint32_t offset; /* Where to begin to write. */
+ jint32_t csize; /* (Compressed) data size */
+ jint32_t dsize; /* Size of the node's data. (after decompression) */
uint8_t compr; /* Compression algorithm used */
uint8_t usercompr; /* Compression algorithm requested by the user */
- uint16_t flags; /* See JFFS2_INO_FLAG_* */
- uint32_t data_crc; /* CRC for the (compressed) data. */
- uint32_t node_crc; /* CRC for the raw inode (excluding data) */
+ jint16_t flags; /* See JFFS2_INO_FLAG_* */
+ jint32_t data_crc; /* CRC for the (compressed) data. */
+ jint32_t node_crc; /* CRC for the raw inode (excluding data) */
// uint8_t data[dsize];
} __attribute__((packed));
diff --git a/include/linux/jffs2_fs_i.h b/include/linux/jffs2_fs_i.h
index 03530b6065d9..db91aa6c0322 100644
--- a/include/linux/jffs2_fs_i.h
+++ b/include/linux/jffs2_fs_i.h
@@ -1,9 +1,10 @@
-/* $Id: jffs2_fs_i.h,v 1.12 2002/03/06 13:59:21 dwmw2 Exp $ */
+/* $Id: jffs2_fs_i.h,v 1.15 2002/11/12 09:42:49 dwmw2 Exp $ */
#ifndef _JFFS2_FS_I
#define _JFFS2_FS_I
#include <linux/version.h>
+#include <linux/rbtree.h>
struct jffs2_inode_info {
/* We need an internal semaphore similar to inode->i_sem.
@@ -18,7 +19,7 @@ struct jffs2_inode_info {
uint32_t highest_version;
/* List of data fragments which make up the file */
- struct jffs2_node_frag *fraglist;
+ struct rb_root fragtree;
/* There may be one datanode which isn't referenced by any of the
above fragments, if it contains a metadata update but no actual
diff --git a/include/linux/jffs2_fs_sb.h b/include/linux/jffs2_fs_sb.h
index 611aa1b5b129..7cfabbd614cb 100644
--- a/include/linux/jffs2_fs_sb.h
+++ b/include/linux/jffs2_fs_sb.h
@@ -1,4 +1,4 @@
-/* $Id: jffs2_fs_sb.h,v 1.32 2002/07/23 14:35:34 dwmw2 Exp $ */
+/* $Id: jffs2_fs_sb.h,v 1.35 2002/11/12 09:42:18 dwmw2 Exp $ */
#ifndef _JFFS2_FS_SB
#define _JFFS2_FS_SB
@@ -21,6 +21,8 @@ struct jffs2_sb_info {
struct mtd_info *mtd;
uint32_t highest_ino;
+ uint32_t checked_ino;
+
unsigned int flags;
struct task_struct *gc_task; /* GC task struct */
@@ -38,10 +40,12 @@ struct jffs2_sb_info {
uint32_t flash_size;
uint32_t used_size;
uint32_t dirty_size;
+ uint32_t wasted_size;
uint32_t free_size;
uint32_t erasing_size;
uint32_t bad_size;
uint32_t sector_size;
+ uint32_t unchecked_size;
uint32_t nr_free_blocks;
uint32_t nr_erasing_blocks;
diff --git a/include/linux/module.h b/include/linux/module.h
index 4f440aa11f21..47ff2bc63e33 100644
--- a/include/linux/module.h
+++ b/include/linux/module.h
@@ -49,21 +49,6 @@ extern struct module __this_module;
#define THIS_MODULE ((struct module *)0)
#endif
-#ifdef CONFIG_MODULES
-/* Get/put a kernel symbol (calls must be symmetric) */
-void *__symbol_get(const char *symbol);
-void *__symbol_get_gpl(const char *symbol);
-#define symbol_get(x) ((typeof(&x))(__symbol_get(#x)))
-
-/* For every exported symbol, place a struct in the __ksymtab section */
-#define EXPORT_SYMBOL(sym) \
- const struct kernel_symbol __ksymtab_##sym \
- __attribute__((section("__ksymtab"))) \
- = { (unsigned long)&sym, #sym }
-
-#define EXPORT_SYMBOL_NOVERS(sym) EXPORT_SYMBOL(sym)
-#define EXPORT_SYMBOL_GPL(sym) EXPORT_SYMBOL(sym)
-
struct kernel_symbol_group
{
/* Links us into the global symbol list */
@@ -84,6 +69,22 @@ struct exception_table
const struct exception_table_entry *entry;
};
+
+#ifdef CONFIG_MODULES
+/* Get/put a kernel symbol (calls must be symmetric) */
+void *__symbol_get(const char *symbol);
+void *__symbol_get_gpl(const char *symbol);
+#define symbol_get(x) ((typeof(&x))(__symbol_get(#x)))
+
+/* For every exported symbol, place a struct in the __ksymtab section */
+#define EXPORT_SYMBOL(sym) \
+ const struct kernel_symbol __ksymtab_##sym \
+ __attribute__((section("__ksymtab"))) \
+ = { (unsigned long)&sym, #sym }
+
+#define EXPORT_SYMBOL_NOVERS(sym) EXPORT_SYMBOL(sym)
+#define EXPORT_SYMBOL_GPL(sym) EXPORT_SYMBOL(sym)
+
struct module_ref
{
atomic_t count;
@@ -302,6 +303,14 @@ extern int module_dummy_usage;
#define cleanup_module(voidarg) __exitfn(void)
#endif
+/*
+ * The exception and symbol tables, and the lock
+ * to protect them.
+ */
+extern spinlock_t modlist_lock;
+extern struct list_head extables;
+extern struct list_head symbols;
+
/* Use symbol_get and symbol_put instead. You'll thank me. */
#define HAVE_INTER_MODULE
extern void inter_module_register(const char *, struct module *, const void *);
diff --git a/include/linux/nfs_fs.h b/include/linux/nfs_fs.h
index d6f510d638d0..8d15e17c0b94 100644
--- a/include/linux/nfs_fs.h
+++ b/include/linux/nfs_fs.h
@@ -118,8 +118,8 @@ struct nfs_inode {
* mtime != read_cache_mtime
*/
unsigned long read_cache_jiffies;
- __u64 read_cache_ctime;
- __u64 read_cache_mtime;
+ struct timespec read_cache_ctime;
+ struct timespec read_cache_mtime;
__u64 read_cache_isize;
unsigned long attrtimeo;
unsigned long attrtimeo_timestamp;
@@ -416,20 +416,6 @@ nfs_fileid_to_ino_t(u64 fileid)
return ino;
}
-static inline time_t
-nfs_time_to_secs(__u64 time)
-{
- return (time_t)(time >> 32);
-}
-
-
-static inline u32
-nfs_time_to_nsecs(__u64 time)
-{
- return time & 0xffffffff;
-}
-
-
/* NFS root */
extern void * nfs_root_data(void);
diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h
index 4bb5125056e7..6c82048e2acf 100644
--- a/include/linux/nfs_xdr.h
+++ b/include/linux/nfs_xdr.h
@@ -6,8 +6,8 @@
struct nfs_fattr {
unsigned short valid; /* which fields are valid */
__u64 pre_size; /* pre_op_attr.size */
- __u64 pre_mtime; /* pre_op_attr.mtime */
- __u64 pre_ctime; /* pre_op_attr.ctime */
+ struct timespec pre_mtime; /* pre_op_attr.mtime */
+ struct timespec pre_ctime; /* pre_op_attr.ctime */
enum nfs_ftype type; /* always use NFSv2 types */
__u32 mode;
__u32 nlink;
@@ -32,9 +32,9 @@ struct nfs_fattr {
} nfs4;
} fsid_u;
__u64 fileid;
- __u64 atime;
- __u64 mtime;
- __u64 ctime;
+ struct timespec atime;
+ struct timespec mtime;
+ struct timespec ctime;
__u64 change_attr; /* NFSv4 change attribute */
__u64 pre_change_attr;/* pre-op NFSv4 change attribute */
unsigned long timestamp;
@@ -219,7 +219,7 @@ struct nfs3_sattrargs {
struct nfs_fh * fh;
struct iattr * sattr;
unsigned int guard;
- __u64 guardtime;
+ struct timespec guardtime;
};
struct nfs3_diropargs {
diff --git a/include/linux/udf_fs_i.h b/include/linux/udf_fs_i.h
index f297d528aded..186a5a47b50b 100644
--- a/include/linux/udf_fs_i.h
+++ b/include/linux/udf_fs_i.h
@@ -43,10 +43,7 @@ typedef struct
struct udf_inode_info
{
- long i_umtime;
- long i_uctime;
- long i_crtime;
- long i_ucrtime;
+ struct timespec i_crtime;
/* Physical address of inode */
lb_addr i_location;
__u64 i_unique;
diff --git a/include/linux/udf_fs_sb.h b/include/linux/udf_fs_sb.h
index e898136bf947..b73cebba5551 100644
--- a/include/linux/udf_fs_sb.h
+++ b/include/linux/udf_fs_sb.h
@@ -97,7 +97,7 @@ struct udf_sb_info
uid_t s_uid;
/* Root Info */
- time_t s_recordtime;
+ struct timespec s_recordtime;
/* Fileset Info */
__u16 s_serialnum;
diff --git a/include/math-emu/op-4.h b/include/math-emu/op-4.h
index 18e43431b4f6..ba226f8237a6 100644
--- a/include/math-emu/op-4.h
+++ b/include/math-emu/op-4.h
@@ -513,58 +513,84 @@
(X##_f[3] = I3, X##_f[2] = I2, X##_f[1] = I1, X##_f[0] = I0)
#ifndef __FP_FRAC_ADD_3
-#define __FP_FRAC_ADD_3(r2,r1,r0,x2,x1,x0,y2,y1,y0) \
- (r0 = x0 + y0, \
- r1 = x1 + y1 + (r0 < x0), \
- r2 = x2 + y2 + (r1 < x1))
+#define __FP_FRAC_ADD_3(r2,r1,r0,x2,x1,x0,y2,y1,y0) \
+ do { \
+ int _c1, _c2; \
+ r0 = x0 + y0; \
+ _c1 = r0 < x0; \
+ r1 = x1 + y1; \
+ _c2 = r1 < x1; \
+ r1 += _c1; \
+ _c2 |= r1 < _c1; \
+ r2 = x2 + y2 + _c2; \
+ } while (0)
#endif
#ifndef __FP_FRAC_ADD_4
-#define __FP_FRAC_ADD_4(r3,r2,r1,r0,x3,x2,x1,x0,y3,y2,y1,y0) \
- (r0 = x0 + y0, \
- r1 = x1 + y1 + (r0 < x0), \
- r2 = x2 + y2 + (r1 < x1), \
- r3 = x3 + y3 + (r2 < x2))
+#define __FP_FRAC_ADD_4(r3,r2,r1,r0,x3,x2,x1,x0,y3,y2,y1,y0) \
+ do { \
+ int _c1, _c2, _c3; \
+ r0 = x0 + y0; \
+ _c1 = r0 < x0; \
+ r1 = x1 + y1; \
+ _c2 = r1 < x1; \
+ r1 += _c1; \
+ _c2 |= r1 < _c1; \
+ r2 = x2 + y2; \
+ _c3 = r2 < x2; \
+ r2 += _c2; \
+ _c3 |= r2 < _c2; \
+ r3 = x3 + y3 + _c3; \
+ } while (0)
#endif
#ifndef __FP_FRAC_SUB_3
-#define __FP_FRAC_SUB_3(r2,r1,r0,x2,x1,x0,y2,y1,y0) \
- (r0 = x0 - y0, \
- r1 = x1 - y1 - (r0 > x0), \
- r2 = x2 - y2 - (r1 > x1))
+#define __FP_FRAC_SUB_3(r2,r1,r0,x2,x1,x0,y2,y1,y0) \
+ do { \
+ int _c1, _c2; \
+ r0 = x0 - y0; \
+ _c1 = r0 > x0; \
+ r1 = x1 - y1; \
+ _c2 = r1 > x1; \
+ r1 -= _c1; \
+ _c2 |= r1 > _c1; \
+ r2 = x2 - y2 - _c2; \
+ } while (0)
#endif
#ifndef __FP_FRAC_SUB_4
-#define __FP_FRAC_SUB_4(r3,r2,r1,r0,x3,x2,x1,x0,y3,y2,y1,y0) \
- (r0 = x0 - y0, \
- r1 = x1 - y1 - (r0 > x0), \
- r2 = x2 - y2 - (r1 > x1), \
- r3 = x3 - y3 - (r2 > x2))
+#define __FP_FRAC_SUB_4(r3,r2,r1,r0,x3,x2,x1,x0,y3,y2,y1,y0) \
+ do { \
+ int _c1, _c2, _c3; \
+ r0 = x0 - y0; \
+ _c1 = r0 > x0; \
+ r1 = x1 - y1; \
+ _c2 = r1 > x1; \
+ r1 -= _c1; \
+ _c2 |= r1 > _c1; \
+ r2 = x2 - y2; \
+ _c3 = r2 > x2; \
+ r2 -= _c2; \
+ _c3 |= r2 > _c2; \
+ r3 = x3 - y3 - _c3; \
+ } while (0)
#endif
#ifndef __FP_FRAC_DEC_3
#define __FP_FRAC_DEC_3(x2,x1,x0,y2,y1,y0) \
do { \
- UWtype _t0, _t1; \
- _t0 = x0; \
- x0 -= y0; \
- _t1 = x1; \
- x1 -= y1 + (x0 > _t0); \
- x2 -= y2 + (x1 > _t1); \
+ UWtype _t0, _t1, _t2; \
+ _t0 = x0, _t1 = x1, _t2 = x2; \
+ __FP_FRAC_SUB_3 (x2, x1, x0, _t2, _t1, _t0, y2, y1, y0); \
} while (0)
#endif
#ifndef __FP_FRAC_DEC_4
#define __FP_FRAC_DEC_4(x3,x2,x1,x0,y3,y2,y1,y0) \
do { \
- UWtype _t0, _t1; \
- _t0 = x0; \
- x0 -= y0; \
- _t1 = x1; \
- x1 -= y1 + (x0 > _t0); \
- _t0 = x2; \
- x2 -= y2 + (x1 > _t1); \
- x3 -= y3 + (x2 > _t0); \
+ UWtype _t0, _t1, _t2, _t3; \
+ _t0 = x0, _t1 = x1, _t2 = x2, _t3 = x3; \
+ __FP_FRAC_SUB_4 (x3,x2,x1,x0,_t3,_t2,_t1,_t0, y3,y2,y1,y0); \
} while (0)
#endif
diff --git a/include/sound/core.h b/include/sound/core.h
index 4ba70412cb79..4ea5f5ff8849 100644
--- a/include/sound/core.h
+++ b/include/sound/core.h
@@ -177,11 +177,11 @@ static inline void snd_power_change_state(snd_card_t *card, unsigned int state)
wake_up(&card->power_sleep);
}
#else
-#define snd_power_lock(card) do { ; } while (0)
-#define snd_power_unlock(card) do { ; } while (0)
-#define snd_power_wait(card) do { ; } while (0)
-#define snd_power_get_state(card) SNDRV_CTL_POWER_D0
-#define snd_power_change_state(card, state) do { ; } while (0)
+#define snd_power_lock(card) do { (void)(card); } while (0)
+#define snd_power_unlock(card) do { (void)(card); } while (0)
+#define snd_power_wait(card) do { (void)(card); } while (0)
+#define snd_power_get_state(card) SNDRV_CTL_POWER_D0
+#define snd_power_change_state(card, state) do { (void)(card); } while (0)
#endif
/* device.c */