Loading...
1/*
2 * Optimized RAID-5 checksumming functions for IA-64.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2, or (at your option)
7 * any later version.
8 *
9 * You should have received a copy of the GNU General Public License
10 * (for example /usr/src/linux/COPYING); if not, write to the Free
11 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
12 */
13
14
15extern void xor_ia64_2(unsigned long, unsigned long *, unsigned long *);
16extern void xor_ia64_3(unsigned long, unsigned long *, unsigned long *,
17 unsigned long *);
18extern void xor_ia64_4(unsigned long, unsigned long *, unsigned long *,
19 unsigned long *, unsigned long *);
20extern void xor_ia64_5(unsigned long, unsigned long *, unsigned long *,
21 unsigned long *, unsigned long *, unsigned long *);
22
23static struct xor_block_template xor_block_ia64 = {
24 .name = "ia64",
25 .do_2 = xor_ia64_2,
26 .do_3 = xor_ia64_3,
27 .do_4 = xor_ia64_4,
28 .do_5 = xor_ia64_5,
29};
30
31#define XOR_TRY_TEMPLATES xor_speed(&xor_block_ia64)
1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * Optimized RAID-5 checksumming functions for IA-64.
4 */
5
6
7extern void xor_ia64_2(unsigned long bytes, unsigned long * __restrict p1,
8 const unsigned long * __restrict p2);
9extern void xor_ia64_3(unsigned long bytes, unsigned long * __restrict p1,
10 const unsigned long * __restrict p2,
11 const unsigned long * __restrict p3);
12extern void xor_ia64_4(unsigned long bytes, unsigned long * __restrict p1,
13 const unsigned long * __restrict p2,
14 const unsigned long * __restrict p3,
15 const unsigned long * __restrict p4);
16extern void xor_ia64_5(unsigned long bytes, unsigned long * __restrict p1,
17 const unsigned long * __restrict p2,
18 const unsigned long * __restrict p3,
19 const unsigned long * __restrict p4,
20 const unsigned long * __restrict p5);
21
22static struct xor_block_template xor_block_ia64 = {
23 .name = "ia64",
24 .do_2 = xor_ia64_2,
25 .do_3 = xor_ia64_3,
26 .do_4 = xor_ia64_4,
27 .do_5 = xor_ia64_5,
28};
29
30#define XOR_TRY_TEMPLATES xor_speed(&xor_block_ia64)