[libc-commits] [libc] b98c190 - [libc][NFC] Switch use of errno in src/time and test/src/time to libc_errno.

Raman Tenneti via libc-commits libc-commits at lists.llvm.org
Thu Mar 2 14:41:24 PST 2023


Author: Raman Tenneti
Date: 2023-03-02T14:41:19-08:00
New Revision: b98c1906d6a5483ef709afaa1c05f36fb783d73d

URL: https://github.com/llvm/llvm-project/commit/b98c1906d6a5483ef709afaa1c05f36fb783d73d
DIFF: https://github.com/llvm/llvm-project/commit/b98c1906d6a5483ef709afaa1c05f36fb783d73d.diff

LOG: [libc][NFC] Switch use of errno in src/time and test/src/time to libc_errno.

Switch use of errno in src/time and test/src/time to libc_errno.

Reviewed By: sivachandra

Differential Revision: https://reviews.llvm.org/D145192

Added: 
    

Modified: 
    libc/src/time/CMakeLists.txt
    libc/src/time/clock_gettime.cpp
    libc/src/time/gettimeofday.cpp
    libc/src/time/linux/clock.cpp
    libc/src/time/linux/time.cpp
    libc/src/time/nanosleep.cpp
    libc/src/time/time_utils.h
    libc/test/src/time/CMakeLists.txt
    libc/test/src/time/asctime_r_test.cpp
    libc/test/src/time/asctime_test.cpp
    libc/test/src/time/clock_test.cpp
    libc/test/src/time/difftime_test.cpp
    libc/test/src/time/gettimeofday_test.cpp
    libc/test/src/time/gmtime_test.cpp
    libc/test/src/time/mktime_test.cpp
    libc/test/src/time/nanosleep_test.cpp
    libc/test/src/time/time_test.cpp

Removed: 
    


################################################################################
diff  --git a/libc/src/time/CMakeLists.txt b/libc/src/time/CMakeLists.txt
index 8f953e4c9b132..d45ef64d89125 100644
--- a/libc/src/time/CMakeLists.txt
+++ b/libc/src/time/CMakeLists.txt
@@ -9,7 +9,6 @@ add_object_library(
   HDRS
     time_utils.h
   DEPENDS
-    libc.include.errno
     libc.include.time
     libc.src.errno.errno
 )
@@ -67,7 +66,6 @@ add_entrypoint_object(
     gettimeofday.h
   DEPENDS
     .clock_gettime
-    libc.include.errno
     libc.include.time
     libc.include.sys_syscall
     libc.src.__support.OSUtil.osutil
@@ -104,7 +102,6 @@ add_entrypoint_object(
     mktime.h
   DEPENDS
     .time_utils
-    libc.include.errno
     libc.include.time
     libc.src.errno.errno
 )
@@ -116,7 +113,6 @@ add_entrypoint_object(
   HDRS
     nanosleep.h
   DEPENDS
-    libc.include.errno
     libc.include.time
     libc.include.sys_syscall
     libc.src.__support.OSUtil.osutil

diff  --git a/libc/src/time/clock_gettime.cpp b/libc/src/time/clock_gettime.cpp
index df7929f3f1b13..e8f9994ae696e 100644
--- a/libc/src/time/clock_gettime.cpp
+++ b/libc/src/time/clock_gettime.cpp
@@ -10,8 +10,8 @@
 
 #include "src/__support/OSUtil/syscall.h" // For internal syscall function.
 #include "src/__support/common.h"
+#include "src/errno/libc_errno.h"
 
-#include <errno.h>
 #include <sys/syscall.h> // For syscall numbers.
 #include <time.h>
 
@@ -25,7 +25,7 @@ LLVM_LIBC_FUNCTION(int, clock_gettime,
   // A negative return value indicates an error with the magnitude of the
   // value being the error code.
   if (ret_val < 0) {
-    errno = -ret_val;
+    libc_errno = -ret_val;
     return -1;
   }
 

diff  --git a/libc/src/time/gettimeofday.cpp b/libc/src/time/gettimeofday.cpp
index 266ba14648a2c..7c16c01d1dd91 100644
--- a/libc/src/time/gettimeofday.cpp
+++ b/libc/src/time/gettimeofday.cpp
@@ -10,8 +10,8 @@
 
 #include "src/__support/OSUtil/syscall.h" // For internal syscall function.
 #include "src/__support/common.h"
+#include "src/errno/libc_errno.h"
 
-#include <errno.h>
 #include <sys/syscall.h> // For syscall numbers.
 
 namespace __llvm_libc {
@@ -27,7 +27,7 @@ LLVM_LIBC_FUNCTION(int, gettimeofday,
   // A negative return value indicates an error with the magnitude of the
   // value being the error code.
   if (ret_val < 0) {
-    errno = -ret_val;
+    libc_errno = -ret_val;
     return -1;
   }
   tv->tv_sec = tp.tv_sec;

diff  --git a/libc/src/time/linux/clock.cpp b/libc/src/time/linux/clock.cpp
index d448f8ba54ed8..ff91e95488088 100644
--- a/libc/src/time/linux/clock.cpp
+++ b/libc/src/time/linux/clock.cpp
@@ -11,8 +11,8 @@
 #include "src/__support/CPP/limits.h"
 #include "src/__support/OSUtil/syscall.h" // For internal syscall function.
 #include "src/__support/common.h"
+#include "src/errno/libc_errno.h"
 
-#include <errno.h>
 #include <sys/syscall.h> // For syscall numbers.
 #include <time.h>
 
@@ -23,7 +23,7 @@ LLVM_LIBC_FUNCTION(clock_t, clock, ()) {
   long ret_val = __llvm_libc::syscall_impl(
       SYS_clock_gettime, CLOCK_PROCESS_CPUTIME_ID, reinterpret_cast<long>(&ts));
   if (ret_val < 0) {
-    errno = -ret_val;
+    libc_errno = -ret_val;
     return clock_t(-1);
   }
 

diff  --git a/libc/src/time/linux/time.cpp b/libc/src/time/linux/time.cpp
index 9e39ffa502597..02b55a2f4c026 100644
--- a/libc/src/time/linux/time.cpp
+++ b/libc/src/time/linux/time.cpp
@@ -10,8 +10,8 @@
 
 #include "src/__support/OSUtil/syscall.h" // For internal syscall function.
 #include "src/__support/common.h"
+#include "src/errno/libc_errno.h"
 
-#include <errno.h>
 #include <sys/syscall.h> // For syscall numbers.
 #include <time.h>
 
@@ -23,7 +23,7 @@ LLVM_LIBC_FUNCTION(time_t, time, (time_t * tp)) {
   long ret_val = __llvm_libc::syscall_impl(SYS_clock_gettime, CLOCK_REALTIME,
                                            reinterpret_cast<long>(&ts));
   if (ret_val < 0) {
-    errno = -ret_val;
+    libc_errno = -ret_val;
     return -1;
   }
 

diff  --git a/libc/src/time/nanosleep.cpp b/libc/src/time/nanosleep.cpp
index d586b6aee5cd3..fe042fc0f1c60 100644
--- a/libc/src/time/nanosleep.cpp
+++ b/libc/src/time/nanosleep.cpp
@@ -8,11 +8,11 @@
 //===----------------------------------------------------------------------===//
 
 #include "src/time/nanosleep.h"
+
 #include "include/sys/syscall.h"          // For syscall numbers.
 #include "src/__support/OSUtil/syscall.h" // For syscall functions.
 #include "src/__support/common.h"
-
-#include <errno.h>
+#include "src/errno/libc_errno.h"
 
 namespace __llvm_libc {
 

diff  --git a/libc/src/time/time_utils.h b/libc/src/time/time_utils.h
index 317195da7f61a..362b4a9085a9f 100644
--- a/libc/src/time/time_utils.h
+++ b/libc/src/time/time_utils.h
@@ -11,10 +11,8 @@
 
 #include <stddef.h> // For size_t.
 
-#include "include/errno.h"
-
 #include "src/__support/common.h"
-#include "src/errno/llvmlibc_errno.h"
+#include "src/errno/libc_errno.h"
 #include "src/time/mktime.h"
 
 #include <stdint.h>
@@ -86,11 +84,11 @@ extern int64_t update_from_seconds(int64_t total_seconds, struct tm *tm);
 
 // POSIX.1-2017 requires this.
 LIBC_INLINE time_t out_of_range() {
-  llvmlibc_errno = EOVERFLOW;
+  libc_errno = EOVERFLOW;
   return static_cast<time_t>(-1);
 }
 
-LIBC_INLINE void invalid_value() { llvmlibc_errno = EINVAL; }
+LIBC_INLINE void invalid_value() { libc_errno = EINVAL; }
 
 LIBC_INLINE char *asctime(const struct tm *timeptr, char *buffer,
                           size_t bufferLength) {

diff  --git a/libc/test/src/time/CMakeLists.txt b/libc/test/src/time/CMakeLists.txt
index d059f5640dd65..378d754ca3e0e 100644
--- a/libc/test/src/time/CMakeLists.txt
+++ b/libc/test/src/time/CMakeLists.txt
@@ -62,10 +62,10 @@ add_libc_unittest(
   CXX_STANDARD
     20
   DEPENDS
-    libc.include.errno
     libc.include.time
     libc.src.time.gettimeofday
     libc.src.time.nanosleep
+    libc.src.errno.errno
 )
 
 add_libc_unittest(
@@ -119,9 +119,9 @@ add_libc_unittest(
   CXX_STANDARD
     20
   DEPENDS
-    libc.include.errno
     libc.include.time
     libc.src.time.nanosleep
+    libc.src.errno.errno
 )
 
 add_libc_unittest(
@@ -131,9 +131,9 @@ add_libc_unittest(
   SRCS
     time_test.cpp
   DEPENDS
-    libc.include.errno
     libc.include.time
     libc.src.time.time
+    libc.src.errno.errno
 )
 
 add_libc_unittest(
@@ -143,7 +143,7 @@ add_libc_unittest(
   SRCS
     clock_test.cpp
   DEPENDS
-    libc.include.errno
     libc.include.time
     libc.src.time.clock
+    libc.src.errno.errno
 )

diff  --git a/libc/test/src/time/asctime_r_test.cpp b/libc/test/src/time/asctime_r_test.cpp
index 748cec4f2bc92..7d40b635960aa 100644
--- a/libc/test/src/time/asctime_r_test.cpp
+++ b/libc/test/src/time/asctime_r_test.cpp
@@ -7,6 +7,7 @@
 //
 //===----------------------------------------------------------------------===//
 
+#include "src/errno/libc_errno.h"
 #include "src/time/asctime_r.h"
 #include "src/time/time_utils.h"
 #include "test/UnitTest/Test.h"
@@ -27,17 +28,17 @@ static inline char *call_asctime_r(struct tm *tm_data, int year, int month,
 TEST(LlvmLibcAsctimeR, Nullptr) {
   char *result;
   result = __llvm_libc::asctime_r(nullptr, nullptr);
-  ASSERT_EQ(EINVAL, llvmlibc_errno);
+  ASSERT_EQ(EINVAL, libc_errno);
   ASSERT_STREQ(nullptr, result);
 
   char buffer[TimeConstants::ASCTIME_BUFFER_SIZE];
   result = __llvm_libc::asctime_r(nullptr, buffer);
-  ASSERT_EQ(EINVAL, llvmlibc_errno);
+  ASSERT_EQ(EINVAL, libc_errno);
   ASSERT_STREQ(nullptr, result);
 
   struct tm tm_data;
   result = __llvm_libc::asctime_r(&tm_data, nullptr);
-  ASSERT_EQ(EINVAL, llvmlibc_errno);
+  ASSERT_EQ(EINVAL, libc_errno);
   ASSERT_STREQ(nullptr, result);
 }
 

diff  --git a/libc/test/src/time/asctime_test.cpp b/libc/test/src/time/asctime_test.cpp
index e6a5040de235d..3df2edf1f9c9a 100644
--- a/libc/test/src/time/asctime_test.cpp
+++ b/libc/test/src/time/asctime_test.cpp
@@ -6,6 +6,7 @@
 //
 //===----------------------------------------------------------------------===//
 
+#include "src/errno/libc_errno.h"
 #include "src/time/asctime.h"
 #include "test/UnitTest/Test.h"
 #include "test/src/time/TmHelper.h"
@@ -21,7 +22,7 @@ static inline char *call_asctime(struct tm *tm_data, int year, int month,
 TEST(LlvmLibcAsctime, Nullptr) {
   char *result;
   result = __llvm_libc::asctime(nullptr);
-  ASSERT_EQ(EINVAL, llvmlibc_errno);
+  ASSERT_EQ(EINVAL, libc_errno);
   ASSERT_STREQ(nullptr, result);
 }
 
@@ -39,7 +40,7 @@ TEST(LlvmLibcAsctime, InvalidWday) {
                0,    // sec
                -1,   // wday
                0);   // yday
-  ASSERT_EQ(EINVAL, llvmlibc_errno);
+  ASSERT_EQ(EINVAL, libc_errno);
 
   // Test with wday = 7.
   call_asctime(&tm_data,
@@ -51,7 +52,7 @@ TEST(LlvmLibcAsctime, InvalidWday) {
                0,    // sec
                7,    // wday
                0);   // yday
-  ASSERT_EQ(EINVAL, llvmlibc_errno);
+  ASSERT_EQ(EINVAL, libc_errno);
 }
 
 // Months are from January to December. Test passing invalid value in month.
@@ -68,7 +69,7 @@ TEST(LlvmLibcAsctime, InvalidMonth) {
                0,    // sec
                4,    // wday
                0);   // yday
-  ASSERT_EQ(EINVAL, llvmlibc_errno);
+  ASSERT_EQ(EINVAL, libc_errno);
 
   // Test with month = 13.
   call_asctime(&tm_data,
@@ -80,7 +81,7 @@ TEST(LlvmLibcAsctime, InvalidMonth) {
                0,    // sec
                4,    // wday
                0);   // yday
-  ASSERT_EQ(EINVAL, llvmlibc_errno);
+  ASSERT_EQ(EINVAL, libc_errno);
 }
 
 TEST(LlvmLibcAsctime, ValidWeekdays) {
@@ -208,6 +209,6 @@ TEST(LlvmLibcAsctime, Max64BitYear) {
                         50,         // sec
                         2,          // wday
                         50);        // yday
-  ASSERT_EQ(EOVERFLOW, llvmlibc_errno);
+  ASSERT_EQ(EOVERFLOW, libc_errno);
   ASSERT_STREQ(nullptr, result);
 }

diff  --git a/libc/test/src/time/clock_test.cpp b/libc/test/src/time/clock_test.cpp
index 31f7f1737ec18..fc7e5b54342d8 100644
--- a/libc/test/src/time/clock_test.cpp
+++ b/libc/test/src/time/clock_test.cpp
@@ -9,7 +9,6 @@
 #include "src/time/clock.h"
 #include "test/UnitTest/Test.h"
 
-#include <errno.h>
 #include <limits.h>
 #include <time.h>
 

diff  --git a/libc/test/src/time/
diff time_test.cpp b/libc/test/src/time/
diff time_test.cpp
index 61bb4bf4e9003..f099d5899c53b 100644
--- a/libc/test/src/time/
diff time_test.cpp
+++ b/libc/test/src/time/
diff time_test.cpp
@@ -12,8 +12,6 @@
 #include "test/ErrnoSetterMatcher.h"
 #include "test/UnitTest/Test.h"
 
-#include <errno.h>
-
 using __llvm_libc::testing::ErrnoSetterMatcher::Succeeds;
 using __llvm_libc::time_utils::TimeConstants;
 

diff  --git a/libc/test/src/time/gettimeofday_test.cpp b/libc/test/src/time/gettimeofday_test.cpp
index 771bea0b946e8..f6a021b56f826 100644
--- a/libc/test/src/time/gettimeofday_test.cpp
+++ b/libc/test/src/time/gettimeofday_test.cpp
@@ -6,7 +6,6 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include <errno.h>
 #include <time.h>
 
 #include "src/time/gettimeofday.h"

diff  --git a/libc/test/src/time/gmtime_test.cpp b/libc/test/src/time/gmtime_test.cpp
index 47b78105adc05..12bc16d4ed5da 100644
--- a/libc/test/src/time/gmtime_test.cpp
+++ b/libc/test/src/time/gmtime_test.cpp
@@ -6,13 +6,13 @@
 //
 //===----------------------------------------------------------------------===//
 
+#include "src/errno/libc_errno.h"
 #include "src/time/gmtime.h"
 #include "src/time/time_utils.h"
 #include "test/ErrnoSetterMatcher.h"
 #include "test/UnitTest/Test.h"
 #include "test/src/time/TmMatcher.h"
 
-#include <errno.h>
 #include <limits.h>
 
 using __llvm_libc::testing::ErrnoSetterMatcher::Fails;
@@ -25,15 +25,15 @@ TEST(LlvmLibcGmTime, OutOfRange) {
                         TimeConstants::NUMBER_OF_SECONDS_IN_LEAP_YEAR);
   struct tm *tm_data = __llvm_libc::gmtime(&seconds);
   EXPECT_TRUE(tm_data == nullptr);
-  EXPECT_EQ(llvmlibc_errno, EOVERFLOW);
+  EXPECT_EQ(libc_errno, EOVERFLOW);
 
-  llvmlibc_errno = 0;
+  libc_errno = 0;
   seconds = INT_MIN * static_cast<int64_t>(
                           TimeConstants::NUMBER_OF_SECONDS_IN_LEAP_YEAR) -
             1;
   tm_data = __llvm_libc::gmtime(&seconds);
   EXPECT_TRUE(tm_data == nullptr);
-  EXPECT_EQ(llvmlibc_errno, EOVERFLOW);
+  EXPECT_EQ(libc_errno, EOVERFLOW);
 }
 
 TEST(LlvmLibcGmTime, InvalidSeconds) {

diff  --git a/libc/test/src/time/mktime_test.cpp b/libc/test/src/time/mktime_test.cpp
index 231696d45fcb8..03b0d50a44e4a 100644
--- a/libc/test/src/time/mktime_test.cpp
+++ b/libc/test/src/time/mktime_test.cpp
@@ -13,7 +13,6 @@
 #include "test/src/time/TmHelper.h"
 #include "test/src/time/TmMatcher.h"
 
-#include <errno.h>
 #include <limits.h>
 
 using __llvm_libc::testing::ErrnoSetterMatcher::Fails;

diff  --git a/libc/test/src/time/nanosleep_test.cpp b/libc/test/src/time/nanosleep_test.cpp
index 054ce36897012..27c7b0fa2caa3 100644
--- a/libc/test/src/time/nanosleep_test.cpp
+++ b/libc/test/src/time/nanosleep_test.cpp
@@ -7,9 +7,9 @@
 //
 //===----------------------------------------------------------------------===//
 
-#include <errno.h>
 #include <time.h>
 
+#include "src/errno/libc_errno.h"
 #include "src/time/nanosleep.h"
 #include "test/ErrnoSetterMatcher.h"
 #include "test/UnitTest/Test.h"
@@ -19,11 +19,11 @@ namespace cpp = __llvm_libc::cpp;
 TEST(LlvmLibcNanosleep, SmokeTest) {
   // TODO: When we have the code to read clocks, test that time has passed.
   using __llvm_libc::testing::ErrnoSetterMatcher::Succeeds;
-  errno = 0;
+  libc_errno = 0;
 
   struct timespec tim = {1, 500};
   struct timespec tim2 = {0, 0};
   int ret = __llvm_libc::nanosleep(&tim, &tim2);
-  ASSERT_EQ(errno, 0);
+  ASSERT_EQ(libc_errno, 0);
   ASSERT_EQ(ret, 0);
 }

diff  --git a/libc/test/src/time/time_test.cpp b/libc/test/src/time/time_test.cpp
index 7183469db2615..92fd8e48a77a3 100644
--- a/libc/test/src/time/time_test.cpp
+++ b/libc/test/src/time/time_test.cpp
@@ -9,7 +9,6 @@
 #include "src/time/time_func.h"
 #include "test/UnitTest/Test.h"
 
-#include <errno.h>
 #include <limits.h>
 #include <time.h>
 


        


More information about the libc-commits mailing list