22 # define V_ALIGN(n) __attribute__((aligned(n)))
24 # define V_ALIGN(n) __declspec(align(n))
44 V_ALIGN(64)
extern const unsigned int _IndexesFromZero32[8] = { 0, 1, 2, 3, 4, 5, 6, 7 };
45 V_ALIGN(16)
extern const unsigned short _IndexesFromZero16[8] = { 0, 1, 2, 3, 4, 5, 6, 7 };
46 V_ALIGN(16)
extern const unsigned char _IndexesFromZero8 [16]= { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 };
129 _4(4.166664568298827e-2
f),
130 _4(-1.388731625493765e-3
f),
131 _4(2.443315711809948e-5
f),
135 _4(-1.6666654611e-1
f),
136 _4(8.3321608736e-3
f),
138 _4(-1.9515295891e-4
f),
146 _4(8.05374449538e-2
f),
147 _4(1.38776856032e-1
f),
148 _4(1.99777106478e-1
f),
149 _4(3.33329491539e-1
f),
157 _4(2.414213562373095
f),
158 _4(0.414213562373095
f),
163 _4(4.2163199048e-2
f),
164 _4(2.4181311049e-2
f),
165 _4(4.5470025998e-2
f),
166 _4(7.4953002686e-2
f),
167 _4(1.6666752422e-1
f),
187 const unsigned int c_general::absMaskFloat[2] = { 0xffffffffu, 0x7fffffffu };
188 const unsigned int c_general::signMaskFloat[2] = { 0x0u, 0x80000000u };
189 const unsigned int c_general::highMaskFloat = 0xfffff000u;
190 const float c_general::oneFloat = 1.f;
191 const unsigned short c_general::minShort[2] = { 0x8000u, 0x8000u };
192 const unsigned short c_general::one16[2] = { 1, 1 };
193 const float c_general::_2power31 = 1u << 31;
196 const unsigned long long c_general::highMaskDouble = 0xfffffffff8000000ull;
197 const double c_general::oneDouble = 1.;
198 const unsigned long long c_general::frexpMask = 0xbfefffffffffffffull;
200 const unsigned long long c_log<double>::data[21] = {
201 0x000003ff000003ffull
202 , 0x7ff0000000000000ull
204 , 0x3f1ab4c293c31bb0ull
205 , 0x3fdfd6f53f5652f2ull
206 , 0x4012d2baed926911ull
207 , 0x402cff72c63eeb2eull
208 , 0x4031efd6924bc84dull
209 , 0x401ed5637d7edcf8ull
211 , 0x40269320ae97ef8eull
212 , 0x40469d2c4e19c033ull
213 , 0x4054bf33a326bdbdull
214 , 0x4051c9e2eb5eae21ull
215 , 0x4037200a9e1f25b2ull
217 , 0xfff0000000000000ull
218 , 0x0010000000000000ull
219 , 0x3fe6a09e667f3bcdull
220 , 0x3fe6300000000000ull
221 , 0xbf2bd0105c610ca8ull
222 , 0x3fe0000000000000ull
223 , 0x3fdbcb7b1526e50eull
224 , 0x3ff71547652b82feull
257 V_ALIGN(64) const
int c_general::absMaskFloat[4] = { 0x7fffffff, 0x7fffffff, 0x7fffffff, 0x7fffffff };
258 V_ALIGN(16) const
unsigned int c_general::signMaskFloat[4] = { 0x80000000, 0x80000000, 0x80000000, 0x80000000 };
259 V_ALIGN(16) const
unsigned int c_general::highMaskFloat[4] = { 0xfffff000u, 0xfffff000u, 0xfffff000u, 0xfffff000u };
260 V_ALIGN(16) const
short c_general::minShort[8] = { -0x8000, -0x8000, -0x8000, -0x8000, -0x8000, -0x8000, -0x8000, -0x8000 };
261 V_ALIGN(16) extern const
unsigned short _IndexesFromZero8[8] = { 0, 1, 2, 3, 4, 5, 6, 7 };
264 V_ALIGN(16) extern const
unsigned int _IndexesFromZero4[4] = { 0, 1, 2, 3 };
265 V_ALIGN(16) const
unsigned short c_general::one16[8] = { 1, 1, 1, 1, 1, 1, 1, 1 };
266 V_ALIGN(16) const
unsigned int c_general::one32[4] = { 1, 1, 1, 1 };
267 V_ALIGN(16) const
float c_general::oneFloat[4] = { 1.f, 1.f, 1.f, 1.f };
270 V_ALIGN(16) const
unsigned long long c_general::highMaskDouble[2] = { 0xfffffffff8000000ull, 0xfffffffff8000000ull };
271 V_ALIGN(16) const
double c_general::oneDouble[2] = { 1., 1. };
272 V_ALIGN(16) const
long long c_general::absMaskDouble[2] = { 0x7fffffffffffffffll, 0x7fffffffffffffffll };
273 V_ALIGN(16) const
unsigned long long c_general::signMaskDouble[2] = { 0x8000000000000000ull, 0x8000000000000000ull };
274 V_ALIGN(16) const
unsigned long long c_general::frexpMask[2] = { 0xbfefffffffffffffull, 0xbfefffffffffffffull };
355 #define _4(x) x, x, x, x
368 _4(4.166664568298827e-2
f),
369 _4(-1.388731625493765e-3
f),
370 _4(2.443315711809948e-5
f),
375 _4(-1.6666654611e-1
f),
376 _4(8.3321608736e-3
f),
378 _4(-1.9515295891e-4
f),
388 _4(8.05374449538e-2
f),
389 _4(1.38776856032e-1
f),
390 _4(1.99777106478e-1
f),
391 _4(3.33329491539e-1
f),
400 _4(2.414213562373095
f),
401 _4(0.414213562373095
f),
408 _4(4.2163199048e-2
f),
409 _4(2.4181311049e-2
f),
410 _4(4.5470025998e-2
f),
411 _4(7.4953002686e-2
f),
413 _4(1.6666752422e-1
f),
436 V_ALIGN(16) extern const
unsigned char _IndexesFromZero16[16] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 };
438 V_ALIGN(64) const
unsigned long long c_log<
double>::data[21 * 2] = {
439 0x000003ff000003ffull, 0x000003ff000003ffull
440 , 0x7ff0000000000000ull, 0x7ff0000000000000ull
442 , 0x3f1ab4c293c31bb0ull, 0x3f1ab4c293c31bb0ull
443 , 0x3fdfd6f53f5652f2ull, 0x3fdfd6f53f5652f2ull
444 , 0x4012d2baed926911ull, 0x4012d2baed926911ull
445 , 0x402cff72c63eeb2eull, 0x402cff72c63eeb2eull
446 , 0x4031efd6924bc84dull, 0x4031efd6924bc84dull
447 , 0x401ed5637d7edcf8ull, 0x401ed5637d7edcf8ull
449 , 0x40269320ae97ef8eull, 0x40269320ae97ef8eull
450 , 0x40469d2c4e19c033ull, 0x40469d2c4e19c033ull
451 , 0x4054bf33a326bdbdull, 0x4054bf33a326bdbdull
452 , 0x4051c9e2eb5eae21ull, 0x4051c9e2eb5eae21ull
453 , 0x4037200a9e1f25b2ull, 0x4037200a9e1f25b2ull
455 , 0xfff0000000000000ull, 0xfff0000000000000ull
456 , 0x0010000000000000ull, 0x0010000000000000ull
457 , 0x3fe6a09e667f3bcdull, 0x3fe6a09e667f3bcdull
458 , 0x3fe6300000000000ull, 0x3fe6300000000000ull
459 , 0xbf2bd0105c610ca8ull, 0xbf2bd0105c610ca8ull
460 , 0x3fe0000000000000ull, 0x3fe0000000000000ull
461 , 0x3fdbcb7b1526e50eull, 0x3fdbcb7b1526e50eull
462 , 0x3ff71547652b82feull, 0x3ff71547652b82feull
465 template<>
V_ALIGN(64) const
unsigned int c_log<
float>::data[21 * 4] = {
466 0x0000007fu, 0x0000007fu, 0x0000007fu, 0x0000007fu,
467 0x7f800000u, 0x7f800000u, 0x7f800000u, 0x7f800000u,
469 0x3d9021bbu, 0x3d9021bbu, 0x3d9021bbu, 0x3d9021bbu,
470 0xbdebd1b8u, 0xbdebd1b8u, 0xbdebd1b8u, 0xbdebd1b8u,
471 0x3def251au, 0x3def251au, 0x3def251au, 0x3def251au,
472 0xbdfe5d4fu, 0xbdfe5d4fu, 0xbdfe5d4fu, 0xbdfe5d4fu,
473 0x3e11e9bfu, 0x3e11e9bfu, 0x3e11e9bfu, 0x3e11e9bfu,
474 0xbe2aae50u, 0xbe2aae50u, 0xbe2aae50u, 0xbe2aae50u,
475 0x3e4cceacu, 0x3e4cceacu, 0x3e4cceacu, 0x3e4cceacu,
476 0xbe7ffffcu, 0xbe7ffffcu, 0xbe7ffffcu, 0xbe7ffffcu,
477 0x3eaaaaaau, 0x3eaaaaaau, 0x3eaaaaaau, 0x3eaaaaaau,
481 0xff800000u, 0xff800000u, 0xff800000u, 0xff800000u,
482 0x00800000u, 0x00800000u, 0x00800000u, 0x00800000u,
483 0x3f3504f3u, 0x3f3504f3u, 0x3f3504f3u, 0x3f3504f3u,
488 0x3f318000u, 0x3f318000u, 0x3f318000u, 0x3f318000u,
489 0xb95e8083u, 0xb95e8083u, 0xb95e8083u, 0xb95e8083u,
490 0x3f000000u, 0x3f000000u, 0x3f000000u, 0x3f000000u,
491 0x3ede5bd9u, 0x3ede5bd9u, 0x3ede5bd9u, 0x3ede5bd9u,
492 0x3fb8aa3bu, 0x3fb8aa3bu, 0x3fb8aa3bu, 0x3fb8aa3bu,
503 V_ALIGN(64) unsigned
int RandomState[16] = {
504 0x5a383a4fu, 0xc68bd45eu, 0x691d6d86u, 0xb367e14fu,
505 0xd689dbaau, 0xfde442aau, 0x3d265423u, 0x1a77885cu,
506 0x36ed2684u, 0xfb1f049du, 0x19e52f31u, 0x821e4dd7u,
507 0x23996d25u, 0x5962725au, 0x6aced4ceu, 0xd4c610f3u
521 printf(
"The versions of libVc.a (%s) and Vc/version.h (%s) are incompatible. Aborting.\n",
LIBRARY_VERSION, compileTimeVersion);
V_ALIGN(64) extern const unsigned int _IndexesFromZero32[8]
const unsigned int LIBRARY_ABI_VERSION
void checkLibraryAbi(unsigned int compileTimeAbi, unsigned int versionNumber, const char *versionString)
const unsigned int LIBRARY_VERSION_NUMBER
const char LIBRARY_VERSION[]
#define VC_LIBRARY_ABI_VERSION
void _operator_bracket_warning()
#define VC_VERSION_STRING
static unsigned int versionNumber()
V_ALIGN(64) unsigned int RandomState[16]
RooCmdArg Warnings(Bool_t flag=kTRUE)
#define Vc_buildDouble(sign, mantissa, exponent)
#define Vc_buildFloat(sign, mantissa, exponent)
ClassImp(TMCParticle) void TMCParticle printf(": p=(%7.3f,%7.3f,%9.3f) ;", fPx, fPy, fPz)
#define VC_VERSION_NUMBER
V_ALIGN(64) const int c_general