[libc] Add float.h header. (#78737)

This commit is contained in:
lntue 2024-01-19 12:04:34 -05:00 committed by GitHub
parent d0d0727104
commit c80d68a676
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
14 changed files with 68 additions and 0 deletions

View File

@ -2,6 +2,7 @@ set(TARGET_PUBLIC_HEADERS
libc.include.ctype
libc.include.fenv
libc.include.errno
libc.include.float
libc.include.inttypes
libc.include.math
libc.include.stdio

View File

@ -2,6 +2,7 @@ set(TARGET_PUBLIC_HEADERS
libc.include.ctype
libc.include.fenv
libc.include.errno
libc.include.float
libc.include.inttypes
libc.include.math
libc.include.stdio

View File

@ -2,6 +2,7 @@ set(TARGET_PUBLIC_HEADERS
libc.include.ctype
libc.include.errno
libc.include.fenv
libc.include.float
libc.include.inttypes
libc.include.math
libc.include.stdlib

View File

@ -3,6 +3,7 @@ set(TARGET_PUBLIC_HEADERS
libc.include.errno
# Fenv is currently disabled.
#libc.include.fenv
libc.include.float
libc.include.inttypes
libc.include.math
libc.include.stdlib

View File

@ -2,6 +2,7 @@ set(TARGET_PUBLIC_HEADERS
libc.include.assert
libc.include.ctype
libc.include.string
libc.include.float
libc.include.inttypes
libc.include.math
libc.include.fenv

View File

@ -4,6 +4,7 @@ set(TARGET_PUBLIC_HEADERS
libc.include.errno
libc.include.features
libc.include.fenv
libc.include.float
libc.include.inttypes
libc.include.math
libc.include.pthread

View File

@ -2,6 +2,7 @@ set(TARGET_PUBLIC_HEADERS
libc.include.ctype
libc.include.fenv
libc.include.errno
libc.include.float
libc.include.inttypes
libc.include.math
libc.include.stdlib

View File

@ -6,6 +6,7 @@ set(TARGET_PUBLIC_HEADERS
libc.include.fcntl
libc.include.features
libc.include.fenv
libc.include.float
libc.include.inttypes
libc.include.math
libc.include.pthread

View File

@ -6,6 +6,7 @@ set(TARGET_PUBLIC_HEADERS
libc.include.fcntl
libc.include.features
libc.include.fenv
libc.include.float
libc.include.inttypes
libc.include.math
libc.include.pthread

View File

@ -75,6 +75,14 @@ add_gen_header(
.llvm-libc-types.imaxdiv_t
)
add_gen_header(
float
DEF_FILE float.h.def
GEN_HDR float.h
DEPENDS
.llvm-libc-macros.float_macros
)
add_gen_header(
math
DEF_FILE math.h.def

14
libc/include/float.h.def Normal file
View File

@ -0,0 +1,14 @@
//===-- C standard library header float.h ---------------------------------===//
//
// 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_FLOAT_H
#define LLVM_LIBC_FLOAT_H
#include <llvm-libc-macros/float-macros.h>
#endif // LLVM_LIBC_FLOAT_H

View File

@ -67,6 +67,12 @@ add_macro_header(
file-seek-macros.h
)
add_macro_header(
float_macros
HDR
float-macros.h
)
add_macro_header(
math_macros
HDR

View File

@ -0,0 +1,21 @@
//===-- Definition of macros from float.h ---------------------------------===//
//
// 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_MACROS_FLOAT_MACROS_H
#define __LLVM_LIBC_MACROS_FLOAT_MACROS_H
#undef FLT_MANT_DIG
#define FLT_MANT_DIG __FLT_MANT_DIG__
#undef DBL_MANT_DIG
#define DBL_MANT_DIG __DBL_MANT_DIG__
#undef LDBL_MANT_DIG
#define LDBL_MANT_DIG __LDBL_MANT_DIG__
#endif // __LLVM_LIBC_MACROS_FLOAT_MACROS_H

View File

@ -847,6 +847,15 @@ def StdC : StandardSpec<"stdc"> {
]
>;
HeaderSpec Float = HeaderSpec<
"float.h",
[
Macro<"FLT_MANT_DIG">,
Macro<"DBL_MANT_DIG">,
Macro<"LDBL_MANT_DIG">,
]
>;
NamedType SigAtomicT = NamedType<"sig_atomic_t">;
HeaderSpec Signal = HeaderSpec<
"signal.h",
@ -1149,6 +1158,7 @@ def StdC : StandardSpec<"stdc"> {
CType,
Errno,
Fenv,
Float,
Math,
String,
StdIO,