@@ -32,12 +32,12 @@ set(SRCS_GENERIC
32
32
arithmetic/vec_znx_big.c
33
33
arithmetic/znx_small.c
34
34
arithmetic/module_api.c
35
+ reim/reim_execute.c
36
+ cplx/cplx_execute.c
37
+ reim4/reim4_execute.c
35
38
)
36
39
# C or assembly source files compiled only on x86 targets
37
40
set (SRCS_X86
38
- cplx/spqlios_fft_execute.s
39
- reim/reim_execute.s
40
- reim4/reim4_execute.s
41
41
)
42
42
# C or assembly source files compiled only on aarch64 targets
43
43
set (SRCS_AARCH64
@@ -48,31 +48,40 @@ set(SRCS_AARCH64
48
48
)
49
49
50
50
# C or assembly source files compiled only on x86: avx, avx2, fma targets
51
- set (SRCS_FMA
51
+ set (SRCS_FMA_C
52
52
arithmetic/vector_matrix_product_avx.c
53
53
cplx/cplx_conversions_avx2_fma.c
54
- cplx/cplx_fft16_avx_fma.s
55
54
cplx/cplx_fft_avx2_fma.c
56
55
cplx/cplx_fft_sse.c
57
56
cplx/cplx_fftvec_avx2_fma.c
58
- cplx/cplx_ifft16_avx_fma.s
59
57
cplx/cplx_ifft_avx2_fma.c
60
58
reim4/reim4_arithmetic_avx2.c
61
- reim4/reim4_fftvec_addmul_fma.s
62
- reim4/reim4_fftvec_conv_fma.s
59
+ reim4/reim4_fftvec_conv_fma.c
60
+ reim4/reim4_fftvec_addmul_fma.c
63
61
reim/reim_conversions_avx.c
64
- reim/reim_fft16_avx_fma.s
65
- reim/reim_fft4_avx_fma.s
66
- reim/reim_fft8_avx_fma.s
62
+ reim/reim_fft4_avx_fma.c
63
+ reim/reim_fft8_avx_fma.c
64
+ reim/reim_ifft4_avx_fma.c
65
+ reim/reim_ifft8_avx_fma.c
67
66
reim/reim_fft_avx2.c
68
- reim/reim_fftvec_addmul_fma.s
69
- reim/reim_ifft16_avx_fma.s
70
- reim/reim_ifft4_avx_fma.s
71
- reim/reim_ifft8_avx_fma.s
72
67
reim/reim_ifft_avx2.c
73
68
reim/reim_to_tnx_avx.c
74
- )
75
- set_source_files_properties (${SRCS_FMA} PROPERTIES COMPILE_OPTIONS "-mfma;-mavx;-mavx2" )
69
+ reim/reim_fftvec_addmul_fma.c
70
+ )
71
+ set (SRCS_FMA_ASM
72
+ cplx/cplx_fft16_avx_fma.s
73
+ cplx/cplx_ifft16_avx_fma.s
74
+ reim/reim_fft16_avx_fma.s
75
+ reim/reim_ifft16_avx_fma.s
76
+ )
77
+ set (SRCS_FMA_WIN32_ASM
78
+ cplx/cplx_fft16_avx_fma_win32.s
79
+ cplx/cplx_ifft16_avx_fma_win32.s
80
+ reim/reim_fft16_avx_fma_win32.s
81
+ reim/reim_ifft16_avx_fma_win32.s
82
+ )
83
+ set_source_files_properties (${SRCS_FMA_C} PROPERTIES COMPILE_OPTIONS "-mfma;-mavx;-mavx2" )
84
+ set_source_files_properties (${SRCS_FMA_ASM} PROPERTIES COMPILE_OPTIONS "-mfma;-mavx;-mavx2" )
76
85
77
86
# C or assembly source files compiled only on x86: avx512f/vl/dq + fma targets
78
87
set (SRCS_AVX512
@@ -132,12 +141,20 @@ set(SPQLIOSSOURCES
132
141
if (${X86} )
133
142
set (SPQLIOSSOURCES ${SPQLIOSSOURCES}
134
143
${SRCS_X86}
135
- ${SRCS_FMA}
144
+ ${SRCS_FMA_C}
145
+ ${SRCS_FMA_ASM}
136
146
${SRCS_AVX2}
137
147
${SRCS_AVX512}
138
148
)
139
- endif ()
140
- if (${AARCH64} )
149
+ elseif (${X86_WIN32} )
150
+ set (SPQLIOSSOURCES ${SPQLIOSSOURCES}
151
+ #${SRCS_X86}
152
+ ${SRCS_FMA_C}
153
+ ${SRCS_FMA_WIN32_ASM}
154
+ ${SRCS_AVX2}
155
+ ${SRCS_AVX512}
156
+ )
157
+ elseif (${AARCH64} )
141
158
set (SPQLIOSSOURCES ${SPQLIOSSOURCES}
142
159
${SRCS_AARCH64}
143
160
)
0 commit comments