Make qsimd_p.h compile in C mode too

Since we very often need to write our intrinsic-using code in C to avoid
"leakage" of not-inlined inline functions, this file is very handy.

Change-Id: I57a1bd6e0c194530b732fffd14f45d27a32538f8
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
bb10
Thiago Macieira 2017-11-05 18:09:59 -08:00
parent 38271e9298
commit 9db46732a8
1 changed files with 7 additions and 4 deletions

View File

@ -53,7 +53,6 @@
//
#include <QtCore/private/qglobal_p.h>
#include <qatomic.h>
/*
* qt_module_config.prf defines the QT_COMPILER_SUPPORTS_XXX macros.
@ -333,8 +332,10 @@
# include <arm_acle.h>
#endif
QT_BEGIN_NAMESPACE
#ifdef __cplusplus
#include <qatomic.h>
QT_BEGIN_NAMESPACE
enum CPUFeatures {
#if defined(Q_PROCESSOR_ARM)
@ -512,9 +513,11 @@ static inline quint64 qCpuFeatures()
#define ALIGNMENT_PROLOGUE_32BYTES(ptr, i, length) \
for (; i < static_cast<int>(qMin(static_cast<quintptr>(length), ((8 - ((reinterpret_cast<quintptr>(ptr) >> 2) & 0x7)) & 0x7))); ++i)
QT_END_NAMESPACE
#endif // __cplusplus
#define SIMD_EPILOGUE(i, length, max) \
for (int _i = 0; _i < max && i < length; ++i, ++_i)
QT_END_NAMESPACE
#endif // QSIMD_P_H