mirror of
https://github.com/simdjson/simdjson
synced 2026-06-08 17:27:07 +00:00
7068894be3
* WIP: initial RVV implementation Co-authored-by: gong-flying <gongxiaofei24@iscas.ac.cn> * Fix issue with SIMDJSON_CONDITIONAL_INCLUDE in rvv/implementation.h Co-authored-by: gong-flying <gongxiaofei24@iscas.ac.cn> * drop RISC-V V-extension auto-detection in cmake - Remove CMake logic that adds -DSIMDJSON_IS_RVV=1. - Let SIMDJSON_IS_RVV be determined by portability.h. - Translate placeholder comment to English. Co-authored-by: gong-flying <gongxiaofei24@iscas.ac.cn> * fixing amalgamation. Co-authored-by: gong-flying <gongxiaofei24@iscas.ac.cn> * adding base Co-authored-by: gong-flying <gongxiaofei24@iscas.ac.cn> --------- Co-authored-by: gong-flying <gongxiaofei24@iscas.ac.cn> Co-authored-by: Daniel Lemire <daniel@lemire.me>
42 lines
1.3 KiB
C++
42 lines
1.3 KiB
C++
#ifndef SIMDJSON_BUILTIN_ONDEMAND_H
|
|
#define SIMDJSON_BUILTIN_ONDEMAND_H
|
|
|
|
#include "simdjson/builtin.h"
|
|
#include "simdjson/builtin/base.h"
|
|
|
|
#include "simdjson/generic/ondemand/dependencies.h"
|
|
|
|
#define SIMDJSON_CONDITIONAL_INCLUDE
|
|
|
|
#if SIMDJSON_BUILTIN_IMPLEMENTATION_IS(arm64)
|
|
#include "simdjson/arm64/ondemand.h"
|
|
#elif SIMDJSON_BUILTIN_IMPLEMENTATION_IS(fallback)
|
|
#include "simdjson/fallback/ondemand.h"
|
|
#elif SIMDJSON_BUILTIN_IMPLEMENTATION_IS(haswell)
|
|
#include "simdjson/haswell/ondemand.h"
|
|
#elif SIMDJSON_BUILTIN_IMPLEMENTATION_IS(icelake)
|
|
#include "simdjson/icelake/ondemand.h"
|
|
#elif SIMDJSON_BUILTIN_IMPLEMENTATION_IS(ppc64)
|
|
#include "simdjson/ppc64/ondemand.h"
|
|
#elif SIMDJSON_BUILTIN_IMPLEMENTATION_IS(westmere)
|
|
#include "simdjson/westmere/ondemand.h"
|
|
#elif SIMDJSON_BUILTIN_IMPLEMENTATION_IS(lsx)
|
|
#include "simdjson/lsx/ondemand.h"
|
|
#elif SIMDJSON_BUILTIN_IMPLEMENTATION_IS(lasx)
|
|
#include "simdjson/lasx/ondemand.h"
|
|
#elif SIMDJSON_BUILTIN_IMPLEMENTATION_IS(rvv)
|
|
#include "simdjson/rvv/ondemand.h"
|
|
#else
|
|
#error Unknown SIMDJSON_BUILTIN_IMPLEMENTATION
|
|
#endif
|
|
|
|
#undef SIMDJSON_CONDITIONAL_INCLUDE
|
|
|
|
namespace simdjson {
|
|
/**
|
|
* @copydoc simdjson::SIMDJSON_BUILTIN_IMPLEMENTATION::ondemand
|
|
*/
|
|
namespace ondemand = SIMDJSON_BUILTIN_IMPLEMENTATION::ondemand;
|
|
} // namespace simdjson
|
|
|
|
#endif // SIMDJSON_BUILTIN_ONDEMAND_H
|