[libc-commits] [libc] 5080840 - [LIBC][NFC] Rename errno and assert files to match other files with functions
Michael Jones via libc-commits
libc-commits at lists.llvm.org
Tue Nov 3 13:29:38 PST 2020
Author: Michael Jones
Date: 2020-11-03T21:29:32Z
New Revision: 5080840d280d4adaab93a88fa6033849f0589737
URL: https://github.com/llvm/llvm-project/commit/5080840d280d4adaab93a88fa6033849f0589737
DIFF: https://github.com/llvm/llvm-project/commit/5080840d280d4adaab93a88fa6033849f0589737.diff
LOG: [LIBC][NFC] Rename errno and assert files to match other files with functions
Rename the files containing the `__errno_location` function
to `__errno_location.h/cpp` to match the other files and move
the `llvmlibc_errno` macro to its own file.
Split assert.h into `__assert_fail.h` (contains the function prototype)
and assert.h (contains the assert macro).
Reviewed By: sivachandra
Differential Revision: https://reviews.llvm.org/D90653
Added:
libc/src/assert/__assert_fail.h
libc/src/errno/__errno_location.cpp
libc/src/errno/__errno_location.h
Modified:
libc/src/assert/CMakeLists.txt
libc/src/assert/__assert_fail.cpp
libc/src/assert/assert.h
libc/src/errno/CMakeLists.txt
libc/src/errno/llvmlibc_errno.h
Removed:
libc/src/errno/errno_location.cpp
################################################################################
diff --git a/libc/src/assert/CMakeLists.txt b/libc/src/assert/CMakeLists.txt
index 69c54b505e5c..36123cc6bd41 100644
--- a/libc/src/assert/CMakeLists.txt
+++ b/libc/src/assert/CMakeLists.txt
@@ -3,6 +3,7 @@ add_entrypoint_object(
SRCS
__assert_fail.cpp
HDRS
+ __assert_fail.h
assert.h
DEPENDS
# These two dependencies are temporary and should be replaced by fprintf
diff --git a/libc/src/assert/__assert_fail.cpp b/libc/src/assert/__assert_fail.cpp
index 8b75a3bfeb70..114a368da033 100644
--- a/libc/src/assert/__assert_fail.cpp
+++ b/libc/src/assert/__assert_fail.cpp
@@ -6,7 +6,7 @@
//
//===----------------------------------------------------------------------===//
-#include "src/assert/assert.h"
+#include "src/assert/__assert_fail.h"
#include "src/stdlib/abort.h"
// These includes are temporary.
diff --git a/libc/src/assert/__assert_fail.h b/libc/src/assert/__assert_fail.h
new file mode 100644
index 000000000000..3ad240049876
--- /dev/null
+++ b/libc/src/assert/__assert_fail.h
@@ -0,0 +1,21 @@
+//===-- Internal header for __assert_fail -----------------------*- 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
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef LLVM_LIBC_SRC_ASSERT_ASSERT_FAIL_H
+#define LLVM_LIBC_SRC_ASSERT_ASSERT_FAIL_H
+
+#include <stddef.h>
+
+namespace __llvm_libc {
+
+[[noreturn]] void __assert_fail(const char *assertion, const char *file,
+ unsigned line, const char *function);
+
+} // namespace __llvm_libc
+
+#endif // LLVM_LIBC_SRC_ASSERT_ASSERT_FAIL_H
diff --git a/libc/src/assert/assert.h b/libc/src/assert/assert.h
index 4c9a15d2142a..46cfe3befedc 100644
--- a/libc/src/assert/assert.h
+++ b/libc/src/assert/assert.h
@@ -6,19 +6,11 @@
//
//===----------------------------------------------------------------------===//
-#ifndef LLVM_LIBC_SRC_ASSERT_ASSERT_H
-#define LLVM_LIBC_SRC_ASSERT_ASSERT_H
+#include "src/assert/__assert_fail.h"
-#include <stddef.h>
-
-namespace __llvm_libc {
-
-[[noreturn]] void __assert_fail(const char *assertion, const char *file, unsigned line,
- const char *function);
-
-} // namespace __llvm_libc
-
-#endif // LLVM_LIBC_SRC_ASSERT_ASSERT_H
+// There is no header guard here since assert is intended to be able to be
+// able to be included multiple times with NDEBUG defined
diff erently, causing
+//
diff erent behavior.
#undef assert
diff --git a/libc/src/errno/CMakeLists.txt b/libc/src/errno/CMakeLists.txt
index 9f244908d700..e13aa1df9b17 100644
--- a/libc/src/errno/CMakeLists.txt
+++ b/libc/src/errno/CMakeLists.txt
@@ -1,7 +1,8 @@
add_entrypoint_object(
__errno_location
SRCS
- errno_location.cpp
+ __errno_location.cpp
HDRS
+ __errno_location.h
llvmlibc_errno.h
)
diff --git a/libc/src/errno/errno_location.cpp b/libc/src/errno/__errno_location.cpp
similarity index 94%
rename from libc/src/errno/errno_location.cpp
rename to libc/src/errno/__errno_location.cpp
index 1d3e2b79408e..3e7c769483b0 100644
--- a/libc/src/errno/errno_location.cpp
+++ b/libc/src/errno/__errno_location.cpp
@@ -6,7 +6,7 @@
//
//===----------------------------------------------------------------------===//
-#include "src/errno/llvmlibc_errno.h"
+#include "src/errno/__errno_location.h"
#include "src/__support/common.h"
diff --git a/libc/src/errno/__errno_location.h b/libc/src/errno/__errno_location.h
new file mode 100644
index 000000000000..20be3fcf812a
--- /dev/null
+++ b/libc/src/errno/__errno_location.h
@@ -0,0 +1,18 @@
+//===-- Implementation header for __errno_location --------------*- 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
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef LLVM_LIBC_SRC_ERRNO_ERRNO_LOCATION_H
+#define LLVM_LIBC_SRC_ERRNO_ERRNO_LOCATION_H
+
+namespace __llvm_libc {
+
+int *__errno_location();
+
+} // namespace __llvm_libc
+
+#endif // LLVM_LIBC_SRC_ERRNO_ERRNO_LOCATION_H
diff --git a/libc/src/errno/llvmlibc_errno.h b/libc/src/errno/llvmlibc_errno.h
index 870205663e09..d1032a42c472 100644
--- a/libc/src/errno/llvmlibc_errno.h
+++ b/libc/src/errno/llvmlibc_errno.h
@@ -6,6 +6,8 @@
//
//===----------------------------------------------------------------------===//
+#include "src/errno/__errno_location.h"
+
#ifndef LLVM_LIBC_SRC_ERRNO_LLVMLIBC_ERRNO_H
#define LLVM_LIBC_SRC_ERRNO_LLVMLIBC_ERRNO_H
@@ -13,10 +15,4 @@
// public header.
#define llvmlibc_errno (*__llvm_libc::__errno_location())
-namespace __llvm_libc {
-
-int *__errno_location();
-
-} // namespace __llvm_libc
-
#endif // LLVM_LIBC_SRC_ERRNO_LLVMLIBC_ERRNO_H
More information about the libc-commits
mailing list