patch-2.4.19 linux-2.4.19/include/asm-sparc64/xor.h
Next file: linux-2.4.19/include/linux/ac97_codec.h
Previous file: linux-2.4.19/include/asm-sparc64/unistd.h
Back to the patch index
Back to the overall index
- Lines: 683
- Date:
Fri Aug 2 17:39:45 2002
- Orig file:
linux-2.4.18/include/asm-sparc64/xor.h
- Orig date:
Sun Nov 4 09:31:57 2001
diff -urN linux-2.4.18/include/asm-sparc64/xor.h linux-2.4.19/include/asm-sparc64/xor.h
@@ -47,344 +47,344 @@
/* ??? We set and use %asi instead of using ASI_BLK_P directly because gas
currently does not accept symbolic constants for the ASI specifier. */
-__asm__ ("
- .text
- .globl xor_vis_2
- .type xor_vis_2,@function
-xor_vis_2:
- rd %fprs, %o5
- andcc %o5, FPRS_FEF|FPRS_DU, %g0
- be,pt %icc, 0f
- sethi %hi(VISenter), %g1
- jmpl %g1 + %lo(VISenter), %g7
- add %g7, 8, %g7
-0: wr %g0, FPRS_FEF, %fprs
- rd %asi, %g1
- wr %g0, ASI_BLK_P, %asi
- membar #LoadStore|#StoreLoad|#StoreStore
- sub %o0, 128, %o0
- ldda [%o1] %asi, %f0
- ldda [%o2] %asi, %f16
-
-2: ldda [%o1 + 64] %asi, %f32
- fxor %f0, %f16, %f16
- fxor %f2, %f18, %f18
- fxor %f4, %f20, %f20
- fxor %f6, %f22, %f22
- fxor %f8, %f24, %f24
- fxor %f10, %f26, %f26
- fxor %f12, %f28, %f28
- fxor %f14, %f30, %f30
- stda %f16, [%o1] %asi
- ldda [%o2 + 64] %asi, %f48
- ldda [%o1 + 128] %asi, %f0
- fxor %f32, %f48, %f48
- fxor %f34, %f50, %f50
- add %o1, 128, %o1
- fxor %f36, %f52, %f52
- add %o2, 128, %o2
- fxor %f38, %f54, %f54
- subcc %o0, 128, %o0
- fxor %f40, %f56, %f56
- fxor %f42, %f58, %f58
- fxor %f44, %f60, %f60
- fxor %f46, %f62, %f62
- stda %f48, [%o1 - 64] %asi
- bne,pt %xcc, 2b
- ldda [%o2] %asi, %f16
-
- ldda [%o1 + 64] %asi, %f32
- fxor %f0, %f16, %f16
- fxor %f2, %f18, %f18
- fxor %f4, %f20, %f20
- fxor %f6, %f22, %f22
- fxor %f8, %f24, %f24
- fxor %f10, %f26, %f26
- fxor %f12, %f28, %f28
- fxor %f14, %f30, %f30
- stda %f16, [%o1] %asi
- ldda [%o2 + 64] %asi, %f48
- membar #Sync
- fxor %f32, %f48, %f48
- fxor %f34, %f50, %f50
- fxor %f36, %f52, %f52
- fxor %f38, %f54, %f54
- fxor %f40, %f56, %f56
- fxor %f42, %f58, %f58
- fxor %f44, %f60, %f60
- fxor %f46, %f62, %f62
- stda %f48, [%o1 + 64] %asi
- membar #Sync|#StoreStore|#StoreLoad
- wr %g1, %g0, %asi
- retl
- wr %g0, 0, %fprs
- .size xor_vis_2, .-xor_vis_2
-
-
- .globl xor_vis_3
- .type xor_vis_3,@function
-xor_vis_3:
- rd %fprs, %o5
- andcc %o5, FPRS_FEF|FPRS_DU, %g0
- be,pt %icc, 0f
- sethi %hi(VISenter), %g1
- jmpl %g1 + %lo(VISenter), %g7
- add %g7, 8, %g7
-0: wr %g0, FPRS_FEF, %fprs
- rd %asi, %g1
- wr %g0, ASI_BLK_P, %asi
- membar #LoadStore|#StoreLoad|#StoreStore
- sub %o0, 64, %o0
- ldda [%o1] %asi, %f0
- ldda [%o2] %asi, %f16
-
-3: ldda [%o3] %asi, %f32
- fxor %f0, %f16, %f48
- fxor %f2, %f18, %f50
- add %o1, 64, %o1
- fxor %f4, %f20, %f52
- fxor %f6, %f22, %f54
- add %o2, 64, %o2
- fxor %f8, %f24, %f56
- fxor %f10, %f26, %f58
- fxor %f12, %f28, %f60
- fxor %f14, %f30, %f62
- ldda [%o1] %asi, %f0
- fxor %f48, %f32, %f48
- fxor %f50, %f34, %f50
- fxor %f52, %f36, %f52
- fxor %f54, %f38, %f54
- add %o3, 64, %o3
- fxor %f56, %f40, %f56
- fxor %f58, %f42, %f58
- subcc %o0, 64, %o0
- fxor %f60, %f44, %f60
- fxor %f62, %f46, %f62
- stda %f48, [%o1 - 64] %asi
- bne,pt %xcc, 3b
- ldda [%o2] %asi, %f16
-
- ldda [%o3] %asi, %f32
- fxor %f0, %f16, %f48
- fxor %f2, %f18, %f50
- fxor %f4, %f20, %f52
- fxor %f6, %f22, %f54
- fxor %f8, %f24, %f56
- fxor %f10, %f26, %f58
- fxor %f12, %f28, %f60
- fxor %f14, %f30, %f62
- membar #Sync
- fxor %f48, %f32, %f48
- fxor %f50, %f34, %f50
- fxor %f52, %f36, %f52
- fxor %f54, %f38, %f54
- fxor %f56, %f40, %f56
- fxor %f58, %f42, %f58
- fxor %f60, %f44, %f60
- fxor %f62, %f46, %f62
- stda %f48, [%o1] %asi
- membar #Sync|#StoreStore|#StoreLoad
- wr %g1, %g0, %asi
- retl
- wr %g0, 0, %fprs
- .size xor_vis_3, .-xor_vis_3
-
-
- .globl xor_vis_4
- .type xor_vis_4,@function
-xor_vis_4:
- rd %fprs, %o5
- andcc %o5, FPRS_FEF|FPRS_DU, %g0
- be,pt %icc, 0f
- sethi %hi(VISenter), %g1
- jmpl %g1 + %lo(VISenter), %g7
- add %g7, 8, %g7
-0: wr %g0, FPRS_FEF, %fprs
- rd %asi, %g1
- wr %g0, ASI_BLK_P, %asi
- membar #LoadStore|#StoreLoad|#StoreStore
- sub %o0, 64, %o0
- ldda [%o1] %asi, %f0
- ldda [%o2] %asi, %f16
-
-4: ldda [%o3] %asi, %f32
- fxor %f0, %f16, %f16
- fxor %f2, %f18, %f18
- add %o1, 64, %o1
- fxor %f4, %f20, %f20
- fxor %f6, %f22, %f22
- add %o2, 64, %o2
- fxor %f8, %f24, %f24
- fxor %f10, %f26, %f26
- fxor %f12, %f28, %f28
- fxor %f14, %f30, %f30
- ldda [%o4] %asi, %f48
- fxor %f16, %f32, %f32
- fxor %f18, %f34, %f34
- fxor %f20, %f36, %f36
- fxor %f22, %f38, %f38
- add %o3, 64, %o3
- fxor %f24, %f40, %f40
- fxor %f26, %f42, %f42
- fxor %f28, %f44, %f44
- fxor %f30, %f46, %f46
- ldda [%o1] %asi, %f0
- fxor %f32, %f48, %f48
- fxor %f34, %f50, %f50
- fxor %f36, %f52, %f52
- add %o4, 64, %o4
- fxor %f38, %f54, %f54
- fxor %f40, %f56, %f56
- fxor %f42, %f58, %f58
- subcc %o0, 64, %o0
- fxor %f44, %f60, %f60
- fxor %f46, %f62, %f62
- stda %f48, [%o1 - 64] %asi
- bne,pt %xcc, 4b
- ldda [%o2] %asi, %f16
-
- ldda [%o3] %asi, %f32
- fxor %f0, %f16, %f16
- fxor %f2, %f18, %f18
- fxor %f4, %f20, %f20
- fxor %f6, %f22, %f22
- fxor %f8, %f24, %f24
- fxor %f10, %f26, %f26
- fxor %f12, %f28, %f28
- fxor %f14, %f30, %f30
- ldda [%o4] %asi, %f48
- fxor %f16, %f32, %f32
- fxor %f18, %f34, %f34
- fxor %f20, %f36, %f36
- fxor %f22, %f38, %f38
- fxor %f24, %f40, %f40
- fxor %f26, %f42, %f42
- fxor %f28, %f44, %f44
- fxor %f30, %f46, %f46
- membar #Sync
- fxor %f32, %f48, %f48
- fxor %f34, %f50, %f50
- fxor %f36, %f52, %f52
- fxor %f38, %f54, %f54
- fxor %f40, %f56, %f56
- fxor %f42, %f58, %f58
- fxor %f44, %f60, %f60
- fxor %f46, %f62, %f62
- stda %f48, [%o1] %asi
- membar #Sync|#StoreStore|#StoreLoad
- wr %g1, %g0, %asi
- retl
- wr %g0, 0, %fprs
- .size xor_vis_4, .-xor_vis_4
-
-
- .globl xor_vis_5
- .type xor_vis_5,@function
-xor_vis_5:
- mov %o5, %g5
- rd %fprs, %o5
- andcc %o5, FPRS_FEF|FPRS_DU, %g0
- be,pt %icc, 0f
- sethi %hi(VISenter), %g1
- jmpl %g1 + %lo(VISenter), %g7
- add %g7, 8, %g7
-0: wr %g0, FPRS_FEF, %fprs
- mov %g5, %o5
- rd %asi, %g1
- wr %g0, ASI_BLK_P, %asi
- membar #LoadStore|#StoreLoad|#StoreStore
- sub %o0, 64, %o0
- ldda [%o1] %asi, %f0
- ldda [%o2] %asi, %f16
-
-5: ldda [%o3] %asi, %f32
- fxor %f0, %f16, %f48
- fxor %f2, %f18, %f50
- add %o1, 64, %o1
- fxor %f4, %f20, %f52
- fxor %f6, %f22, %f54
- add %o2, 64, %o2
- fxor %f8, %f24, %f56
- fxor %f10, %f26, %f58
- fxor %f12, %f28, %f60
- fxor %f14, %f30, %f62
- ldda [%o4] %asi, %f16
- fxor %f48, %f32, %f48
- fxor %f50, %f34, %f50
- fxor %f52, %f36, %f52
- fxor %f54, %f38, %f54
- add %o3, 64, %o3
- fxor %f56, %f40, %f56
- fxor %f58, %f42, %f58
- fxor %f60, %f44, %f60
- fxor %f62, %f46, %f62
- ldda [%o5] %asi, %f32
- fxor %f48, %f16, %f48
- fxor %f50, %f18, %f50
- add %o4, 64, %o4
- fxor %f52, %f20, %f52
- fxor %f54, %f22, %f54
- add %o5, 64, %o5
- fxor %f56, %f24, %f56
- fxor %f58, %f26, %f58
- fxor %f60, %f28, %f60
- fxor %f62, %f30, %f62
- ldda [%o1] %asi, %f0
- fxor %f48, %f32, %f48
- fxor %f50, %f34, %f50
- fxor %f52, %f36, %f52
- fxor %f54, %f38, %f54
- fxor %f56, %f40, %f56
- fxor %f58, %f42, %f58
- subcc %o0, 64, %o0
- fxor %f60, %f44, %f60
- fxor %f62, %f46, %f62
- stda %f48, [%o1 - 64] %asi
- bne,pt %xcc, 5b
- ldda [%o2] %asi, %f16
-
- ldda [%o3] %asi, %f32
- fxor %f0, %f16, %f48
- fxor %f2, %f18, %f50
- fxor %f4, %f20, %f52
- fxor %f6, %f22, %f54
- fxor %f8, %f24, %f56
- fxor %f10, %f26, %f58
- fxor %f12, %f28, %f60
- fxor %f14, %f30, %f62
- ldda [%o4] %asi, %f16
- fxor %f48, %f32, %f48
- fxor %f50, %f34, %f50
- fxor %f52, %f36, %f52
- fxor %f54, %f38, %f54
- fxor %f56, %f40, %f56
- fxor %f58, %f42, %f58
- fxor %f60, %f44, %f60
- fxor %f62, %f46, %f62
- ldda [%o5] %asi, %f32
- fxor %f48, %f16, %f48
- fxor %f50, %f18, %f50
- fxor %f52, %f20, %f52
- fxor %f54, %f22, %f54
- fxor %f56, %f24, %f56
- fxor %f58, %f26, %f58
- fxor %f60, %f28, %f60
- fxor %f62, %f30, %f62
- membar #Sync
- fxor %f48, %f32, %f48
- fxor %f50, %f34, %f50
- fxor %f52, %f36, %f52
- fxor %f54, %f38, %f54
- fxor %f56, %f40, %f56
- fxor %f58, %f42, %f58
- fxor %f60, %f44, %f60
- fxor %f62, %f46, %f62
- stda %f48, [%o1] %asi
- membar #Sync|#StoreStore|#StoreLoad
- wr %g1, %g0, %asi
- retl
- wr %g0, 0, %fprs
- .size xor_vis_5, .-xor_vis_5
+__asm__ ("\n\
+ .text\n\
+ .globl xor_vis_2\n\
+ .type xor_vis_2,@function\n\
+xor_vis_2:\n\
+ rd %fprs, %o5\n\
+ andcc %o5, FPRS_FEF|FPRS_DU, %g0\n\
+ be,pt %icc, 0f\n\
+ sethi %hi(VISenter), %g1\n\
+ jmpl %g1 + %lo(VISenter), %g7\n\
+ add %g7, 8, %g7\n\
+0: wr %g0, FPRS_FEF, %fprs\n\
+ rd %asi, %g1\n\
+ wr %g0, ASI_BLK_P, %asi\n\
+ membar #LoadStore|#StoreLoad|#StoreStore\n\
+ sub %o0, 128, %o0\n\
+ ldda [%o1] %asi, %f0\n\
+ ldda [%o2] %asi, %f16\n\
+\n\
+2: ldda [%o1 + 64] %asi, %f32\n\
+ fxor %f0, %f16, %f16\n\
+ fxor %f2, %f18, %f18\n\
+ fxor %f4, %f20, %f20\n\
+ fxor %f6, %f22, %f22\n\
+ fxor %f8, %f24, %f24\n\
+ fxor %f10, %f26, %f26\n\
+ fxor %f12, %f28, %f28\n\
+ fxor %f14, %f30, %f30\n\
+ stda %f16, [%o1] %asi\n\
+ ldda [%o2 + 64] %asi, %f48\n\
+ ldda [%o1 + 128] %asi, %f0\n\
+ fxor %f32, %f48, %f48\n\
+ fxor %f34, %f50, %f50\n\
+ add %o1, 128, %o1\n\
+ fxor %f36, %f52, %f52\n\
+ add %o2, 128, %o2\n\
+ fxor %f38, %f54, %f54\n\
+ subcc %o0, 128, %o0\n\
+ fxor %f40, %f56, %f56\n\
+ fxor %f42, %f58, %f58\n\
+ fxor %f44, %f60, %f60\n\
+ fxor %f46, %f62, %f62\n\
+ stda %f48, [%o1 - 64] %asi\n\
+ bne,pt %xcc, 2b\n\
+ ldda [%o2] %asi, %f16\n\
+\n\
+ ldda [%o1 + 64] %asi, %f32\n\
+ fxor %f0, %f16, %f16\n\
+ fxor %f2, %f18, %f18\n\
+ fxor %f4, %f20, %f20\n\
+ fxor %f6, %f22, %f22\n\
+ fxor %f8, %f24, %f24\n\
+ fxor %f10, %f26, %f26\n\
+ fxor %f12, %f28, %f28\n\
+ fxor %f14, %f30, %f30\n\
+ stda %f16, [%o1] %asi\n\
+ ldda [%o2 + 64] %asi, %f48\n\
+ membar #Sync\n\
+ fxor %f32, %f48, %f48\n\
+ fxor %f34, %f50, %f50\n\
+ fxor %f36, %f52, %f52\n\
+ fxor %f38, %f54, %f54\n\
+ fxor %f40, %f56, %f56\n\
+ fxor %f42, %f58, %f58\n\
+ fxor %f44, %f60, %f60\n\
+ fxor %f46, %f62, %f62\n\
+ stda %f48, [%o1 + 64] %asi\n\
+ membar #Sync|#StoreStore|#StoreLoad\n\
+ wr %g1, %g0, %asi\n\
+ retl\n\
+ wr %g0, 0, %fprs\n\
+ .size xor_vis_2, .-xor_vis_2\n\
+\n\
+\n\
+ .globl xor_vis_3\n\
+ .type xor_vis_3,@function\n\
+xor_vis_3:\n\
+ rd %fprs, %o5\n\
+ andcc %o5, FPRS_FEF|FPRS_DU, %g0\n\
+ be,pt %icc, 0f\n\
+ sethi %hi(VISenter), %g1\n\
+ jmpl %g1 + %lo(VISenter), %g7\n\
+ add %g7, 8, %g7\n\
+0: wr %g0, FPRS_FEF, %fprs\n\
+ rd %asi, %g1\n\
+ wr %g0, ASI_BLK_P, %asi\n\
+ membar #LoadStore|#StoreLoad|#StoreStore\n\
+ sub %o0, 64, %o0\n\
+ ldda [%o1] %asi, %f0\n\
+ ldda [%o2] %asi, %f16\n\
+\n\
+3: ldda [%o3] %asi, %f32\n\
+ fxor %f0, %f16, %f48\n\
+ fxor %f2, %f18, %f50\n\
+ add %o1, 64, %o1\n\
+ fxor %f4, %f20, %f52\n\
+ fxor %f6, %f22, %f54\n\
+ add %o2, 64, %o2\n\
+ fxor %f8, %f24, %f56\n\
+ fxor %f10, %f26, %f58\n\
+ fxor %f12, %f28, %f60\n\
+ fxor %f14, %f30, %f62\n\
+ ldda [%o1] %asi, %f0\n\
+ fxor %f48, %f32, %f48\n\
+ fxor %f50, %f34, %f50\n\
+ fxor %f52, %f36, %f52\n\
+ fxor %f54, %f38, %f54\n\
+ add %o3, 64, %o3\n\
+ fxor %f56, %f40, %f56\n\
+ fxor %f58, %f42, %f58\n\
+ subcc %o0, 64, %o0\n\
+ fxor %f60, %f44, %f60\n\
+ fxor %f62, %f46, %f62\n\
+ stda %f48, [%o1 - 64] %asi\n\
+ bne,pt %xcc, 3b\n\
+ ldda [%o2] %asi, %f16\n\
+\n\
+ ldda [%o3] %asi, %f32\n\
+ fxor %f0, %f16, %f48\n\
+ fxor %f2, %f18, %f50\n\
+ fxor %f4, %f20, %f52\n\
+ fxor %f6, %f22, %f54\n\
+ fxor %f8, %f24, %f56\n\
+ fxor %f10, %f26, %f58\n\
+ fxor %f12, %f28, %f60\n\
+ fxor %f14, %f30, %f62\n\
+ membar #Sync\n\
+ fxor %f48, %f32, %f48\n\
+ fxor %f50, %f34, %f50\n\
+ fxor %f52, %f36, %f52\n\
+ fxor %f54, %f38, %f54\n\
+ fxor %f56, %f40, %f56\n\
+ fxor %f58, %f42, %f58\n\
+ fxor %f60, %f44, %f60\n\
+ fxor %f62, %f46, %f62\n\
+ stda %f48, [%o1] %asi\n\
+ membar #Sync|#StoreStore|#StoreLoad\n\
+ wr %g1, %g0, %asi\n\
+ retl\n\
+ wr %g0, 0, %fprs\n\
+ .size xor_vis_3, .-xor_vis_3\n\
+\n\
+\n\
+ .globl xor_vis_4\n\
+ .type xor_vis_4,@function\n\
+xor_vis_4:\n\
+ rd %fprs, %o5\n\
+ andcc %o5, FPRS_FEF|FPRS_DU, %g0\n\
+ be,pt %icc, 0f\n\
+ sethi %hi(VISenter), %g1\n\
+ jmpl %g1 + %lo(VISenter), %g7\n\
+ add %g7, 8, %g7\n\
+0: wr %g0, FPRS_FEF, %fprs\n\
+ rd %asi, %g1\n\
+ wr %g0, ASI_BLK_P, %asi\n\
+ membar #LoadStore|#StoreLoad|#StoreStore\n\
+ sub %o0, 64, %o0\n\
+ ldda [%o1] %asi, %f0\n\
+ ldda [%o2] %asi, %f16\n\
+\n\
+4: ldda [%o3] %asi, %f32\n\
+ fxor %f0, %f16, %f16\n\
+ fxor %f2, %f18, %f18\n\
+ add %o1, 64, %o1\n\
+ fxor %f4, %f20, %f20\n\
+ fxor %f6, %f22, %f22\n\
+ add %o2, 64, %o2\n\
+ fxor %f8, %f24, %f24\n\
+ fxor %f10, %f26, %f26\n\
+ fxor %f12, %f28, %f28\n\
+ fxor %f14, %f30, %f30\n\
+ ldda [%o4] %asi, %f48\n\
+ fxor %f16, %f32, %f32\n\
+ fxor %f18, %f34, %f34\n\
+ fxor %f20, %f36, %f36\n\
+ fxor %f22, %f38, %f38\n\
+ add %o3, 64, %o3\n\
+ fxor %f24, %f40, %f40\n\
+ fxor %f26, %f42, %f42\n\
+ fxor %f28, %f44, %f44\n\
+ fxor %f30, %f46, %f46\n\
+ ldda [%o1] %asi, %f0\n\
+ fxor %f32, %f48, %f48\n\
+ fxor %f34, %f50, %f50\n\
+ fxor %f36, %f52, %f52\n\
+ add %o4, 64, %o4\n\
+ fxor %f38, %f54, %f54\n\
+ fxor %f40, %f56, %f56\n\
+ fxor %f42, %f58, %f58\n\
+ subcc %o0, 64, %o0\n\
+ fxor %f44, %f60, %f60\n\
+ fxor %f46, %f62, %f62\n\
+ stda %f48, [%o1 - 64] %asi\n\
+ bne,pt %xcc, 4b\n\
+ ldda [%o2] %asi, %f16\n\
+\n\
+ ldda [%o3] %asi, %f32\n\
+ fxor %f0, %f16, %f16\n\
+ fxor %f2, %f18, %f18\n\
+ fxor %f4, %f20, %f20\n\
+ fxor %f6, %f22, %f22\n\
+ fxor %f8, %f24, %f24\n\
+ fxor %f10, %f26, %f26\n\
+ fxor %f12, %f28, %f28\n\
+ fxor %f14, %f30, %f30\n\
+ ldda [%o4] %asi, %f48\n\
+ fxor %f16, %f32, %f32\n\
+ fxor %f18, %f34, %f34\n\
+ fxor %f20, %f36, %f36\n\
+ fxor %f22, %f38, %f38\n\
+ fxor %f24, %f40, %f40\n\
+ fxor %f26, %f42, %f42\n\
+ fxor %f28, %f44, %f44\n\
+ fxor %f30, %f46, %f46\n\
+ membar #Sync\n\
+ fxor %f32, %f48, %f48\n\
+ fxor %f34, %f50, %f50\n\
+ fxor %f36, %f52, %f52\n\
+ fxor %f38, %f54, %f54\n\
+ fxor %f40, %f56, %f56\n\
+ fxor %f42, %f58, %f58\n\
+ fxor %f44, %f60, %f60\n\
+ fxor %f46, %f62, %f62\n\
+ stda %f48, [%o1] %asi\n\
+ membar #Sync|#StoreStore|#StoreLoad\n\
+ wr %g1, %g0, %asi\n\
+ retl\n\
+ wr %g0, 0, %fprs\n\
+ .size xor_vis_4, .-xor_vis_4\n\
+\n\
+\n\
+ .globl xor_vis_5\n\
+ .type xor_vis_5,@function\n\
+xor_vis_5:\n\
+ mov %o5, %g5\n\
+ rd %fprs, %o5\n\
+ andcc %o5, FPRS_FEF|FPRS_DU, %g0\n\
+ be,pt %icc, 0f\n\
+ sethi %hi(VISenter), %g1\n\
+ jmpl %g1 + %lo(VISenter), %g7\n\
+ add %g7, 8, %g7\n\
+0: wr %g0, FPRS_FEF, %fprs\n\
+ mov %g5, %o5\n\
+ rd %asi, %g1\n\
+ wr %g0, ASI_BLK_P, %asi\n\
+ membar #LoadStore|#StoreLoad|#StoreStore\n\
+ sub %o0, 64, %o0\n\
+ ldda [%o1] %asi, %f0\n\
+ ldda [%o2] %asi, %f16\n\
+\n\
+5: ldda [%o3] %asi, %f32\n\
+ fxor %f0, %f16, %f48\n\
+ fxor %f2, %f18, %f50\n\
+ add %o1, 64, %o1\n\
+ fxor %f4, %f20, %f52\n\
+ fxor %f6, %f22, %f54\n\
+ add %o2, 64, %o2\n\
+ fxor %f8, %f24, %f56\n\
+ fxor %f10, %f26, %f58\n\
+ fxor %f12, %f28, %f60\n\
+ fxor %f14, %f30, %f62\n\
+ ldda [%o4] %asi, %f16\n\
+ fxor %f48, %f32, %f48\n\
+ fxor %f50, %f34, %f50\n\
+ fxor %f52, %f36, %f52\n\
+ fxor %f54, %f38, %f54\n\
+ add %o3, 64, %o3\n\
+ fxor %f56, %f40, %f56\n\
+ fxor %f58, %f42, %f58\n\
+ fxor %f60, %f44, %f60\n\
+ fxor %f62, %f46, %f62\n\
+ ldda [%o5] %asi, %f32\n\
+ fxor %f48, %f16, %f48\n\
+ fxor %f50, %f18, %f50\n\
+ add %o4, 64, %o4\n\
+ fxor %f52, %f20, %f52\n\
+ fxor %f54, %f22, %f54\n\
+ add %o5, 64, %o5\n\
+ fxor %f56, %f24, %f56\n\
+ fxor %f58, %f26, %f58\n\
+ fxor %f60, %f28, %f60\n\
+ fxor %f62, %f30, %f62\n\
+ ldda [%o1] %asi, %f0\n\
+ fxor %f48, %f32, %f48\n\
+ fxor %f50, %f34, %f50\n\
+ fxor %f52, %f36, %f52\n\
+ fxor %f54, %f38, %f54\n\
+ fxor %f56, %f40, %f56\n\
+ fxor %f58, %f42, %f58\n\
+ subcc %o0, 64, %o0\n\
+ fxor %f60, %f44, %f60\n\
+ fxor %f62, %f46, %f62\n\
+ stda %f48, [%o1 - 64] %asi\n\
+ bne,pt %xcc, 5b\n\
+ ldda [%o2] %asi, %f16\n\
+\n\
+ ldda [%o3] %asi, %f32\n\
+ fxor %f0, %f16, %f48\n\
+ fxor %f2, %f18, %f50\n\
+ fxor %f4, %f20, %f52\n\
+ fxor %f6, %f22, %f54\n\
+ fxor %f8, %f24, %f56\n\
+ fxor %f10, %f26, %f58\n\
+ fxor %f12, %f28, %f60\n\
+ fxor %f14, %f30, %f62\n\
+ ldda [%o4] %asi, %f16\n\
+ fxor %f48, %f32, %f48\n\
+ fxor %f50, %f34, %f50\n\
+ fxor %f52, %f36, %f52\n\
+ fxor %f54, %f38, %f54\n\
+ fxor %f56, %f40, %f56\n\
+ fxor %f58, %f42, %f58\n\
+ fxor %f60, %f44, %f60\n\
+ fxor %f62, %f46, %f62\n\
+ ldda [%o5] %asi, %f32\n\
+ fxor %f48, %f16, %f48\n\
+ fxor %f50, %f18, %f50\n\
+ fxor %f52, %f20, %f52\n\
+ fxor %f54, %f22, %f54\n\
+ fxor %f56, %f24, %f56\n\
+ fxor %f58, %f26, %f58\n\
+ fxor %f60, %f28, %f60\n\
+ fxor %f62, %f30, %f62\n\
+ membar #Sync\n\
+ fxor %f48, %f32, %f48\n\
+ fxor %f50, %f34, %f50\n\
+ fxor %f52, %f36, %f52\n\
+ fxor %f54, %f38, %f54\n\
+ fxor %f56, %f40, %f56\n\
+ fxor %f58, %f42, %f58\n\
+ fxor %f60, %f44, %f60\n\
+ fxor %f62, %f46, %f62\n\
+ stda %f48, [%o1] %asi\n\
+ membar #Sync|#StoreStore|#StoreLoad\n\
+ wr %g1, %g0, %asi\n\
+ retl\n\
+ wr %g0, 0, %fprs\n\
+ .size xor_vis_5, .-xor_vis_5\n\
");
static struct xor_block_template xor_block_VIS = {
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)