1 /* 2 * include/asm-ia64/xor.h 3 * 4 * Optimized RAID-5 checksumming functions for IA-64. 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation; either version 2, or (at your option) 9 * any later version. 10 * 11 * You should have received a copy of the GNU General Public License 12 * (for example /usr/src/linux/COPYING); if not, write to the Free 13 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 14 */ 15 16 #include <asm-generic/xor.h> 17 18 extern void xor_ia64_2(unsigned long, unsigned long *, unsigned long *); 19 extern void xor_ia64_3(unsigned long, unsigned long *, unsigned long *, 20 unsigned long *); 21 extern void xor_ia64_4(unsigned long, unsigned long *, unsigned long *, 22 unsigned long *, unsigned long *); 23 extern void xor_ia64_5(unsigned long, unsigned long *, unsigned long *, 24 unsigned long *, unsigned long *, unsigned long *); 25 26 static struct xor_block_template xor_block_ia64 = { 27 name: "ia64", 28 do_2: xor_ia64_2, 29 do_3: xor_ia64_3, 30 do_4: xor_ia64_4, 31 do_5: xor_ia64_5, 32 }; 33 34 #define XOR_TRY_TEMPLATES do { \ 35 xor_speed(&xor_block_8regs); \ 36 xor_speed(&xor_block_8regs_p); \ 37 xor_speed(&xor_block_32regs); \ 38 xor_speed(&xor_block_32regs_p); \ 39 xor_speed(&xor_block_ia64); \ 40 } while(0) 41 42