@@ -45,153 +45,6 @@ you should be aware that it is only intended for use in validation scenarios. It
4545performance, and its run-time characteristics may vary enormously from one compiler to another. Enabling it in
4646performance-conscious production code is therefore strongly discouraged.
4747
48- x86 architecture
49- ----------------
50-
51- Depending on the value of XSIMD_X86_INSTR_SET, the following wrappers are available:
52-
53- - XSIMD_X86_INSTR_SET >= XSIMD_X86_SSE2_VERSION
54-
55- +--------------------------------+-------------------------------------+
56- | batch | batch_bool |
57- +================================+=====================================+
58- | batch<int8_t, 16> | batch_bool<int8_t, 16> |
59- +--------------------------------+-------------------------------------+
60- | batch<uint8_t, 16> | batch_bool<uint8_t, 16> |
61- +--------------------------------+-------------------------------------+
62- | batch<int16_t, 9> | batch_bool<int16_t, 8> |
63- +--------------------------------+-------------------------------------+
64- | batch<uint16_t, 8> | batch_bool<uint16_t, 8> |
65- +--------------------------------+-------------------------------------+
66- | batch<int32_t, 4> | batch_bool<int32_t, 4> |
67- +--------------------------------+-------------------------------------+
68- | batch<uint32_t, 4> | batch_bool<uint32_t, 4> |
69- +--------------------------------+-------------------------------------+
70- | batch<int64_t, 2> | batch_bool<int64_t, 2> |
71- +--------------------------------+-------------------------------------+
72- | batch<uint64_t, 2> | batch_bool<uint64_t, 2> |
73- +--------------------------------+-------------------------------------+
74- | batch<float, 4> | batch_bool<float, 4> |
75- +--------------------------------+-------------------------------------+
76- | batch<double, 2> | batch_bool<double, 2> |
77- +--------------------------------+-------------------------------------+
78- | batch<std::complex<float>, 4> | batch_bool<std::complex<float>, 4> |
79- +--------------------------------+-------------------------------------+
80- | batch<std::complex<double>, 2> | batch_bool<std::complex<double>, 2> |
81- +--------------------------------+-------------------------------------+
82-
83- - XSIMD_X86_INSTR_SET >= XSIMD_X86_AVX_VERSION
84-
85- In addition to the wrappers defined above, the following wrappers are available:
86-
87- +--------------------------------+-------------------------------------+
88- | batch | batch_bool |
89- +================================+=====================================+
90- | batch<int8_t, 32> | batch_bool<int8_t, 32> |
91- +--------------------------------+-------------------------------------+
92- | batch<uint8_t, 32> | batch_bool<uint8_t, 32> |
93- +--------------------------------+-------------------------------------+
94- | batch<int16_t, 16> | batch_bool<int16_t, 16> |
95- +--------------------------------+-------------------------------------+
96- | batch<uint16_t, 16> | batch_bool<uint16_t, 16> |
97- +--------------------------------+-------------------------------------+
98- | batch<int32_t, 8> | batch_bool<int32_t, 8> |
99- +--------------------------------+-------------------------------------+
100- | batch<uint32_t, 8> | batch_bool<uint32_t, 8> |
101- +--------------------------------+-------------------------------------+
102- | batch<int64_t, 4> | batch_bool<int64_t, 4> |
103- +--------------------------------+-------------------------------------+
104- | batch<uint64_t, 4> | batch_bool<uint64_t, 4> |
105- +--------------------------------+-------------------------------------+
106- | batch<float, 8> | batch_bool<float, 8> |
107- +--------------------------------+-------------------------------------+
108- | batch<double, 4> | batch_bool<double, 4> |
109- +--------------------------------+-------------------------------------+
110- | batch<std::complex<float>, 8> | batch_bool<std::complex<float>, 8> |
111- +--------------------------------+-------------------------------------+
112- | batch<std::complex<double>, 4> | batch_bool<std::complex<double>, 4> |
113- +--------------------------------+-------------------------------------+
114-
115- - XSIMD_X86_INSTR_SET >= XSIMD_X86_AVX512_VERSION
116-
117- In addition to the wrappers defined above, the following wrappers are available:
118-
119- +--------------------------------+-------------------------------------+
120- | batch | batch_bool |
121- +================================+=====================================+
122- | batch<int8_t, 64> | batch_bool<int8_t, 64> |
123- +--------------------------------+-------------------------------------+
124- | batch<uint8_t, 64> | batch_bool<uint8_t, 64> |
125- +--------------------------------+-------------------------------------+
126- | batch<int16_t, 32> | batch_bool<int16_t, 32> |
127- +--------------------------------+-------------------------------------+
128- | batch<uint16_t, 32> | batch_bool<uint16_t, 32> |
129- +--------------------------------+-------------------------------------+
130- | batch<int32_t, 16> | batch_bool<int32_t, 16> |
131- +--------------------------------+-------------------------------------+
132- | batch<uint32_t, 16> | batch_bool<uint32_t, 16> |
133- +--------------------------------+-------------------------------------+
134- | batch<int64_t, 8> | batch_bool<int64_t, 8> |
135- +--------------------------------+-------------------------------------+
136- | batch<uint64_t, 8> | batch_bool<uint64_t, 8> |
137- +--------------------------------+-------------------------------------+
138- | batch<float, 16> | batch_bool<float, 16> |
139- +--------------------------------+-------------------------------------+
140- | batch<double, 8> | batch_bool<double, 8> |
141- +--------------------------------+-------------------------------------+
142- | batch<std::complex<float>, 16> | batch_bool<std::complex<float>, 16> |
143- +--------------------------------+-------------------------------------+
144- | batch<std::complex<double>, 8> | batch_bool<std::complex<double>, 8> |
145- +--------------------------------+-------------------------------------+
146-
147- ARM architecture
148- ----------------
149-
150- Depending on the value of XSIMD_ARM_INSTR_SET, the following wrappers are available:
151-
152- - XSIMD_ARM_INSTR_SET >= XSIMD_ARM7_NEON_VERSION
153-
154- +--------------------------------+-------------------------------------+
155- | batch | batch_bool |
156- +================================+=====================================+
157- | batch<int8_t, 16> | batch_bool<int8_t, 16> |
158- +--------------------------------+-------------------------------------+
159- | batch<uint8_t, 16> | batch_bool<uint8_t, 16> |
160- +--------------------------------+-------------------------------------+
161- | batch<int16_t, 8> | batch_bool<int16_t, 8> |
162- +--------------------------------+-------------------------------------+
163- | batch<uint16_t, 8> | batch_bool<uint16_t, 8> |
164- +--------------------------------+-------------------------------------+
165- | batch<int32_t, 4> | batch_bool<int32_t, 4> |
166- +--------------------------------+-------------------------------------+
167- | batch<uint32_t, 4> | batch_bool<uint32_t, 4> |
168- +--------------------------------+-------------------------------------+
169- | batch<int64_t, 2> | batch_bool<int64_t, 2> |
170- +--------------------------------+-------------------------------------+
171- | batch<uint64_t, 2> | batch_bool<uint64_t, 2> |
172- +--------------------------------+-------------------------------------+
173- | batch<float, 4> | batch_bool<float, 4> |
174- +--------------------------------+-------------------------------------+
175- | batch<std::complex<float>, 4> | batch_bool<std::complex<float>, 4> |
176- +--------------------------------+-------------------------------------+
177-
178- - XSIMD_ARM_INSTR_SET >= XSIMD_ARM8_64_NEON_VERSION
179-
180- In addition to the wrappers defined above, the following wrappers are available:
181-
182- +--------------------------------+-------------------------------------+
183- | batch | batch_bool |
184- +================================+=====================================+
185- | batch<double, 2> | batch_bool<double, 2> |
186- +--------------------------------+-------------------------------------+
187- | batch<std::complex<double>, 2> | batch_bool<std::complex<double>, 2> |
188- +--------------------------------+-------------------------------------+
189-
190- .. warning ::
191-
192- Support for ``std::complex `` on ARM is still experimental. You may
193- experience accuracy errors with ``std::complex<float> ``.
194-
19548XTL complex support
19649-------------------
19750
0 commit comments