[libc-commits] [libc] [libc] Only include getauxval on AARCH64 targets (PR #95844)
via libc-commits
libc-commits at lists.llvm.org
Mon Jun 17 13:34:50 PDT 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-libc
Author: Joseph Huber (jhuber6)
<details>
<summary>Changes</summary>
Summary:
Not all platforms support this function or header, but it was being
included by every test. Move it inside of the `ifdef` for the only user,
which is aarch64.
---
Full diff: https://github.com/llvm/llvm-project/pull/95844.diff
2 Files Affected:
- (modified) libc/test/IntegrationTest/test.cpp (+2-1)
- (modified) libc/test/UnitTest/HermeticTestUtils.cpp (+2-1)
``````````diff
diff --git a/libc/test/IntegrationTest/test.cpp b/libc/test/IntegrationTest/test.cpp
index a8b2f2911fd8e..0c961dbafb840 100644
--- a/libc/test/IntegrationTest/test.cpp
+++ b/libc/test/IntegrationTest/test.cpp
@@ -7,7 +7,6 @@
//===----------------------------------------------------------------------===//
#include "src/__support/common.h"
-#include "src/sys/auxv/getauxval.h"
#include <stddef.h>
#include <stdint.h>
@@ -83,6 +82,8 @@ void *realloc(void *ptr, size_t s) {
void *__dso_handle = nullptr;
#ifdef LIBC_TARGET_ARCH_IS_AARCH64
+#include "src/sys/auxv/getauxval.h"
+
// Due to historical reasons, libgcc on aarch64 may expect __getauxval to be
// defined. See also https://gcc.gnu.org/pipermail/gcc-cvs/2020-June/300635.html
unsigned long __getauxval(unsigned long id) {
diff --git a/libc/test/UnitTest/HermeticTestUtils.cpp b/libc/test/UnitTest/HermeticTestUtils.cpp
index 6e815e6c8aab0..191e54b7344a6 100644
--- a/libc/test/UnitTest/HermeticTestUtils.cpp
+++ b/libc/test/UnitTest/HermeticTestUtils.cpp
@@ -7,7 +7,6 @@
//===----------------------------------------------------------------------===//
#include "src/__support/common.h"
-#include "src/sys/auxv/getauxval.h"
#include <stddef.h>
#include <stdint.h>
@@ -111,6 +110,8 @@ void __cxa_pure_virtual() {
void *__dso_handle = nullptr;
#ifdef LIBC_TARGET_ARCH_IS_AARCH64
+#include "src/sys/auxv/getauxval.h"
+
// Due to historical reasons, libgcc on aarch64 may expect __getauxval to be
// defined. See also https://gcc.gnu.org/pipermail/gcc-cvs/2020-June/300635.html
unsigned long __getauxval(unsigned long id) {
``````````
</details>
https://github.com/llvm/llvm-project/pull/95844
More information about the libc-commits
mailing list