brintos

brintos / llvm-project-archived public Read only

0
0
Text · 472 B · 91eac70 Raw
13 lines · plain
1#include <zircon/features.h>2#include <zircon/syscalls.h>3 4static void CONSTRUCTOR_ATTRIBUTE init_have_lse_atomics(void) {5  // This ensures the vDSO is a direct link-time dependency of anything that6  // needs this initializer code.7#pragma comment(lib, "zircon")8  uint32_t features;9  zx_status_t status = _zx_system_get_features(ZX_FEATURE_KIND_CPU, &features);10  __aarch64_have_lse_atomics =11      status == ZX_OK && (features & ZX_ARM64_FEATURE_ISA_ATOMICS) != 0;12}13