================ @@ -0,0 +1,124 @@ +// -*- C++ -*- +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +// REQUIRES: target={{aarch64.*}} +// UNSUPPORTED: target={{.*-windows.*}} + +#undef NDEBUG +#include "support/func_bounds.h" +#include <assert.h> +#include <inttypes.h> +#include <libunwind.h> +#include <stdio.h> +#include <stdlib.h> +#include <sys/types.h> +#include <unistd.h> +#include <unwind.h> + +#if defined(__APPLE__) +#include <sys/sysctl.h> +#endif + +// Note: This test requires FEAT_PAuth (and is setup to pass on other targets). + +#if defined(__APPLE__) +static bool checkHasPAuth() { + int has_pauth = 0; + size_t size = sizeof(has_pauth); + if (sysctlbyname("hw.optional.arm.FEAT_PAuth", &has_pauth, &size, NULL, 0)) + return false; + return has_pauth != 0; +} +#else +static bool checkHasPAuth() { + // TODO: Support other platforms. ---------------- brad0 wrote:
But that was before the change of ```#if defined(__PTRAUTH__) || __has_feature(ptrauth_calls)```. Let me try again with the latest. https://github.com/llvm/llvm-project/pull/205188 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
