This introduces gmtime to LLVM libc, based on C99/C2X/Single Unix Spec.
authorRaman Tenneti <rtenneti@google.com>
Fri, 12 Mar 2021 00:17:50 +0000 (16:17 -0800)
committerRaman Tenneti <rtenneti@google.com>
Tue, 16 Mar 2021 23:44:48 +0000 (16:44 -0700)
commiteaae52c1fd459f9c0a147361bc3b962238faba5c
treed9a9dfb5c4b40b59f3c10c52f604af85733a9ba4
parentcaa7038a89328bc1e7d1df80f9fcede12dcb7df5
This introduces gmtime to LLVM libc, based on C99/C2X/Single Unix Spec.

This change doesn't handle TIMEZONE, tm_isdst and leap seconds.

Moved shared code between mktime and gmtime into time_utils.cpp.

Reviewed By: sivachandra

Differential Revision: https://reviews.llvm.org/D98467
12 files changed:
libc/config/linux/api.td
libc/config/linux/x86_64/entrypoints.txt
libc/spec/stdc.td
libc/src/time/CMakeLists.txt
libc/src/time/gmtime.cpp [new file with mode: 0644]
libc/src/time/gmtime.h [new file with mode: 0644]
libc/src/time/mktime.cpp
libc/src/time/time_utils.cpp [new file with mode: 0644]
libc/src/time/time_utils.h
libc/test/src/time/CMakeLists.txt
libc/test/src/time/gmtime_test.cpp [new file with mode: 0644]
libc/test/src/time/mktime_test.cpp