mirror of
https://github.com/simdjson/simdjson
synced 2026-06-08 17:27:07 +00:00
Make it possible to check that an implementation is supported at runtime (#1197)
* Make it possible to check that an implementation is supported at runtime. * add CI fuzzing on arm 64 bit This adds fuzzing on drone.io arm64 For some reason, leak detection had to be disabled. If it is enabled, the fuzzer falsely reports a crash at the end of fuzzing. Closes: #1188 * Guarding the implementation accesses. * Better doc. * Updating cxxopts. * Make it possible to check that an implementation is supported at runtime. * Guarding the implementation accesses. * Better doc. * Updating cxxopts. * We need to accomodate cxxopts Co-authored-by: Paul Dreik <github@pauldreik.se>
This commit is contained in:
@@ -30,6 +30,13 @@ namespace simdjson { namespace internal { const fallback::implementation fallbac
|
||||
#endif // SIMDJSON_IMPLEMENTATION_FALLBACK
|
||||
|
||||
namespace simdjson {
|
||||
|
||||
bool implementation::supported_by_runtime_system() const {
|
||||
uint32_t required_instruction_sets = this->required_instruction_sets();
|
||||
uint32_t supported_instruction_sets = detect_supported_architectures();
|
||||
return ((supported_instruction_sets & required_instruction_sets) == required_instruction_sets);
|
||||
}
|
||||
|
||||
namespace internal {
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user