]> git.proxmox.com Git - ceph.git/blame - ceph/src/isa-l/erasure_code/Makefile.am
import quincy beta 17.1.0
[ceph.git] / ceph / src / isa-l / erasure_code / Makefile.am
CommitLineData
7c673cae 1########################################################################
f91f0fd5 2# Copyright(c) 2011-2019 Intel Corporation All rights reserved.
7c673cae
FG
3#
4# Redistribution and use in source and binary forms, with or without
f91f0fd5 5# modification, are permitted provided that the following conditions
7c673cae
FG
6# are met:
7# * Redistributions of source code must retain the above copyright
8# notice, this list of conditions and the following disclaimer.
9# * Redistributions in binary form must reproduce the above copyright
10# notice, this list of conditions and the following disclaimer in
11# the documentation and/or other materials provided with the
12# distribution.
13# * Neither the name of Intel Corporation nor the names of its
14# contributors may be used to endorse or promote products derived
15# from this software without specific prior written permission.
16#
17# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
20# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
21# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
22# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28########################################################################
29
f91f0fd5
TL
30include erasure_code/aarch64/Makefile.am
31
32include erasure_code/ppc64le/Makefile.am
33
224ce89b
WB
34lsrc += erasure_code/ec_base.c
35
36lsrc_base_aliases += erasure_code/ec_base_aliases.c
224ce89b
WB
37lsrc_x86_64 += \
38 erasure_code/ec_highlevel_func.c \
7c673cae
FG
39 erasure_code/gf_vect_mul_sse.asm \
40 erasure_code/gf_vect_mul_avx.asm \
41 erasure_code/gf_vect_dot_prod_sse.asm \
42 erasure_code/gf_vect_dot_prod_avx.asm \
43 erasure_code/gf_vect_dot_prod_avx2.asm \
44 erasure_code/gf_2vect_dot_prod_sse.asm \
45 erasure_code/gf_3vect_dot_prod_sse.asm \
46 erasure_code/gf_4vect_dot_prod_sse.asm \
47 erasure_code/gf_5vect_dot_prod_sse.asm \
48 erasure_code/gf_6vect_dot_prod_sse.asm \
49 erasure_code/gf_2vect_dot_prod_avx.asm \
50 erasure_code/gf_3vect_dot_prod_avx.asm \
51 erasure_code/gf_4vect_dot_prod_avx.asm \
52 erasure_code/gf_5vect_dot_prod_avx.asm \
53 erasure_code/gf_6vect_dot_prod_avx.asm \
54 erasure_code/gf_2vect_dot_prod_avx2.asm \
55 erasure_code/gf_3vect_dot_prod_avx2.asm \
56 erasure_code/gf_4vect_dot_prod_avx2.asm \
57 erasure_code/gf_5vect_dot_prod_avx2.asm \
58 erasure_code/gf_6vect_dot_prod_avx2.asm \
59 erasure_code/gf_vect_mad_sse.asm \
60 erasure_code/gf_2vect_mad_sse.asm \
61 erasure_code/gf_3vect_mad_sse.asm \
62 erasure_code/gf_4vect_mad_sse.asm \
63 erasure_code/gf_5vect_mad_sse.asm \
64 erasure_code/gf_6vect_mad_sse.asm \
65 erasure_code/gf_vect_mad_avx.asm \
66 erasure_code/gf_2vect_mad_avx.asm \
67 erasure_code/gf_3vect_mad_avx.asm \
68 erasure_code/gf_4vect_mad_avx.asm \
69 erasure_code/gf_5vect_mad_avx.asm \
70 erasure_code/gf_6vect_mad_avx.asm \
71 erasure_code/gf_vect_mad_avx2.asm \
72 erasure_code/gf_2vect_mad_avx2.asm \
73 erasure_code/gf_3vect_mad_avx2.asm \
74 erasure_code/gf_4vect_mad_avx2.asm \
75 erasure_code/gf_5vect_mad_avx2.asm \
76 erasure_code/gf_6vect_mad_avx2.asm \
77 erasure_code/ec_multibinary.asm
78
79#if HAVE_AVX512
224ce89b
WB
80lsrc_x86_64 += \
81 erasure_code/gf_vect_dot_prod_avx512.asm \
7c673cae
FG
82 erasure_code/gf_2vect_dot_prod_avx512.asm \
83 erasure_code/gf_3vect_dot_prod_avx512.asm \
84 erasure_code/gf_4vect_dot_prod_avx512.asm \
f91f0fd5
TL
85 erasure_code/gf_5vect_dot_prod_avx512.asm \
86 erasure_code/gf_6vect_dot_prod_avx512.asm \
7c673cae
FG
87 erasure_code/gf_vect_mad_avx512.asm \
88 erasure_code/gf_2vect_mad_avx512.asm \
89 erasure_code/gf_3vect_mad_avx512.asm \
f91f0fd5
TL
90 erasure_code/gf_4vect_mad_avx512.asm \
91 erasure_code/gf_5vect_mad_avx512.asm \
92 erasure_code/gf_6vect_mad_avx512.asm
7c673cae 93
224ce89b
WB
94lsrc_x86_32 += \
95 erasure_code/ec_highlevel_func.c \
7c673cae 96 erasure_code/ec_multibinary.asm \
7c673cae
FG
97 erasure_code/gf_vect_dot_prod_avx.asm \
98 erasure_code/gf_2vect_dot_prod_avx.asm \
99 erasure_code/gf_3vect_dot_prod_avx.asm \
100 erasure_code/gf_4vect_dot_prod_avx.asm \
101 erasure_code/gf_vect_dot_prod_sse.asm \
102 erasure_code/gf_2vect_dot_prod_sse.asm \
103 erasure_code/gf_3vect_dot_prod_sse.asm \
104 erasure_code/gf_4vect_dot_prod_sse.asm \
105 erasure_code/gf_vect_dot_prod_avx2.asm \
106 erasure_code/gf_2vect_dot_prod_avx2.asm \
107 erasure_code/gf_3vect_dot_prod_avx2.asm \
108 erasure_code/gf_4vect_dot_prod_avx2.asm
109
110unit_tests32 += erasure_code/erasure_code_base_test \
111 erasure_code/erasure_code_test \
7c673cae
FG
112 erasure_code/gf_vect_mul_test \
113 erasure_code/gf_vect_mul_base_test \
114 erasure_code/gf_vect_dot_prod_base_test \
f91f0fd5 115 erasure_code/gf_vect_dot_prod_test
7c673cae
FG
116
117perf_tests32 += erasure_code/gf_vect_mul_perf \
118 erasure_code/gf_vect_dot_prod_perf \
119 erasure_code/erasure_code_perf \
120 erasure_code/erasure_code_base_perf \
f91f0fd5 121 erasure_code/gf_vect_dot_prod_1tbl
7c673cae 122
224ce89b 123src_include += -I $(srcdir)/erasure_code
7c673cae
FG
124extern_hdrs += include/erasure_code.h \
125 include/gf_vect_mul.h
126
127other_src += erasure_code/ec_base.h \
128 include/multibinary.asm \
129 include/reg_sizes.asm
130
131check_tests += erasure_code/gf_vect_mul_test \
132 erasure_code/erasure_code_test \
133 erasure_code/gf_inverse_test \
134 erasure_code/erasure_code_update_test
135
f91f0fd5 136unit_tests += \
7c673cae 137 erasure_code/gf_vect_mul_base_test \
7c673cae
FG
138 erasure_code/gf_vect_dot_prod_base_test \
139 erasure_code/gf_vect_dot_prod_test \
140 erasure_code/gf_vect_mad_test \
f91f0fd5 141 erasure_code/erasure_code_base_test
7c673cae
FG
142
143perf_tests += erasure_code/gf_vect_mul_perf \
7c673cae
FG
144 erasure_code/gf_vect_dot_prod_perf \
145 erasure_code/gf_vect_dot_prod_1tbl \
7c673cae
FG
146 erasure_code/erasure_code_perf \
147 erasure_code/erasure_code_base_perf \
7c673cae
FG
148 erasure_code/erasure_code_update_perf
149
f91f0fd5
TL
150other_tests += erasure_code/gen_rs_matrix_limits
151
7c673cae
FG
152other_src += include/test.h \
153 include/types.h