[libc-commits] [libc] [libc][newhdrgen]sorted function names in yaml (PR #102544)
via libc-commits
libc-commits at lists.llvm.org
Fri Aug 9 09:54:21 PDT 2024
https://github.com/aaryanshukla updated https://github.com/llvm/llvm-project/pull/102544
>From d393ef35bb35e5ab82d863097f571493597326a2 Mon Sep 17 00:00:00 2001
From: Aaryan Shukla <aaryanshukla at google.com>
Date: Thu, 8 Aug 2024 21:57:36 +0000
Subject: [PATCH 1/4] [libc][newhdrgen]sorted function names in yaml
---
libc/newhdrgen/yaml/ctype.yaml | 24 +-
libc/newhdrgen/yaml/fcntl.yaml | 6 +-
libc/newhdrgen/yaml/fenv.yaml | 60 +-
libc/newhdrgen/yaml/gpu/rpc.yaml | 14 +-
libc/newhdrgen/yaml/math.yaml | 2396 +++++++++++++-------------
libc/newhdrgen/yaml/pthread.yaml | 178 +-
libc/newhdrgen/yaml/sched.yaml | 14 +-
libc/newhdrgen/yaml/search.yaml | 20 +-
libc/newhdrgen/yaml/signal.yaml | 40 +-
libc/newhdrgen/yaml/stdbit.yaml | 230 +--
libc/newhdrgen/yaml/stdfix.yaml | 68 +-
libc/newhdrgen/yaml/stdio.yaml | 292 ++--
libc/newhdrgen/yaml/stdlib.yaml | 154 +-
libc/newhdrgen/yaml/string.yaml | 252 +--
libc/newhdrgen/yaml/strings.yaml | 40 +-
libc/newhdrgen/yaml/sys/epoll.yaml | 12 +-
libc/newhdrgen/yaml/sys/mman.yaml | 54 +-
libc/newhdrgen/yaml/sys/socket.yaml | 12 +-
libc/newhdrgen/yaml/sys/statvfs.yaml | 12 +-
libc/newhdrgen/yaml/termios.yaml | 20 +-
libc/newhdrgen/yaml/threads.yaml | 32 +-
libc/newhdrgen/yaml/time.yaml | 12 +-
libc/newhdrgen/yaml/unistd.yaml | 106 +-
23 files changed, 2024 insertions(+), 2024 deletions(-)
diff --git a/libc/newhdrgen/yaml/ctype.yaml b/libc/newhdrgen/yaml/ctype.yaml
index e5b4d11422d98d..f3108a34d43377 100644
--- a/libc/newhdrgen/yaml/ctype.yaml
+++ b/libc/newhdrgen/yaml/ctype.yaml
@@ -16,6 +16,12 @@ functions:
return_type: int
arguments:
- type: int
+ - name: isascii
+ standards:
+ - POSIX
+ return_type: int
+ arguments:
+ - type: int
- name: isblank
standards:
- stdc
@@ -76,28 +82,22 @@ functions:
return_type: int
arguments:
- type: int
- - name: tolower
+ - name: toascii
standards:
- - stdc
+ - GNUExtensions
return_type: int
arguments:
- type: int
- - name: toupper
+ - name: tolower
standards:
- stdc
return_type: int
arguments:
- type: int
- functions:
- - name: isascii
- standards:
- - POSIX
- return_type: int
- arguments:
- - type: int
- - name: toascii
+ - name: toupper
standards:
- - GNUExtensions
+ - stdc
return_type: int
arguments:
- type: int
+ functions: null
diff --git a/libc/newhdrgen/yaml/fcntl.yaml b/libc/newhdrgen/yaml/fcntl.yaml
index a7bd1997b0eac8..71c0df3b0fadaa 100644
--- a/libc/newhdrgen/yaml/fcntl.yaml
+++ b/libc/newhdrgen/yaml/fcntl.yaml
@@ -20,7 +20,7 @@ functions:
arguments:
- type: int
- type: int
- - type: ...
+ - type: '...'
- name: open
standards:
- POSIX
@@ -28,7 +28,7 @@ functions:
arguments:
- type: const char *
- type: int
- - type: ...
+ - type: '...'
- name: openat
standards:
- POSIX
@@ -37,4 +37,4 @@ functions:
- type: int
- type: const char *
- type: int
- - type: ...
+ - type: '...'
diff --git a/libc/newhdrgen/yaml/fenv.yaml b/libc/newhdrgen/yaml/fenv.yaml
index 95eb93c883e3c8..1010efc6402c1b 100644
--- a/libc/newhdrgen/yaml/fenv.yaml
+++ b/libc/newhdrgen/yaml/fenv.yaml
@@ -12,55 +12,61 @@ functions:
return_type: int
arguments:
- type: int
- - name: fetestexcept
+ - name: fedisableexcept
standards:
- - stdc
+ - GNUExtensions
return_type: int
arguments:
- type: int
- - name: fetestexceptflag
+ guard: null
+ - name: feenableexcept
standards:
- - stdc
+ - GNUExtensions
return_type: int
arguments:
- - type: const fexcept_t *
- type: int
- - name: feraiseexcept
+ attributes: []
+ - name: fegetenv
standards:
- stdc
return_type: int
arguments:
- - type: int
- - name: fesetround
+ - type: fenv_t *
+ - name: fegetexcept
+ standards:
+ - GNUExtensions
+ return_type: int
+ arguments: []
+ - name: fegetexceptflag
standards:
- stdc
return_type: int
arguments:
+ - type: fexcept_t *
- type: int
- name: fegetround
standards:
- stdc
return_type: int
arguments: []
- - name: fegetenv
+ - name: feholdexcept
standards:
- stdc
return_type: int
arguments:
- type: fenv_t *
- - name: fesetenv
+ - name: feraiseexcept
standards:
- stdc
return_type: int
arguments:
- - type: const fenv_t *
- - name: fegetexceptflag
+ - type: int
+ - name: fesetenv
standards:
- stdc
return_type: int
arguments:
- - type: fexcept_t *
- - type: int
+ - type: const fenv_t *
- name: fesetexcept
standards:
- stdc
@@ -74,34 +80,28 @@ functions:
arguments:
- type: const fexcept_t *
- type: int
- - name: feholdexcept
+ - name: fesetround
standards:
- stdc
return_type: int
arguments:
- - type: fenv_t *
- - name: feupdateenv
+ - type: int
+ - name: fetestexcept
standards:
- stdc
return_type: int
- arguments:
- - type: const fenv_t *
- - name: fedisableexcept
- standards:
- - GNUExtensions
- return_type: int
arguments:
- type: int
- guard: null
- - name: feenableexcept
+ - name: fetestexceptflag
standards:
- - GNUExtensions
+ - stdc
return_type: int
arguments:
+ - type: const fexcept_t *
- type: int
- attributes: []
- - name: fegetexcept
+ - name: feupdateenv
standards:
- - GNUExtensions
+ - stdc
return_type: int
- arguments: []
+ arguments:
+ - type: const fenv_t *
diff --git a/libc/newhdrgen/yaml/gpu/rpc.yaml b/libc/newhdrgen/yaml/gpu/rpc.yaml
index 57473f72c38271..61856bc0c7d692 100644
--- a/libc/newhdrgen/yaml/gpu/rpc.yaml
+++ b/libc/newhdrgen/yaml/gpu/rpc.yaml
@@ -4,20 +4,20 @@ types: []
enums: []
objects: []
functions:
- - name: rpc_host_call
+ - name: rpc_fprintf
standards:
- GPUExtensions
- return_type: void
+ return_type: int
arguments:
- - type: void *
+ - type: ::FILE *__restrict
+ - type: const char *__restrict
- type: void *
- type: size_t
- - name: rpc_fprintf
+ - name: rpc_host_call
standards:
- GPUExtensions
- return_type: int
+ return_type: void
arguments:
- - type: ::FILE *__restrict
- - type: const char *__restrict
+ - type: void *
- type: void *
- type: size_t
diff --git a/libc/newhdrgen/yaml/math.yaml b/libc/newhdrgen/yaml/math.yaml
index 2f1203e581f9a7..aaeb492d0ca556 100644
--- a/libc/newhdrgen/yaml/math.yaml
+++ b/libc/newhdrgen/yaml/math.yaml
@@ -7,794 +7,873 @@ types:
enums: []
objects: []
functions:
- - name: cbrt
+ - name: acosf
standards:
- stdc
- return_type: double
+ return_type: float
arguments:
- - type: double
- - name: cbrtf
+ - type: float
+ - name: acoshf
standards:
- stdc
return_type: float
arguments:
- type: float
- - name: copysign
+ - name: asin
standards:
- stdc
return_type: double
arguments:
- type: double
- - type: double
- - name: copysignf
+ - name: asinf
standards:
- stdc
return_type: float
arguments:
- type: float
- - type: float
- - name: copysignl
+ - name: asinhf
standards:
- stdc
- return_type: long double
+ return_type: float
arguments:
- - type: long double
- - type: long double
- - name: ceil
+ - type: float
+ - name: atan2f
standards:
- stdc
- return_type: double
+ return_type: float
arguments:
- - type: double
- - name: ceilf
+ - type: float
+ - type: float
+ - name: atanf
standards:
- stdc
return_type: float
arguments:
- type: float
- - name: ceill
+ - name: atanhf
standards:
- stdc
- return_type: long double
+ return_type: float
arguments:
- - type: long double
- - name: fabs
+ - type: float
+ - name: canonicalize
standards:
- stdc
- return_type: double
+ return_type: int
arguments:
- type: double
- - name: fabsf
+ - type: double
+ - name: canonicalizef
standards:
- stdc
- return_type: float
+ return_type: int
arguments:
- type: float
- - name: fabsl
- standards:
- - stdc
- return_type: long double
- arguments:
- - type: long double
- - name: fdim
+ - type: float
+ - name: canonicalizef128
standards:
- stdc
- return_type: double
+ return_type: int
arguments:
- - type: double
- - type: double
- - name: fdimf
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: canonicalizef16
standards:
- stdc
- return_type: float
+ return_type: int
arguments:
- - type: float
- - type: float
- - name: fdiml
+ - type: _Float16
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: canonicalizel
standards:
- stdc
- return_type: long double
+ return_type: int
arguments:
- type: long double
- type: long double
- - name: floor
+ - name: cbrt
standards:
- stdc
return_type: double
arguments:
- type: double
- - name: floorf
+ - name: cbrtf
standards:
- stdc
return_type: float
arguments:
- type: float
- - name: floorl
- standards:
- - stdc
- return_type: long double
- arguments:
- - type: long double
- - name: fmin
+ - name: ceil
standards:
- stdc
return_type: double
arguments:
- type: double
- - type: double
- - name: fminf
+ - name: ceilf
standards:
- stdc
return_type: float
arguments:
- type: float
- - type: float
- - name: fminl
- standards:
- - stdc
- return_type: long double
- arguments:
- - type: long double
- - type: long double
- - name: fmax
+ - name: ceilf128
standards:
- stdc
- return_type: double
+ return_type: float128
arguments:
- - type: double
- - type: double
- - name: fmaxf
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: ceilf16
standards:
- stdc
- return_type: float
+ return_type: _Float16
arguments:
- - type: float
- - type: float
- - name: fmaxl
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: ceill
standards:
- stdc
return_type: long double
arguments:
- type: long double
- - type: long double
- - name: fmaximum
+ - name: copysign
standards:
- stdc
return_type: double
arguments:
- type: double
- type: double
- - name: fmaximumf
+ - name: copysignf
standards:
- stdc
return_type: float
arguments:
- type: float
- type: float
- - name: fmaximuml
- standards:
- - stdc
- return_type: long double
- arguments:
- - type: long double
- - type: long double
- - name: fmaximum_num
+ - name: copysignf128
standards:
- stdc
- return_type: double
+ return_type: float128
arguments:
- - type: double
- - type: double
- - name: fmaximum_numf
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: copysignf16
standards:
- stdc
- return_type: float
+ return_type: _Float16
arguments:
- - type: float
- - type: float
- - name: fmaximum_numl
+ - type: _Float16
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: copysignl
standards:
- stdc
return_type: long double
arguments:
- type: long double
- type: long double
- - name: fmaximum_mag
+ - name: cos
standards:
- stdc
return_type: double
arguments:
- type: double
- - type: double
- - name: fmaximum_magf
+ - name: cosf
standards:
- stdc
return_type: float
arguments:
- type: float
- - type: float
- - name: fmaximum_magl
- standards:
- - stdc
- return_type: long double
- arguments:
- - type: long double
- - type: long double
- - name: fmaximum_mag_num
- standards:
- - stdc
- return_type: double
- arguments:
- - type: double
- - type: double
- - name: fmaximum_mag_numf
+ - name: coshf
standards:
- stdc
return_type: float
arguments:
- type: float
- - type: float
- - name: fmaximum_mag_numl
+ - name: ddivl
standards:
- stdc
return_type: long double
arguments:
- type: long double
- type: long double
- - name: fminimum
+ - name: dmulf128
+ standards:
+ - llvm_libc_ext
+ return_type: double
+ arguments:
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: dmull
standards:
- stdc
return_type: double
arguments:
- - type: double
- - type: double
- - name: fminimumf
+ - type: long double
+ - type: long double
+ - name: erff
standards:
- stdc
return_type: float
arguments:
- type: float
- - type: float
- - name: fminimuml
+ - name: exp
standards:
- stdc
- return_type: long double
+ return_type: double
arguments:
- - type: long double
- - type: long double
- - name: fminimum_num
+ - type: double
+ - name: exp10
standards:
- stdc
return_type: double
arguments:
- type: double
- - type: double
- - name: fminimum_numf
+ - name: exp10f
standards:
- stdc
return_type: float
arguments:
- type: float
- - type: float
- - name: fminimum_mag
+ - name: exp2
standards:
- stdc
return_type: double
arguments:
- type: double
- - type: double
- - name: fminimum_magf
+ - name: exp2f
standards:
- stdc
return_type: float
arguments:
- type: float
- - type: float
- - name: fminimum_magl
- standards:
- - stdc
- return_type: long double
- arguments:
- - type: long double
- - type: long double
- - name: fminimum_mag_num
- standards:
- - stdc
- return_type: double
- arguments:
- - type: double
- - type: double
- - name: fminimum_mag_numf
+ - name: exp2m1f
standards:
- stdc
return_type: float
arguments:
- type: float
- - type: float
- - name: fminimum_mag_numl
+ - name: expf
standards:
- stdc
- return_type: long double
+ return_type: float
arguments:
- - type: long double
- - type: long double
- - name: fma
+ - type: float
+ - name: expm1
standards:
- stdc
return_type: double
arguments:
- type: double
- - type: double
- - type: double
- - name: fmaf
+ - name: expm1f
standards:
- stdc
return_type: float
arguments:
- type: float
- - type: float
- - type: float
- - name: fmod
+ - name: f16add
standards:
- - stdc
- return_type: double
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- type: double
- type: double
- - name: fmodf
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: f16addf
standards:
- - stdc
- return_type: float
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- type: float
- type: float
- - name: fmodl
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: f16addf128
standards:
- stdc
- return_type: long double
+ return_type: _Float16
+ arguments:
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
+ - name: f16addl
+ standards:
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- type: long double
- type: long double
- - name: fmul
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: f16div
standards:
- - stdc
- return_type: float
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- type: double
- type: double
- - name: fmull
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: f16divf
standards:
- - stdc
- return_type: float
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- - type: long double
- - type: long double
- - name: dmull
+ - type: float
+ - type: float
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: f16divf128
standards:
- stdc
- return_type: double
+ return_type: _Float16
+ arguments:
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
+ - name: f16divl
+ standards:
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- type: long double
- type: long double
- - name: frexp
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: f16fma
standards:
- - stdc
- return_type: double
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- type: double
- - type: int *
- - name: frexpf
+ - type: double
+ - type: double
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: f16fmaf
standards:
- - stdc
- return_type: float
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- type: float
- - type: int *
- - name: frexpl
+ - type: float
+ - type: float
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: f16fmaf128
standards:
- stdc
- return_type: long double
+ return_type: _Float16
+ arguments:
+ - type: float128
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
+ - name: f16fmal
+ standards:
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- type: long double
- - type: int *
- - name: fromfp
+ - type: long double
+ - type: long double
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: f16mul
standards:
- - stdc
- return_type: double
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- type: double
- - type: int
- - type: unsigned int
- - name: fromfpf
+ - type: double
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: f16mulf
standards:
- - stdc
- return_type: float
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- type: float
- - type: int
- - type: unsigned int
- - name: fromfpl
+ - type: float
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: f16mulf128
standards:
- stdc
- return_type: long double
+ return_type: _Float16
+ arguments:
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
+ - name: f16mull
+ standards:
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- type: long double
- - type: int
- - type: unsigned int
- - name: fromfpx
+ - type: long double
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: f16sqrt
standards:
- - stdc
- return_type: double
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- type: double
- - type: int
- - type: unsigned int
- - name: fromfpxf
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: f16sqrtf
standards:
- - stdc
- return_type: float
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- type: float
- - type: int
- - type: unsigned int
- - name: fromfpxl
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: f16sqrtf128
standards:
- - stdc
- return_type: long double
+ - llvm_libc_ext
+ return_type: _Float16
+ arguments:
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
+ - name: f16sqrtl
+ standards:
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- type: long double
- - type: int
- - type: unsigned int
- - name: ufromfp
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: f16sub
standards:
- - stdc
- return_type: double
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- type: double
- - type: int
- - type: unsigned int
- - name: ufromfpf
+ - type: double
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: f16subf
standards:
- - stdc
- return_type: float
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- type: float
- - type: int
- - type: unsigned int
- - name: ufromfpl
+ - type: float
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: f16subf128
standards:
- stdc
- return_type: long double
+ return_type: _Float16
+ arguments:
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
+ - name: f16subl
+ standards:
+ - llvm_libc_ext
+ return_type: _Float16
arguments:
- type: long double
- - type: int
- - type: unsigned int
- - name: ufromfpx
+ - type: long double
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: fabs
standards:
- stdc
return_type: double
arguments:
- type: double
- - type: int
- - type: unsigned int
- - name: ufromfpxf
+ - name: fabsf
standards:
- stdc
return_type: float
arguments:
- type: float
- - type: int
- - type: unsigned int
- - name: ufromfpxl
+ - name: fabsf128
+ standards:
+ - stdc
+ return_type: float128
+ arguments:
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: fabsf16
+ standards:
+ - stdc
+ return_type: _Float16
+ arguments:
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: fabsl
standards:
- stdc
return_type: long double
arguments:
- type: long double
- - type: int
- - type: unsigned int
- - name: hypot
+ - name: fdim
standards:
- stdc
return_type: double
arguments:
- type: double
- type: double
- - name: hypotf
+ - name: fdimf
standards:
- stdc
return_type: float
arguments:
- type: float
- type: float
- - name: ilogb
+ - name: fdimf128
standards:
- stdc
- return_type: int
+ return_type: float128
arguments:
- - type: double
- - name: ilogbf
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: fdimf16
standards:
- stdc
- return_type: int
+ return_type: _Float16
arguments:
- - type: float
- - name: ilogbl
+ - type: _Float16
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: fdiml
standards:
- stdc
- return_type: int
+ return_type: long double
arguments:
- type: long double
- - name: isnan
+ - type: long double
+ - name: fdiv
standards:
- - BSDExtensions
- return_type: int
+ - stdc
+ return_type: float
arguments:
- type: double
- - name: isnanf
+ - type: double
+ - name: fdivf128
standards:
- - BSDExtensions
- return_type: int
+ - llvm_libc_ext
+ return_type: float
arguments:
- - type: float
- - name: isnanl
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: fdivl
standards:
- - BSDExtensions
- return_type: int
+ - stdc
+ return_type: float
arguments:
- type: long double
- - name: llogb
+ - type: long double
+ - name: ffma
standards:
- stdc
- return_type: long
+ return_type: float
arguments:
- type: double
- - name: llogbf
+ - type: double
+ - type: double
+ - name: ffmaf128
standards:
- - stdc
- return_type: long
+ - llvm_libc_ext
+ return_type: float
arguments:
- - type: float
- - name: llogbl
+ - type: float128
+ - type: float128
+ - type: float128
+ guards: LIBC_TYPES_HAS_FLOAT128
+ - name: ffmal
standards:
- stdc
- return_type: long
+ return_type: float
arguments:
- type: long double
- - name: ldexp
+ - type: long double
+ - type: long double
+ - name: floor
standards:
- stdc
return_type: double
arguments:
- type: double
- - type: int
- - name: ldexpf
+ - name: floorf
standards:
- stdc
return_type: float
arguments:
- type: float
- - type: int
- - name: ldexpl
+ - name: floorf128
+ standards:
+ - stdc
+ return_type: float128
+ arguments:
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: floorf16
+ standards:
+ - stdc
+ return_type: _Float16
+ arguments:
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: floorl
standards:
- stdc
return_type: long double
arguments:
- type: long double
- - type: int
- - name: log10
+ - name: fma
standards:
- stdc
return_type: double
arguments:
- type: double
- - name: log10f
+ - type: double
+ - type: double
+ - name: fmaf
standards:
- stdc
return_type: float
arguments:
- type: float
- - name: log1p
+ - type: float
+ - type: float
+ - name: fmax
standards:
- stdc
return_type: double
arguments:
- type: double
- - name: log1pf
+ - type: double
+ - name: fmaxf
standards:
- stdc
return_type: float
arguments:
- type: float
- - name: log2
+ - type: float
+ - name: fmaxf128
+ standards:
+ - stdc
+ return_type: float128
+ arguments:
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: fmaxf16
+ standards:
+ - stdc
+ return_type: _Float16
+ arguments:
+ - type: _Float16
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: fmaximum
standards:
- stdc
return_type: double
arguments:
- type: double
- - name: log2f
+ - type: double
+ - name: fmaximum_mag
standards:
- stdc
- return_type: float
+ return_type: double
arguments:
- - type: float
- - name: log
+ - type: double
+ - type: double
+ - name: fmaximum_mag_num
standards:
- stdc
return_type: double
arguments:
- type: double
- - name: logf
+ - type: double
+ - name: fmaximum_mag_numf
standards:
- stdc
return_type: float
arguments:
- type: float
- - name: logb
+ - type: float
+ - name: fmaximum_mag_numf128
standards:
- stdc
- return_type: double
+ return_type: float128
arguments:
- - type: double
- - name: logbf
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: fmaximum_mag_numf16
standards:
- stdc
- return_type: float
+ return_type: _Float16
arguments:
- - type: float
- - name: logbl
+ - type: _Float16
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: fmaximum_mag_numl
standards:
- stdc
return_type: long double
arguments:
- type: long double
- - name: modf
+ - type: long double
+ - name: fmaximum_magf
standards:
- stdc
- return_type: double
+ return_type: float
arguments:
- - type: double
- - type: double *
- - name: modff
+ - type: float
+ - type: float
+ - name: fmaximum_magf128
standards:
- stdc
- return_type: float
+ return_type: float128
arguments:
- - type: float
- - type: float *
- - name: modfl
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: fmaximum_magf16
+ standards:
+ - stdc
+ return_type: _Float16
+ arguments:
+ - type: _Float16
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: fmaximum_magl
standards:
- stdc
return_type: long double
arguments:
- type: long double
- - type: long double *
- - name: cos
+ - type: long double
+ - name: fmaximum_num
standards:
- stdc
return_type: double
arguments:
- type: double
- - name: cosf
+ - type: double
+ - name: fmaximum_numf
standards:
- stdc
return_type: float
arguments:
- type: float
- - name: sin
+ - type: float
+ - name: fmaximum_numf128
standards:
- stdc
- return_type: double
- arguments:
- - type: double
- - name: sincosf
- standards:
- - gnu
- return_type: void
+ return_type: float128
arguments:
- - type: float
- - type: float *
- - type: float *
- - name: sinf
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: fmaximum_numf16
standards:
- stdc
- return_type: float
+ return_type: _Float16
arguments:
- - type: float
- - name: tan
+ - type: _Float16
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: fmaximum_numl
standards:
- stdc
- return_type: double
+ return_type: long double
arguments:
- - type: double
- - name: tanf
+ - type: long double
+ - type: long double
+ - name: fmaximumf
standards:
- stdc
return_type: float
arguments:
- type: float
- - name: erff
+ - type: float
+ - name: fmaximumf128
standards:
- stdc
- return_type: float
+ return_type: float128
arguments:
- - type: float
- - name: exp
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: fmaximumf16
standards:
- stdc
- return_type: double
+ return_type: _Float16
arguments:
- - type: double
- - name: expf
+ - type: _Float16
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: fmaximuml
standards:
- stdc
- return_type: float
+ return_type: long double
arguments:
- - type: float
- - name: exp2
+ - type: long double
+ - type: long double
+ - name: fmaxl
standards:
- stdc
- return_type: double
+ return_type: long double
arguments:
- - type: double
- - name: exp2f
+ - type: long double
+ - type: long double
+ - name: fmin
standards:
- stdc
- return_type: float
+ return_type: double
arguments:
- - type: float
- - name: exp2m1f
+ - type: double
+ - type: double
+ - name: fminf
standards:
- stdc
return_type: float
arguments:
- type: float
- - name: expm1
+ - type: float
+ - name: fminf128
standards:
- stdc
- return_type: double
+ return_type: float128
arguments:
- - type: double
- - name: expm1f
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: fminf16
standards:
- stdc
- return_type: float
+ return_type: _Float16
arguments:
- - type: float
- - name: exp10
+ - type: _Float16
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: fminimum
standards:
- stdc
return_type: double
arguments:
- type: double
- - name: exp10f
+ - type: double
+ - name: fminimum_mag
standards:
- stdc
- return_type: float
+ return_type: double
arguments:
- - type: float
- - name: remainder
+ - type: double
+ - type: double
+ - name: fminimum_mag_num
standards:
- stdc
return_type: double
arguments:
- type: double
- type: double
- - name: remainderf
+ - name: fminimum_mag_numf
standards:
- stdc
return_type: float
arguments:
- type: float
- type: float
- - name: remainderl
- standards:
- - stdc
- return_type: long double
- arguments:
- - type: long double
- - type: long double
- - name: remainderf128
+ - name: fminimum_mag_numf128
standards:
- stdc
return_type: float128
@@ -802,885 +881,855 @@ functions:
- type: float128
- type: float128
guard: LIBC_TYPES_HAS_FLOAT128
- - name: remquo
- standards:
- - stdc
- return_type: double
- arguments:
- - type: double
- - type: double
- - type: int *
- - name: remquof
+ - name: fminimum_mag_numf16
standards:
- stdc
- return_type: float
+ return_type: _Float16
arguments:
- - type: float
- - type: float
- - type: int *
- - name: remquol
+ - type: _Float16
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: fminimum_mag_numl
standards:
- stdc
return_type: long double
arguments:
- type: long double
- type: long double
- - type: int *
- - name: round
+ - name: fminimum_magf
standards:
- stdc
- return_type: double
+ return_type: float
arguments:
- - type: double
- - name: roundf
+ - type: float
+ - type: float
+ - name: fminimum_magf128
standards:
- stdc
- return_type: float
+ return_type: float128
arguments:
- - type: float
- - name: roundl
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: fminimum_magf16
+ standards:
+ - stdc
+ return_type: _Float16
+ arguments:
+ - type: _Float16
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: fminimum_magl
standards:
- stdc
return_type: long double
arguments:
- type: long double
- - name: roundeven
+ - type: long double
+ - name: fminimum_num
standards:
- stdc
return_type: double
arguments:
- type: double
- - name: roundevenf
+ - type: double
+ - name: fminimum_numf
standards:
- stdc
return_type: float
arguments:
- type: float
- - name: roundevenl
+ - type: float
+ - name: fminimum_numf128
standards:
- stdc
- return_type: long double
+ return_type: float128
arguments:
- - type: long double
- - name: lround
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: fminimum_numf16
standards:
- stdc
- return_type: long
+ return_type: _Float16
arguments:
- - type: double
- - name: lroundf
+ - type: _Float16
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: fminimumf
standards:
- stdc
- return_type: long
+ return_type: float
arguments:
- type: float
- - name: lroundl
+ - type: float
+ - name: fminimumf128
standards:
- stdc
- return_type: long
+ return_type: float128
arguments:
- - type: long double
- - name: llround
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: fminimumf16
standards:
- stdc
- return_type: long long
+ return_type: _Float16
arguments:
- - type: double
- - name: llroundf
+ - type: _Float16
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: fminimuml
standards:
- stdc
- return_type: long long
+ return_type: long double
arguments:
- - type: float
- - name: llroundl
+ - type: long double
+ - type: long double
+ - name: fminl
standards:
- stdc
- return_type: long long
+ return_type: long double
arguments:
- type: long double
- - name: rint
+ - type: long double
+ - name: fmod
standards:
- stdc
return_type: double
arguments:
- type: double
- - name: rintf
+ - type: double
+ - name: fmodf
standards:
- stdc
return_type: float
arguments:
- type: float
- - name: rintl
- standards:
- - stdc
- return_type: long double
- arguments:
- - type: long double
- - name: lrint
+ - type: float
+ - name: fmodf128
standards:
- stdc
- return_type: long
+ return_type: float128
arguments:
- - type: double
- - name: lrintf
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: fmodf16
standards:
- stdc
- return_type: long
+ return_type: _Float16
arguments:
- - type: float
- - name: lrintl
+ - type: _Float16
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: fmodl
standards:
- stdc
- return_type: long
+ return_type: long double
arguments:
- type: long double
- - name: llrint
+ - type: long double
+ - name: fmul
standards:
- stdc
- return_type: long long
+ return_type: float
arguments:
- type: double
- - name: llrintf
+ - type: double
+ - name: fmulf128
standards:
- - stdc
- return_type: long long
+ - llvm_libc_ext
+ return_type: float
arguments:
- - type: float
- - name: llrintl
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: fmull
standards:
- stdc
- return_type: long long
+ return_type: float
arguments:
- type: long double
- - name: sqrt
+ - type: long double
+ - name: frexp
standards:
- stdc
return_type: double
arguments:
- type: double
- - name: sqrtf
+ - type: int *
+ - name: frexpf
standards:
- stdc
return_type: float
arguments:
- type: float
- - name: sqrtl
+ - type: int *
+ - name: frexpf128
+ standards:
+ - stdc
+ return_type: float128
+ arguments:
+ - type: float128
+ - type: int *
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: frexpf16
+ standards:
+ - stdc
+ return_type: _Float16
+ arguments:
+ - type: _Float16
+ - type: int *
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: frexpl
standards:
- stdc
return_type: long double
arguments:
- type: long double
- - name: trunc
+ - type: int *
+ - name: fromfp
standards:
- stdc
return_type: double
arguments:
- type: double
- - name: truncf
+ - type: int
+ - type: unsigned int
+ - name: fromfpf
standards:
- stdc
return_type: float
arguments:
- type: float
- - name: truncl
+ - type: int
+ - type: unsigned int
+ - name: fromfpf128
+ standards:
+ - stdc
+ return_type: float128
+ arguments:
+ - type: float128
+ - type: int
+ - type: unsigned int
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: fromfpf16
+ standards:
+ - stdc
+ return_type: _Float16
+ arguments:
+ - type: _Float16
+ - type: int
+ - type: unsigned int
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: fromfpl
standards:
- stdc
return_type: long double
arguments:
- type: long double
- - name: nearbyint
+ - type: int
+ - type: unsigned int
+ - name: fromfpx
standards:
- stdc
return_type: double
arguments:
- type: double
- - name: nearbyintf
+ - type: int
+ - type: unsigned int
+ - name: fromfpxf
standards:
- stdc
return_type: float
arguments:
- type: float
- - name: nearbyintl
+ - type: int
+ - type: unsigned int
+ - name: fromfpxf128
standards:
- stdc
- return_type: long double
+ return_type: float128
arguments:
- - type: long double
- - name: nextafterf
+ - type: float128
+ - type: int
+ - type: unsigned int
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: fromfpxf16
standards:
- stdc
- return_type: float
+ return_type: _Float16
arguments:
- - type: float
- - type: float
- - name: nextafter
+ - type: _Float16
+ - type: int
+ - type: unsigned int
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: fromfpxl
standards:
- stdc
- return_type: double
+ return_type: long double
+ arguments:
+ - type: long double
+ - type: int
+ - type: unsigned int
+ - name: fsub
+ standards:
+ - stdc
+ return_type: float
arguments:
- type: double
- type: double
- - name: nextafterl
+ - name: fsubf128
standards:
- - stdc
- return_type: long double
+ - llvm_libc_ext
+ return_type: float
arguments:
- - type: long double
- - type: long double
- - name: nexttowardf
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: fsubl
standards:
- stdc
return_type: float
arguments:
- - type: float
- type: long double
- - name: nexttoward
+ - type: long double
+ - name: getpayload
standards:
- stdc
return_type: double
arguments:
- - type: double
- - type: long double
- - name: nexttowardl
+ - type: double *
+ - name: getpayloadf
standards:
- stdc
- return_type: long double
+ return_type: float
arguments:
- - type: long double
- - type: long double
- - name: nextdown
+ - type: float *
+ - name: getpayloadf128
standards:
- stdc
- return_type: double
+ return_type: float128
arguments:
- - type: double
- - name: nextdownf
+ - type: float128 *
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: getpayloadf16
standards:
- stdc
- return_type: float
+ return_type: _Float16
arguments:
- - type: float
- - name: nextdownl
+ - type: _Float16 *
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: getpayloadl
standards:
- stdc
return_type: long double
arguments:
- - type: long double
- - name: nextup
+ - type: long double *
+ - name: hypot
standards:
- stdc
return_type: double
arguments:
- type: double
- - name: nextupf
+ - type: double
+ - name: hypotf
standards:
- stdc
return_type: float
arguments:
- type: float
- - name: nextupl
+ - type: float
+ - name: ilogb
standards:
- stdc
- return_type: long double
+ return_type: int
arguments:
- - type: long double
- - name: powf
+ - type: double
+ - name: ilogbf
standards:
- stdc
- return_type: float
+ return_type: int
arguments:
- type: float
- - type: float
- - name: pow
+ - name: ilogbf128
standards:
- stdc
- return_type: double
- arguments:
- - type: double
- - type: double
- - name: powi
- standards: llvm_libc_ext
- return_type: double
- arguments:
- - type: double
- - type: int
- - name: powif
- standards: llvm_libc_ext
- return_type: float
+ return_type: int
arguments:
- - type: float
- - type: int
- - name: coshf
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: ilogbf16
standards:
- stdc
- return_type: float
+ return_type: int
arguments:
- - type: float
- - name: sinhf
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: ilogbl
standards:
- stdc
- return_type: float
+ return_type: int
arguments:
- - type: float
- - name: tanhf
+ - type: long double
+ - name: isnan
standards:
- - stdc
- return_type: float
+ - BSDExtensions
+ return_type: int
arguments:
- - type: float
- - name: acosf
+ - type: double
+ - name: isnanf
standards:
- - stdc
- return_type: float
+ - BSDExtensions
+ return_type: int
arguments:
- type: float
- - name: asinf
+ - name: isnanl
standards:
- - stdc
- return_type: float
+ - BSDExtensions
+ return_type: int
arguments:
- - type: float
- - name: asin
+ - type: long double
+ - name: ldexp
standards:
- stdc
return_type: double
arguments:
- type: double
- - name: atanf
+ - type: int
+ - name: ldexpf
standards:
- stdc
return_type: float
arguments:
- type: float
- - name: atan2f
+ - type: int
+ - name: ldexpf128
standards:
- stdc
- return_type: float
+ return_type: float128
arguments:
- - type: float
- - type: float
- - name: acoshf
+ - type: float128
+ - type: int
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: ldexpf16
standards:
- stdc
- return_type: float
+ return_type: _Float16
arguments:
- - type: float
- - name: asinhf
+ - type: _Float16
+ - type: int
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: ldexpl
standards:
- stdc
- return_type: float
+ return_type: long double
arguments:
- - type: float
- - name: atanhf
+ - type: long double
+ - type: int
+ - name: lgamma
standards:
- stdc
- return_type: float
+ return_type: double
arguments:
- - type: float
- - name: scalbn
+ - type: double
+ - name: lgamma_r
standards:
- - stdc
+ - gnu
return_type: double
arguments:
- type: double
- - type: int
- - name: scalbnf
+ - type: int *
+ - name: lgammaf
standards:
- stdc
return_type: float
arguments:
- type: float
- - type: int
- - name: scalbnl
- standards:
- - stdc
- return_type: long double
- arguments:
- - type: long double
- - type: int
- - name: nanf
+ - name: lgammaf_r
standards:
- - stdc
+ - gnu
return_type: float
arguments:
- - type: const char *
- - name: nan
+ - type: float
+ - type: int *
+ - name: lgammal
standards:
- stdc
- return_type: double
+ return_type: long double
arguments:
- - type: const char *
- - name: nanl
+ - type: long double
+ - name: lgammal_r
standards:
- - stdc
+ - gnu
return_type: long double
arguments:
- - type: const char *
- - name: canonicalize
+ - type: long double
+ - type: int *
+ - name: llogb
standards:
- stdc
- return_type: int
+ return_type: long
arguments:
- type: double
- - type: double
- - name: canonicalizef
+ - name: llogbf
standards:
- stdc
- return_type: int
+ return_type: long
arguments:
- type: float
- - type: float
- - name: canonicalizel
- standards:
- - stdc
- return_type: int
- arguments:
- - type: long double
- - type: long double
- - name: canonicalizef128
+ - name: llogbf128
standards:
- stdc
- return_type: int
+ return_type: long
arguments:
- type: float128
- - type: float128
guard: LIBC_TYPES_HAS_FLOAT128
- - name: canonicalizef16
+ - name: llogbf16
standards:
- stdc
- return_type: int
+ return_type: long
arguments:
- type: _Float16
- - type: _Float16
guard: LIBC_TYPES_HAS_FLOAT16
- - name: ceilf16
+ - name: llogbl
standards:
- stdc
- return_type: _Float16
+ return_type: long
arguments:
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: copysignf16
+ - type: long double
+ - name: llrint
standards:
- stdc
- return_type: _Float16
- arguments:
- - type: _Float16
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16add
- standards:
- - llvm_libc_ext
- return_type: _Float16
+ return_type: long long
arguments:
- type: double
- - type: double
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16addf
+ - name: llrintf
standards:
- - llvm_libc_ext
- return_type: _Float16
+ - stdc
+ return_type: long long
arguments:
- type: float
- - type: float
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16addl
- standards:
- - llvm_libc_ext
- return_type: _Float16
- arguments:
- - type: long double
- - type: long double
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16div
+ - name: llrintf128
standards:
- - llvm_libc_ext
- return_type: _Float16
+ - stdc
+ return_type: long long
arguments:
- - type: double
- - type: double
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16divf
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: llrintf16
standards:
- - llvm_libc_ext
- return_type: _Float16
+ - stdc
+ return_type: long long
arguments:
- - type: float
- - type: float
+ - type: _Float16
guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16divl
+ - name: llrintl
standards:
- - llvm_libc_ext
- return_type: _Float16
+ - stdc
+ return_type: long long
arguments:
- type: long double
- - type: long double
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16fma
+ - name: llround
standards:
- - llvm_libc_ext
- return_type: _Float16
+ - stdc
+ return_type: long long
arguments:
- type: double
- - type: double
- - type: double
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16fmaf
+ - name: llroundf
standards:
- - llvm_libc_ext
- return_type: _Float16
+ - stdc
+ return_type: long long
arguments:
- type: float
- - type: float
- - type: float
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16fmal
- standards:
- - llvm_libc_ext
- return_type: _Float16
- arguments:
- - type: long double
- - type: long double
- - type: long double
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16mul
+ - name: llroundf128
standards:
- - llvm_libc_ext
- return_type: _Float16
+ - stdc
+ return_type: long long
arguments:
- - type: double
- - type: double
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16mulf
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: llroundf16
standards:
- - llvm_libc_ext
- return_type: _Float16
+ - stdc
+ return_type: long long
arguments:
- - type: float
- - type: float
+ - type: _Float16
guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16mull
+ - name: llroundl
standards:
- - llvm_libc_ext
- return_type: _Float16
+ - stdc
+ return_type: long long
arguments:
- type: long double
- - type: long double
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16sqrt
+ - name: log
standards:
- - llvm_libc_ext
- return_type: _Float16
+ - stdc
+ return_type: double
arguments:
- type: double
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16sqrtf
+ - name: log10
standards:
- - llvm_libc_ext
- return_type: _Float16
+ - stdc
+ return_type: double
arguments:
- - type: float
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16sqrtl
+ - type: double
+ - name: log10f
standards:
- - llvm_libc_ext
- return_type: _Float16
+ - stdc
+ return_type: float
arguments:
- - type: long double
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16sub
+ - type: float
+ - name: log1p
standards:
- - llvm_libc_ext
- return_type: _Float16
+ - stdc
+ return_type: double
arguments:
- type: double
- - type: double
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16subf
+ - name: log1pf
standards:
- - llvm_libc_ext
- return_type: _Float16
+ - stdc
+ return_type: float
arguments:
- type: float
- - type: float
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16subl
+ - name: log2
standards:
- - llvm_libc_ext
- return_type: _Float16
+ - stdc
+ return_type: double
arguments:
- - type: long double
- - type: long double
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: fabsf16
+ - type: double
+ - name: log2f
standards:
- stdc
- return_type: _Float16
+ return_type: float
arguments:
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: fdimf16
+ - type: float
+ - name: logb
standards:
- stdc
- return_type: _Float16
+ return_type: double
arguments:
- - type: _Float16
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: floorf16
+ - type: double
+ - name: logbf
standards:
- stdc
- return_type: _Float16
+ return_type: float
arguments:
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: fmaxf16
+ - type: float
+ - name: logbf128
standards:
- stdc
- return_type: _Float16
+ return_type: float128
arguments:
- - type: _Float16
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: fmaximum_mag_numf16
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: logbf16
standards:
- stdc
return_type: _Float16
arguments:
- type: _Float16
- - type: _Float16
guard: LIBC_TYPES_HAS_FLOAT16
- - name: fmaximum_magf16
+ - name: logbl
standards:
- stdc
- return_type: _Float16
+ return_type: long double
arguments:
- - type: _Float16
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: fmaximum_numf16
+ - type: long double
+ - name: logf
standards:
- stdc
- return_type: _Float16
+ return_type: float
arguments:
- - type: _Float16
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: fmaximumf16
+ - type: float
+ - name: lrint
standards:
- stdc
- return_type: _Float16
+ return_type: long
arguments:
- - type: _Float16
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: fminf16
+ - type: double
+ - name: lrintf
standards:
- stdc
- return_type: _Float16
+ return_type: long
arguments:
- - type: _Float16
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: fminimum_mag_numf16
+ - type: float
+ - name: lrintf128
standards:
- stdc
- return_type: _Float16
+ return_type: long
arguments:
- - type: _Float16
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: fminimum_magf16
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: lrintf16
standards:
- stdc
- return_type: _Float16
+ return_type: long
arguments:
- type: _Float16
- - type: _Float16
guard: LIBC_TYPES_HAS_FLOAT16
- - name: fminimum_numf16
+ - name: lrintl
standards:
- stdc
- return_type: _Float16
+ return_type: long
arguments:
- - type: _Float16
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: fminimumf16
+ - type: long double
+ - name: lround
standards:
- stdc
- return_type: _Float16
+ return_type: long
arguments:
- - type: _Float16
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: fmodf16
+ - type: double
+ - name: lroundf
standards:
- stdc
- return_type: _Float16
+ return_type: long
arguments:
- - type: _Float16
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: frexpf16
+ - type: float
+ - name: lroundf128
standards:
- stdc
- return_type: _Float16
+ return_type: long
arguments:
- - type: _Float16
- - type: int *
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: fromfpf16
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: lroundf16
standards:
- stdc
- return_type: _Float16
+ return_type: long
arguments:
- type: _Float16
- - type: int
- - type: unsigned int
guard: LIBC_TYPES_HAS_FLOAT16
- - name: fromfpxf16
+ - name: lroundl
standards:
- stdc
- return_type: _Float16
+ return_type: long
arguments:
- - type: _Float16
- - type: int
- - type: unsigned int
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: fsub
+ - type: long double
+ - name: modf
standards:
- stdc
- return_type: float
+ return_type: double
arguments:
- type: double
- - type: double
- - name: fsubl
+ - type: double *
+ - name: modff
standards:
- stdc
return_type: float
arguments:
- - type: long double
- - type: long double
- - name: fsubf128
+ - type: float
+ - type: float *
+ - name: modff128
standards:
- - llvm_libc_ext
- return_type: float
+ - stdc
+ return_type: float128
arguments:
- type: float128
- - type: float128
+ - type: float128 *
guard: LIBC_TYPES_HAS_FLOAT128
- - name: getpayload
+ - name: modff16
standards:
- stdc
- return_type: double
+ return_type: _Float16
arguments:
- - type: double *
- - name: getpayloadl
+ - type: _Float16
+ - type: _Float16 *
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: modfl
standards:
- stdc
return_type: long double
arguments:
+ - type: long double
- type: long double *
- - name: getpayloadf
+ - name: nan
standards:
- stdc
- return_type: float
+ return_type: double
arguments:
- - type: float *
- - name: getpayloadf16
+ - type: const char *
+ - name: nanf
standards:
- stdc
- return_type: _Float16
+ return_type: float
arguments:
- - type: _Float16 *
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: getpayloadf128
+ - type: const char *
+ - name: nanf128
standards:
- stdc
return_type: float128
arguments:
- - type: float128 *
+ - type: const char *
guard: LIBC_TYPES_HAS_FLOAT128
- - name: ilogbf16
- standards:
- - stdc
- return_type: int
- arguments:
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: ldexpf16
+ - name: nanf16
standards:
- stdc
return_type: _Float16
arguments:
- - type: _Float16
- - type: int
+ - type: const char *
guard: LIBC_TYPES_HAS_FLOAT16
- - name: llogbf16
+ - name: nanl
standards:
- stdc
- return_type: long
+ return_type: long double
arguments:
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: llrintf16
+ - type: const char *
+ - name: nearbyint
standards:
- stdc
- return_type: long long
+ return_type: double
arguments:
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: llroundf16
+ - type: double
+ - name: nearbyintf
standards:
- stdc
- return_type: long long
+ return_type: float
arguments:
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: logbf16
+ - type: float
+ - name: nearbyintf128
standards:
- stdc
- return_type: _Float16
+ return_type: float128
arguments:
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: lrintf16
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: nearbyintf16
standards:
- stdc
- return_type: long
+ return_type: _Float16
arguments:
- type: _Float16
guard: LIBC_TYPES_HAS_FLOAT16
- - name: lroundf16
+ - name: nearbyintl
standards:
- stdc
- return_type: long
+ return_type: long double
arguments:
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: modff16
+ - type: long double
+ - name: nextafter
standards:
- stdc
- return_type: _Float16
+ return_type: double
arguments:
- - type: _Float16
- - type: _Float16 *
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: nanf16
+ - type: double
+ - type: double
+ - name: nextafterf
standards:
- stdc
- return_type: _Float16
+ return_type: float
arguments:
- - type: const char *
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: nearbyintf16
+ - type: float
+ - type: float
+ - name: nextafterf128
standards:
- stdc
- return_type: _Float16
+ return_type: float128
arguments:
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
+ - type: float128
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
- name: nextafterf16
standards:
- stdc
@@ -1689,622 +1738,597 @@ functions:
- type: _Float16
- type: _Float16
guard: LIBC_TYPES_HAS_FLOAT16
- - name: nextdownf16
+ - name: nextafterl
standards:
- stdc
- return_type: _Float16
+ return_type: long double
arguments:
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: nexttowardf16
+ - type: long double
+ - type: long double
+ - name: nextdown
standards:
- stdc
- return_type: _Float16
+ return_type: double
arguments:
- - type: _Float16
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: nextupf16
+ - type: double
+ - name: nextdownf
standards:
- stdc
- return_type: _Float16
+ return_type: float
arguments:
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: remainderf16
+ - type: float
+ - name: nextdownf128
standards:
- stdc
- return_type: _Float16
+ return_type: float128
arguments:
- - type: _Float16
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: remquof16
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: nextdownf16
standards:
- stdc
return_type: _Float16
arguments:
- type: _Float16
- - type: _Float16
- - type: int *
guard: LIBC_TYPES_HAS_FLOAT16
- - name: rintf16
+ - name: nextdownl
standards:
- stdc
- return_type: _Float16
+ return_type: long double
arguments:
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: roundevenf16
+ - type: long double
+ - name: nexttoward
standards:
- stdc
- return_type: _Float16
+ return_type: double
arguments:
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: roundf16
+ - type: double
+ - type: long double
+ - name: nexttowardf
standards:
- stdc
- return_type: _Float16
+ return_type: float
arguments:
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: scalblnf16
+ - type: float
+ - type: long double
+ - name: nexttowardf16
standards:
- stdc
return_type: _Float16
arguments:
- type: _Float16
- - type: long
+ - type: _Float16
guard: LIBC_TYPES_HAS_FLOAT16
- - name: scalbnf16
+ - name: nexttowardl
standards:
- stdc
- return_type: _Float16
+ return_type: long double
arguments:
- - type: _Float16
- - type: int
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: setpayload
+ - type: long double
+ - type: long double
+ - name: nextup
standards:
- stdc
- return_type: int
+ return_type: double
arguments:
- - type: double *
- type: double
- - name: setpayloadf
+ - name: nextupf
standards:
- stdc
- return_type: int
+ return_type: float
arguments:
- - type: float *
- type: float
- - name: setpayloadl
+ - name: nextupf128
standards:
- stdc
- return_type: int
+ return_type: float128
arguments:
- - type: long double *
- - type: long double
- - name: setpayloadf16
+ - type: float128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: nextupf16
standards:
- stdc
- return_type: int
+ return_type: _Float16
arguments:
- - type: _Float16 *
- type: _Float16
guard: LIBC_TYPES_HAS_FLOAT16
- - name: setpayloadf128
+ - name: nextupl
standards:
- stdc
- return_type: int
+ return_type: long double
arguments:
- - type: float128 *
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: setpayloadsig
+ - type: long double
+ - name: pow
standards:
- stdc
return_type: double
arguments:
- - type: double *
- type: double
- - name: setpayloadsigf
+ - type: double
+ - name: powf
standards:
- stdc
- return_type: int
+ return_type: float
arguments:
- - type: float *
- type: float
- - name: setpayloadsigl
+ - type: float
+ - name: powi
+ standards: llvm_libc_ext
+ return_type: double
+ arguments:
+ - type: double
+ - type: int
+ - name: powif
+ standards: llvm_libc_ext
+ return_type: float
+ arguments:
+ - type: float
+ - type: int
+ - name: remainder
standards:
- stdc
- return_type: int
+ return_type: double
arguments:
- - type: long double *
- - type: long double
- - name: setpayloadsigf16
+ - type: double
+ - type: double
+ - name: remainderf
standards:
- stdc
- return_type: int
+ return_type: float
arguments:
- - type: _Float16 *
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: setpayloadsigf128
+ - type: float
+ - type: float
+ - name: remainderf128
standards:
- stdc
- return_type: int
+ return_type: float128
arguments:
- - type: float128 *
+ - type: float128
- type: float128
guard: LIBC_TYPES_HAS_FLOAT128
- - name: totalorderf16
+ - name: remainderf16
standards:
- stdc
- return_type: int
+ return_type: _Float16
arguments:
- - type: _Float16 *
- - type: _Float16 *
+ - type: _Float16
+ - type: _Float16
guard: LIBC_TYPES_HAS_FLOAT16
- - name: totalordermagf16
+ - name: remainderl
standards:
- stdc
- return_type: int
+ return_type: long double
arguments:
- - type: _Float16 *
- - type: _Float16 *
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: truncf16
+ - type: long double
+ - type: long double
+ - name: remquo
standards:
- stdc
- return_type: _Float16
+ return_type: double
arguments:
- - type: _Float16
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: ufromfpf16
+ - type: double
+ - type: double
+ - type: int *
+ - name: remquof
standards:
- stdc
- return_type: _Float16
+ return_type: float
arguments:
- - type: _Float16
- - type: int
- - type: unsigned int
- guard: LIBC_TYPES_HAS_FLOAT16
- - name: ufromfpxf16
+ - type: float
+ - type: float
+ - type: int *
+ - name: remquof128
+ standards:
+ - stdc
+ return_type: float128
+ arguments:
+ - type: float128
+ - type: float128
+ - type: int *
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: remquof16
standards:
- stdc
return_type: _Float16
arguments:
- type: _Float16
- - type: int
- - type: unsigned int
+ - type: _Float16
+ - type: int *
guard: LIBC_TYPES_HAS_FLOAT16
- - name: f16addf128
+ - name: remquol
standards:
- stdc
- return_type: _Float16
+ return_type: long double
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
- - name: f16divf128
+ - type: long double
+ - type: long double
+ - type: int *
+ - name: rint
+ standards:
+ - stdc
+ return_type: double
+ arguments:
+ - type: double
+ - name: rintf
standards:
- stdc
- return_type: _Float16
+ return_type: float
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
- - name: f16fmaf128
+ - type: float
+ - name: rintf128
standards:
- stdc
- return_type: _Float16
+ return_type: float128
arguments:
- type: float128
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
- - name: f16mulf128
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: rintf16
standards:
- stdc
return_type: _Float16
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
- - name: f16sqrtf128
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: rintl
standards:
- - llvm_libc_ext
- return_type: _Float16
+ - stdc
+ return_type: long double
arguments:
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
- - name: f16subf128
+ - type: long double
+ - name: round
standards:
- stdc
- return_type: _Float16
+ return_type: double
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
- - name: ceilf128
+ - type: double
+ - name: roundeven
standards:
- stdc
- return_type: float128
+ return_type: double
arguments:
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: copysignf128
+ - type: double
+ - name: roundevenf
standards:
- stdc
- return_type: float128
+ return_type: float
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: fabsf128
+ - type: float
+ - name: roundevenf128
standards:
- stdc
return_type: float128
arguments:
- type: float128
guard: LIBC_TYPES_HAS_FLOAT128
- - name: fdimf128
+ - name: roundevenf16
standards:
- stdc
- return_type: float128
+ return_type: _Float16
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: fdiv
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: roundevenl
standards:
- stdc
- return_type: float
+ return_type: long double
arguments:
- - type: double
- - type: double
- - name: fdivl
+ - type: long double
+ - name: roundf
standards:
- stdc
return_type: float
arguments:
- - type: long double
- - type: long double
- - name: fdivf128
+ - type: float
+ - name: roundf128
standards:
- - llvm_libc_ext
- return_type: float
+ - stdc
+ return_type: float128
arguments:
- type: float128
- - type: float128
guard: LIBC_TYPES_HAS_FLOAT128
- - name: ffma
+ - name: roundf16
standards:
- stdc
- return_type: float
+ return_type: _Float16
arguments:
- - type: double
- - type: double
- - type: double
- - name: ffmal
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: roundl
standards:
- stdc
- return_type: float
+ return_type: long double
arguments:
- type: long double
- - type: long double
- - type: long double
- - name: ffmaf128
+ - name: scalbln
standards:
- - llvm_libc_ext
+ - stdc
+ return_type: double
+ arguments:
+ - type: double
+ - type: long
+ - name: scalblnf
+ standards:
+ - stdc
return_type: float
arguments:
- - type: float128
- - type: float128
- - type: float128
- guards: LIBC_TYPES_HAS_FLOAT128
- - name: floorf128
+ - type: float
+ - type: long
+ - name: scalblnf128
standards:
- stdc
return_type: float128
arguments:
- type: float128
+ - type: long
guard: LIBC_TYPES_HAS_FLOAT128
- - name: fmaxf128
+ - name: scalblnf16
standards:
- stdc
- return_type: float128
+ return_type: _Float16
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: fmaximum_mag_numf128
+ - type: _Float16
+ - type: long
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: scalblnf16
standards:
- stdc
- return_type: float128
+ return_type: float16
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: fmaximum_magf128
+ - type: float16
+ - type: long
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: scalblnl
standards:
- stdc
- return_type: float128
+ return_type: long double
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: fmaximum_numf128
+ - type: long double
+ - type: long
+ - name: scalbn
standards:
- stdc
- return_type: float128
+ return_type: double
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: fmaximumf128
+ - type: double
+ - type: int
+ - name: scalbnf
standards:
- stdc
- return_type: float128
+ return_type: float
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: fminf128
+ - type: float
+ - type: int
+ - name: scalbnf128
standards:
- stdc
return_type: float128
arguments:
- type: float128
- - type: float128
+ - type: int
guard: LIBC_TYPES_HAS_FLOAT128
- - name: fminimum_mag_numf128
+ - name: scalbnf16
standards:
- stdc
- return_type: float128
+ return_type: _Float16
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: fminimum_magf128
+ - type: _Float16
+ - type: int
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: scalbnl
standards:
- stdc
- return_type: float128
+ return_type: long double
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: fminimum_numf128
+ - type: long double
+ - type: int
+ - name: setpayload
standards:
- stdc
- return_type: float128
+ return_type: int
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: fminimumf128
+ - type: double *
+ - type: double
+ - name: setpayloadf
standards:
- stdc
- return_type: float128
+ return_type: int
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: fmodf128
+ - type: float *
+ - type: float
+ - name: setpayloadf128
standards:
- stdc
- return_type: float128
+ return_type: int
arguments:
- - type: float128
+ - type: float128 *
- type: float128
guard: LIBC_TYPES_HAS_FLOAT128
- - name: fmulf128
+ - name: setpayloadf16
standards:
- - llvm_libc_ext
- return_type: float
+ - stdc
+ return_type: int
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: dmulf128
+ - type: _Float16 *
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: setpayloadl
standards:
- - llvm_libc_ext
- return_type: double
+ - stdc
+ return_type: int
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: frexpf128
+ - type: long double *
+ - type: long double
+ - name: setpayloadsig
standards:
- stdc
- return_type: float128
+ return_type: double
arguments:
- - type: float128
- - type: int *
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: fromfpf128
+ - type: double *
+ - type: double
+ - name: setpayloadsigf
standards:
- stdc
- return_type: float128
+ return_type: int
arguments:
- - type: float128
- - type: int
- - type: unsigned int
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: fromfpxf128
+ - type: float *
+ - type: float
+ - name: setpayloadsigf128
standards:
- stdc
- return_type: float128
+ return_type: int
arguments:
+ - type: float128 *
- type: float128
- - type: int
- - type: unsigned int
guard: LIBC_TYPES_HAS_FLOAT128
- - name: ilogbf128
+ - name: setpayloadsigf16
standards:
- stdc
return_type: int
arguments:
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: ldexpf128
+ - type: _Float16 *
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: setpayloadsigl
standards:
- stdc
- return_type: float128
+ return_type: int
arguments:
- - type: float128
- - type: int
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: llogbf128
+ - type: long double *
+ - type: long double
+ - name: sin
standards:
- stdc
- return_type: long
+ return_type: double
arguments:
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: llrintf128
+ - type: double
+ - name: sincosf
standards:
- - stdc
- return_type: long long
+ - gnu
+ return_type: void
arguments:
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: llroundf128
+ - type: float
+ - type: float *
+ - type: float *
+ - name: sinf
standards:
- stdc
- return_type: long long
+ return_type: float
arguments:
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: logbf128
+ - type: float
+ - name: sinhf
standards:
- stdc
- return_type: float128
+ return_type: float
arguments:
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: lrintf128
+ - type: float
+ - name: sqrt
standards:
- stdc
- return_type: long
+ return_type: double
arguments:
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: lroundf128
+ - type: double
+ - name: sqrtf
standards:
- stdc
- return_type: long
+ return_type: float
arguments:
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: modff128
+ - type: float
+ - name: sqrtf128
standards:
- stdc
return_type: float128
arguments:
- type: float128
- - type: float128 *
guard: LIBC_TYPES_HAS_FLOAT128
- - name: nanf128
+ - name: sqrtl
standards:
- stdc
- return_type: float128
+ return_type: long double
arguments:
- - type: const char *
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: nearbyintf128
+ - type: long double
+ - name: tan
standards:
- stdc
- return_type: float128
+ return_type: double
arguments:
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: nextafterf128
+ - type: double
+ - name: tanf
standards:
- stdc
- return_type: float128
+ return_type: float
arguments:
- - type: float128
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: nextdownf128
+ - type: float
+ - name: tanhf
standards:
- stdc
- return_type: float128
+ return_type: float
arguments:
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: nextupf128
+ - type: float
+ - name: totalorderf16
standards:
- stdc
- return_type: float128
+ return_type: int
arguments:
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: remquof128
+ - type: _Float16 *
+ - type: _Float16 *
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: totalordermagf16
standards:
- stdc
- return_type: float128
+ return_type: int
arguments:
- - type: float128
- - type: float128
- - type: int *
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: rintf128
+ - type: _Float16 *
+ - type: _Float16 *
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: trunc
standards:
- stdc
- return_type: float128
+ return_type: double
arguments:
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: roundevenf128
+ - type: double
+ - name: truncf
standards:
- stdc
- return_type: float128
+ return_type: float
arguments:
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: roundf128
+ - type: float
+ - name: truncf128
standards:
- stdc
return_type: float128
arguments:
- type: float128
guard: LIBC_TYPES_HAS_FLOAT128
- - name: scalbnf128
+ - name: truncf16
standards:
- stdc
- return_type: float128
+ return_type: _Float16
arguments:
- - type: float128
- - type: int
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: sqrtf128
+ - type: _Float16
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: truncl
standards:
- stdc
- return_type: float128
+ return_type: long double
arguments:
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: truncf128
+ - type: long double
+ - name: ufromfp
standards:
- stdc
- return_type: float128
+ return_type: double
arguments:
- - type: float128
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: ufromfpf128
+ - type: double
+ - type: int
+ - type: unsigned int
+ - name: ufromfpf
standards:
- stdc
- return_type: float128
+ return_type: float
arguments:
- - type: float128
+ - type: float
- type: int
- type: unsigned int
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: ufromfpxf128
+ - name: ufromfpf128
standards:
- stdc
return_type: float128
@@ -2313,86 +2337,62 @@ functions:
- type: int
- type: unsigned int
guard: LIBC_TYPES_HAS_FLOAT128
- - name: scalbln
- standards:
- - stdc
- return_type: double
- arguments:
- - type: double
- - type: long
- - name: scalblnl
- standards:
- - stdc
- return_type: long double
- arguments:
- - type: long double
- - type: long
- - name: scalblnf
- standards:
- - stdc
- return_type: float
- arguments:
- - type: float
- - type: long
- - name: scalblnf16
+ - name: ufromfpf16
standards:
- stdc
- return_type: float16
+ return_type: _Float16
arguments:
- - type: float16
- - type: long
+ - type: _Float16
+ - type: int
+ - type: unsigned int
guard: LIBC_TYPES_HAS_FLOAT16
- - name: scalblnf128
+ - name: ufromfpl
standards:
- stdc
- return_type: float128
+ return_type: long double
arguments:
- - type: float128
- - type: long
- guard: LIBC_TYPES_HAS_FLOAT128
- - name: lgamma
+ - type: long double
+ - type: int
+ - type: unsigned int
+ - name: ufromfpx
standards:
- stdc
return_type: double
arguments:
- type: double
- - name: lgammaf
+ - type: int
+ - type: unsigned int
+ - name: ufromfpxf
standards:
- stdc
return_type: float
arguments:
- type: float
- - name: lgammal
+ - type: int
+ - type: unsigned int
+ - name: ufromfpxf128
standards:
- stdc
- return_type: long double
- arguments:
- - type: long double
- - name: lgamma_r
- standards:
- - gnu
- return_type: double
- arguments:
- - type: double
- - type: int *
- - name: lgammaf_r
- standards:
- - gnu
- return_type: float
+ return_type: float128
arguments:
- - type: float
- - type: int *
- - name: lgammal_r
+ - type: float128
+ - type: int
+ - type: unsigned int
+ guard: LIBC_TYPES_HAS_FLOAT128
+ - name: ufromfpxf16
standards:
- - gnu
- return_type: long double
+ - stdc
+ return_type: _Float16
arguments:
- - type: long double
- - type: int *
- - name: ddivl
+ - type: _Float16
+ - type: int
+ - type: unsigned int
+ guard: LIBC_TYPES_HAS_FLOAT16
+ - name: ufromfpxl
standards:
- stdc
return_type: long double
arguments:
- type: long double
- - type: long double
+ - type: int
+ - type: unsigned int
diff --git a/libc/newhdrgen/yaml/pthread.yaml b/libc/newhdrgen/yaml/pthread.yaml
index f3c59ee44943b1..b9068c3f176575 100644
--- a/libc/newhdrgen/yaml/pthread.yaml
+++ b/libc/newhdrgen/yaml/pthread.yaml
@@ -31,12 +31,6 @@ functions:
return_type: int
arguments:
- type: pthread_attr_t *
- - name: pthread_attr_init
- standards:
- - POSIX
- return_type: int
- arguments:
- - type: pthread_attr_t *
- name: pthread_attr_getdetachstate
standards:
- POSIX
@@ -66,6 +60,12 @@ functions:
arguments:
- type: const pthread_attr_t *__restrict
- type: size_t *__restrict
+ - name: pthread_attr_init
+ standards:
+ - POSIX
+ return_type: int
+ arguments:
+ - type: pthread_attr_t *
- name: pthread_attr_setdetachstate
standards:
- POSIX
@@ -197,19 +197,6 @@ functions:
return_type: int
arguments:
- type: pthread_key_t
- - name: pthread_self
- standards:
- - POSIX
- return_type: pthread_t
- arguments:
- - type: void
- - name: pthread_setname_np
- standards:
- - GNUExtensions
- return_type: int
- arguments:
- - type: pthread_t
- - type: const char *
- name: pthread_mutex_destroy
standards:
- POSIX
@@ -241,12 +228,6 @@ functions:
return_type: int
arguments:
- type: pthread_mutexattr_t *
- - name: pthread_mutexattr_init
- standards:
- - POSIX
- return_type: int
- arguments:
- - type: pthread_mutexattr_t *
- name: pthread_mutexattr_getpshared
standards:
- POSIX
@@ -268,6 +249,12 @@ functions:
arguments:
- type: const pthread_mutexattr_t *__restrict
- type: int *__restrict
+ - name: pthread_mutexattr_init
+ standards:
+ - POSIX
+ return_type: int
+ arguments:
+ - type: pthread_mutexattr_t *
- name: pthread_mutexattr_setpshared
standards:
- POSIX
@@ -296,6 +283,68 @@ functions:
arguments:
- type: pthread_once_t *
- type: __pthread_once_func_t
+ - name: pthread_rwlock_clockrdlock
+ standards: POSIX
+ return_type: int
+ arguments:
+ - type: pthread_rwlock_t *__restrict
+ - type: clockid_t
+ - type: const struct timespec *__restrict
+ - name: pthread_rwlock_clockwrlock
+ standards: POSIX
+ return_type: int
+ arguments:
+ - type: pthread_rwlock_t *__restrict
+ - type: clockid_t
+ - type: const struct timespec *__restrict
+ - name: pthread_rwlock_destroy
+ standards: POSIX
+ return_type: int
+ arguments:
+ - type: pthread_rwlock_t *
+ - name: pthread_rwlock_init
+ standards: POSIX
+ return_type: int
+ arguments:
+ - type: pthread_rwlock_t *
+ - type: const pthread_rwlockattr_t *__restrict
+ - name: pthread_rwlock_rdlock
+ standards: POSIX
+ return_type: int
+ arguments:
+ - type: pthread_rwlock_t *
+ - name: pthread_rwlock_timedrdlock
+ standards: POSIX
+ return_type: int
+ arguments:
+ - type: pthread_rwlock_t *__restrict
+ - type: const struct timespec *__restrict
+ - name: pthread_rwlock_timedwrlock
+ standards: POSIX
+ return_type: int
+ arguments:
+ - type: pthread_rwlock_t *__restrict
+ - type: const struct timespec *__restrict
+ - name: pthread_rwlock_tryrdlock
+ standards: POSIX
+ return_type: int
+ arguments:
+ - type: pthread_rwlock_t *
+ - name: pthread_rwlock_trywrlock
+ standards: POSIX
+ return_type: int
+ arguments:
+ - type: pthread_rwlock_t *
+ - name: pthread_rwlock_unlock
+ standards: POSIX
+ return_type: int
+ arguments:
+ - type: pthread_rwlock_t *
+ - name: pthread_rwlock_wrlock
+ standards: POSIX
+ return_type: int
+ arguments:
+ - type: pthread_rwlock_t *
- name: pthread_rwlockattr_destroy
standards:
- POSIX
@@ -336,6 +385,19 @@ functions:
arguments:
- type: pthread_rwlockattr_t *
- type: int
+ - name: pthread_self
+ standards:
+ - POSIX
+ return_type: pthread_t
+ arguments:
+ - type: void
+ - name: pthread_setname_np
+ standards:
+ - GNUExtensions
+ return_type: int
+ arguments:
+ - type: pthread_t
+ - type: const char *
- name: pthread_setspecific
standards:
- POSIX
@@ -343,79 +405,17 @@ functions:
arguments:
- type: pthread_key_t
- type: const void *
- - name: pthread_rwlock_init
- standards: POSIX
- return_type: int
- arguments:
- - type: pthread_rwlock_t *
- - type: const pthread_rwlockattr_t *__restrict
- - name: pthread_rwlock_tryrdlock
- standards: POSIX
- return_type: int
- arguments:
- - type: pthread_rwlock_t *
- - name: pthread_rwlock_trywrlock
- standards: POSIX
- return_type: int
- arguments:
- - type: pthread_rwlock_t *
- - name: pthread_rwlock_timedrdlock
- standards: POSIX
- return_type: int
- arguments:
- - type: pthread_rwlock_t *__restrict
- - type: const struct timespec *__restrict
- - name: pthread_rwlock_timedwrlock
- standards: POSIX
- return_type: int
- arguments:
- - type: pthread_rwlock_t *__restrict
- - type: const struct timespec *__restrict
- - name: pthread_rwlock_clockrdlock
- standards: POSIX
- return_type: int
- arguments:
- - type: pthread_rwlock_t *__restrict
- - type: clockid_t
- - type: const struct timespec *__restrict
- - name: pthread_rwlock_clockwrlock
- standards: POSIX
- return_type: int
- arguments:
- - type: pthread_rwlock_t *__restrict
- - type: clockid_t
- - type: const struct timespec *__restrict
- - name: pthread_rwlock_rdlock
- standards: POSIX
- return_type: int
- arguments:
- - type: pthread_rwlock_t *
- - name: pthread_rwlock_wrlock
- standards: POSIX
- return_type: int
- arguments:
- - type: pthread_rwlock_t *
- - name: pthread_rwlock_unlock
- standards: POSIX
- return_type: int
- arguments:
- - type: pthread_rwlock_t *
- - name: pthread_rwlock_destroy
+ - name: pthread_spin_destroy
standards: POSIX
return_type: int
arguments:
- - type: pthread_rwlock_t *
+ - type: pthread_spinlock_t *
- name: pthread_spin_init
standards: POSIX
return_type: int
arguments:
- type: pthread_spinlock_t *
- type: int
- - name: pthread_spin_destroy
- standards: POSIX
- return_type: int
- arguments:
- - type: pthread_spinlock_t *
- name: pthread_spin_lock
standards: POSIX
return_type: int
diff --git a/libc/newhdrgen/yaml/sched.yaml b/libc/newhdrgen/yaml/sched.yaml
index eaafa8f27ef083..2d4876b722ab21 100644
--- a/libc/newhdrgen/yaml/sched.yaml
+++ b/libc/newhdrgen/yaml/sched.yaml
@@ -10,6 +10,13 @@ types:
enums: []
objects: []
functions:
+ - name: __sched_getcpucount
+ standards:
+ - llvm_libc_ext
+ return_type: int
+ arguments:
+ - type: size_t
+ - type: const cpu_set_t *
- name: sched_get_priority_max
standards:
- POSIX
@@ -79,10 +86,3 @@ functions:
return_type: int
arguments:
- type: void
- - name: __sched_getcpucount
- standards:
- - llvm_libc_ext
- return_type: int
- arguments:
- - type: size_t
- - type: const cpu_set_t *
diff --git a/libc/newhdrgen/yaml/search.yaml b/libc/newhdrgen/yaml/search.yaml
index 878b6972e03495..37d2650bcf0514 100644
--- a/libc/newhdrgen/yaml/search.yaml
+++ b/libc/newhdrgen/yaml/search.yaml
@@ -19,6 +19,16 @@ functions:
arguments:
- type: size_t
- type: struct hsearch_data *
+ - name: hdestroy
+ standards: GNUExtensions
+ return_type: void
+ arguments: []
+ - name: hdestroy_r
+ standards:
+ - POSIX
+ return_type: void
+ arguments:
+ - type: struct hsearch_data *
- name: hsearch
standards:
- POSIX
@@ -34,16 +44,6 @@ functions:
- type: ACTION
- type: ENTRY * *
- type: struct hsearch_data *
- - name: hdestroy
- standards: GNUExtensions
- return_type: void
- arguments: []
- - name: hdestroy_r
- standards:
- - POSIX
- return_type: void
- arguments:
- - type: struct hsearch_data *
- name: insque
standards:
- POSIX
diff --git a/libc/newhdrgen/yaml/signal.yaml b/libc/newhdrgen/yaml/signal.yaml
index 5de89e87453ed5..c66abb1a874418 100644
--- a/libc/newhdrgen/yaml/signal.yaml
+++ b/libc/newhdrgen/yaml/signal.yaml
@@ -11,18 +11,18 @@ types:
enums: []
objects: []
functions:
- - name: raise
+ - name: kill
standards:
- - stdc
+ - POSIX
return_type: int
arguments:
+ - type: pid_t
- type: int
- - name: kill
+ - name: raise
standards:
- - POSIX
+ - stdc
return_type: int
arguments:
- - type: pid_t
- type: int
- name: sigaction
standards:
@@ -32,21 +32,21 @@ functions:
- type: int
- type: const struct sigaction *__restrict
- type: struct sigaction *__restrict
- - name: sigaltstack
+ - name: sigaddset
standards:
- POSIX
return_type: int
arguments:
- - type: const stack_t *__restrict
- - type: stack_t *__restrict
- - name: sigdelset
+ - type: sigset_t *
+ - type: int
+ - name: sigaltstack
standards:
- POSIX
return_type: int
arguments:
- - type: sigset_t *
- - type: int
- - name: sigaddset
+ - type: const stack_t *__restrict
+ - type: stack_t *__restrict
+ - name: sigdelset
standards:
- POSIX
return_type: int
@@ -59,14 +59,6 @@ functions:
return_type: int
arguments:
- type: sigset_t *
- - name: sigprocmask
- standards:
- - POSIX
- return_type: int
- arguments:
- - type: int
- - type: const sigset_t *__restrict
- - type: sigset_t *__restrict
- name: sigfillset
standards:
- POSIX
@@ -80,3 +72,11 @@ functions:
arguments:
- type: int
- type: __sighandler_t
+ - name: sigprocmask
+ standards:
+ - POSIX
+ return_type: int
+ arguments:
+ - type: int
+ - type: const sigset_t *__restrict
+ - type: sigset_t *__restrict
diff --git a/libc/newhdrgen/yaml/stdbit.yaml b/libc/newhdrgen/yaml/stdbit.yaml
index 7a5b61973de0a8..25d2d326c30eb9 100644
--- a/libc/newhdrgen/yaml/stdbit.yaml
+++ b/libc/newhdrgen/yaml/stdbit.yaml
@@ -4,168 +4,162 @@ types: []
enums: []
objects: []
functions:
- - name: stdc_leading_zeros_uc
+ - name: stdc_bit_ceil_uc
standards:
- stdc
- return_type: unsigned int
+ return_type: unsigned char
arguments:
- type: unsigned char
- - name: stdc_leading_zeros_us
- standards:
- - stdc
- return_type: unsigned int
- arguments:
- - type: unsigned short
- - name: stdc_leading_zeros_ui
+ - name: stdc_bit_ceil_ui
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned int
- - name: stdc_leading_zeros_ul
+ - name: stdc_bit_ceil_ul
standards:
- stdc
- return_type: unsigned int
+ return_type: unsigned long
arguments:
- type: unsigned long
- - name: stdc_leading_zeros_ull
+ - name: stdc_bit_ceil_ull
standards:
- stdc
- return_type: unsigned int
+ return_type: unsigned long long
arguments:
- type: unsigned long long
- - name: stdc_leading_ones_uc
+ - name: stdc_bit_ceil_us
standards:
- stdc
- return_type: unsigned int
+ return_type: unsigned short
arguments:
- - type: unsigned char
- - name: stdc_leading_ones_us
+ - type: unsigned short
+ - name: stdc_bit_floor_uc
standards:
- stdc
- return_type: unsigned int
+ return_type: unsigned char
arguments:
- - type: unsigned short
- - name: stdc_leading_ones_ui
+ - type: unsigned char
+ - name: stdc_bit_floor_ui
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned int
- - name: stdc_leading_ones_ul
+ - name: stdc_bit_floor_ul
standards:
- stdc
- return_type: unsigned int
+ return_type: unsigned long
arguments:
- type: unsigned long
- - name: stdc_leading_ones_ull
+ - name: stdc_bit_floor_ull
standards:
- stdc
- return_type: unsigned int
+ return_type: unsigned long long
arguments:
- type: unsigned long long
- - name: stdc_trailing_zeros_uc
+ - name: stdc_bit_floor_us
standards:
- stdc
- return_type: unsigned int
+ return_type: unsigned short
arguments:
- - type: unsigned char
- - name: stdc_trailing_zeros_us
+ - type: unsigned short
+ - name: stdc_bit_width_uc
standards:
- stdc
return_type: unsigned int
arguments:
- - type: unsigned short
- - name: stdc_trailing_zeros_ui
+ - type: unsigned char
+ - name: stdc_bit_width_ui
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned int
- - name: stdc_trailing_zeros_ul
+ - name: stdc_bit_width_ul
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned long
- - name: stdc_trailing_zeros_ull
+ - name: stdc_bit_width_ull
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned long long
- - name: stdc_trailing_ones_uc
+ - name: stdc_bit_width_us
standards:
- stdc
return_type: unsigned int
arguments:
- - type: unsigned char
- - name: stdc_trailing_ones_us
+ - type: unsigned short
+ - name: stdc_count_ones_uc
standards:
- stdc
return_type: unsigned int
arguments:
- - type: unsigned short
- - name: stdc_trailing_ones_ui
+ - type: unsigned char
+ - name: stdc_count_ones_ui
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned int
- - name: stdc_trailing_ones_ul
+ - name: stdc_count_ones_ul
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned long
- - name: stdc_trailing_ones_ull
+ - name: stdc_count_ones_ull
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned long long
- - name: stdc_first_leading_zero_uc
+ - name: stdc_count_ones_us
standards:
- stdc
return_type: unsigned int
arguments:
- - type: unsigned char
- - name: stdc_first_leading_zero_us
+ - type: unsigned short
+ - name: stdc_count_zeros_uc
standards:
- stdc
return_type: unsigned int
arguments:
- - type: unsigned short
- - name: stdc_first_leading_zero_ui
+ - type: unsigned char
+ - name: stdc_count_zeros_ui
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned int
- - name: stdc_first_leading_zero_ul
+ - name: stdc_count_zeros_ul
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned long
- - name: stdc_first_leading_zero_ull
+ - name: stdc_count_zeros_ull
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned long long
- - name: stdc_first_leading_one_uc
+ - name: stdc_count_zeros_us
standards:
- stdc
return_type: unsigned int
arguments:
- - type: unsigned char
- - name: stdc_first_leading_one_us
+ - type: unsigned short
+ - name: stdc_first_leading_one_uc
standards:
- stdc
return_type: unsigned int
arguments:
- - type: unsigned short
+ - type: unsigned char
- name: stdc_first_leading_one_ui
standards:
- stdc
@@ -184,213 +178,219 @@ functions:
return_type: unsigned int
arguments:
- type: unsigned long long
- - name: stdc_first_trailing_one_uc
+ - name: stdc_first_leading_one_us
standards:
- stdc
return_type: unsigned int
arguments:
- - type: unsigned char
- - name: stdc_first_trailing_one_us
+ - type: unsigned short
+ - name: stdc_first_leading_zero_uc
standards:
- stdc
return_type: unsigned int
arguments:
- - type: unsigned short
- - name: stdc_first_trailing_one_ui
+ - type: unsigned char
+ - name: stdc_first_leading_zero_ui
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned int
- - name: stdc_first_trailing_one_ul
+ - name: stdc_first_leading_zero_ul
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned long
- - name: stdc_first_trailing_one_ull
+ - name: stdc_first_leading_zero_ull
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned long long
- - name: stdc_count_zeros_uc
+ - name: stdc_first_leading_zero_us
standards:
- stdc
return_type: unsigned int
arguments:
- - type: unsigned char
- - name: stdc_count_zeros_us
+ - type: unsigned short
+ - name: stdc_first_trailing_one_uc
standards:
- stdc
return_type: unsigned int
arguments:
- - type: unsigned short
- - name: stdc_count_zeros_ui
+ - type: unsigned char
+ - name: stdc_first_trailing_one_ui
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned int
- - name: stdc_count_zeros_ul
+ - name: stdc_first_trailing_one_ul
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned long
- - name: stdc_count_zeros_ull
+ - name: stdc_first_trailing_one_ull
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned long long
- - name: stdc_count_ones_uc
+ - name: stdc_first_trailing_one_us
standards:
- stdc
return_type: unsigned int
arguments:
- - type: unsigned char
- - name: stdc_count_ones_us
+ - type: unsigned short
+ - name: stdc_has_single_bit_uc
standards:
- stdc
- return_type: unsigned int
+ return_type: bool
arguments:
- - type: unsigned short
- - name: stdc_count_ones_ui
+ - type: unsigned char
+ - name: stdc_has_single_bit_ui
standards:
- stdc
- return_type: unsigned int
+ return_type: bool
arguments:
- type: unsigned int
- - name: stdc_count_ones_ul
+ - name: stdc_has_single_bit_ul
standards:
- stdc
- return_type: unsigned int
+ return_type: bool
arguments:
- type: unsigned long
- - name: stdc_count_ones_ull
+ - name: stdc_has_single_bit_ull
standards:
- stdc
- return_type: unsigned int
+ return_type: bool
arguments:
- type: unsigned long long
- - name: stdc_has_single_bit_uc
+ - name: stdc_has_single_bit_us
standards:
- stdc
return_type: bool
arguments:
- - type: unsigned char
- - name: stdc_has_single_bit_us
+ - type: unsigned short
+ - name: stdc_leading_ones_uc
standards:
- stdc
- return_type: bool
+ return_type: unsigned int
arguments:
- - type: unsigned short
- - name: stdc_has_single_bit_ui
+ - type: unsigned char
+ - name: stdc_leading_ones_ui
standards:
- stdc
- return_type: bool
+ return_type: unsigned int
arguments:
- type: unsigned int
- - name: stdc_has_single_bit_ul
+ - name: stdc_leading_ones_ul
standards:
- stdc
- return_type: bool
+ return_type: unsigned int
arguments:
- type: unsigned long
- - name: stdc_has_single_bit_ull
+ - name: stdc_leading_ones_ull
standards:
- stdc
- return_type: bool
+ return_type: unsigned int
arguments:
- type: unsigned long long
- - name: stdc_bit_width_uc
+ - name: stdc_leading_ones_us
standards:
- stdc
return_type: unsigned int
arguments:
- - type: unsigned char
- - name: stdc_bit_width_us
+ - type: unsigned short
+ - name: stdc_leading_zeros_uc
standards:
- stdc
return_type: unsigned int
arguments:
- - type: unsigned short
- - name: stdc_bit_width_ui
+ - type: unsigned char
+ - name: stdc_leading_zeros_ui
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned int
- - name: stdc_bit_width_ul
+ - name: stdc_leading_zeros_ul
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned long
- - name: stdc_bit_width_ull
+ - name: stdc_leading_zeros_ull
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned long long
- - name: stdc_bit_floor_uc
+ - name: stdc_leading_zeros_us
standards:
- stdc
- return_type: unsigned char
+ return_type: unsigned int
arguments:
- - type: unsigned char
- - name: stdc_bit_floor_us
+ - type: unsigned short
+ - name: stdc_trailing_ones_uc
standards:
- stdc
- return_type: unsigned short
+ return_type: unsigned int
arguments:
- - type: unsigned short
- - name: stdc_bit_floor_ui
+ - type: unsigned char
+ - name: stdc_trailing_ones_ui
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned int
- - name: stdc_bit_floor_ul
+ - name: stdc_trailing_ones_ul
standards:
- stdc
- return_type: unsigned long
+ return_type: unsigned int
arguments:
- type: unsigned long
- - name: stdc_bit_floor_ull
+ - name: stdc_trailing_ones_ull
standards:
- stdc
- return_type: unsigned long long
+ return_type: unsigned int
arguments:
- type: unsigned long long
- - name: stdc_bit_ceil_uc
+ - name: stdc_trailing_ones_us
standards:
- stdc
- return_type: unsigned char
+ return_type: unsigned int
arguments:
- - type: unsigned char
- - name: stdc_bit_ceil_us
+ - type: unsigned short
+ - name: stdc_trailing_zeros_uc
standards:
- stdc
- return_type: unsigned short
+ return_type: unsigned int
arguments:
- - type: unsigned short
- - name: stdc_bit_ceil_ui
+ - type: unsigned char
+ - name: stdc_trailing_zeros_ui
standards:
- stdc
return_type: unsigned int
arguments:
- type: unsigned int
- - name: stdc_bit_ceil_ul
+ - name: stdc_trailing_zeros_ul
standards:
- stdc
- return_type: unsigned long
+ return_type: unsigned int
arguments:
- type: unsigned long
- - name: stdc_bit_ceil_ull
+ - name: stdc_trailing_zeros_ull
standards:
- stdc
- return_type: unsigned long long
+ return_type: unsigned int
arguments:
- type: unsigned long long
+ - name: stdc_trailing_zeros_us
+ standards:
+ - stdc
+ return_type: unsigned int
+ arguments:
+ - type: unsigned short
diff --git a/libc/newhdrgen/yaml/stdfix.yaml b/libc/newhdrgen/yaml/stdfix.yaml
index 339c6aaae296f3..ca6658939e2278 100644
--- a/libc/newhdrgen/yaml/stdfix.yaml
+++ b/libc/newhdrgen/yaml/stdfix.yaml
@@ -25,13 +25,6 @@ functions:
arguments:
- type: accum
guard: LIBC_COMPILER_HAS_FIXED_POINT
- - name: absr
- standards:
- - stdc_ext
- return_type: fract
- arguments:
- - type: fract
- guard: LIBC_COMPILER_HAS_FIXED_POINT
- name: abslk
standards:
- stdc_ext
@@ -46,6 +39,13 @@ functions:
arguments:
- type: long fract
guard: LIBC_COMPILER_HAS_FIXED_POINT
+ - name: absr
+ standards:
+ - stdc_ext
+ return_type: fract
+ arguments:
+ - type: fract
+ guard: LIBC_COMPILER_HAS_FIXED_POINT
- name: exphk
standards:
- stdc_ext
@@ -86,14 +86,6 @@ functions:
- type: accum
- type: int
guard: LIBC_COMPILER_HAS_FIXED_POINT
- - name: roundr
- standards:
- - stdc_ext
- return_type: fract
- arguments:
- - type: fract
- - type: int
- guard: LIBC_COMPILER_HAS_FIXED_POINT
- name: roundlk
standards:
- stdc_ext
@@ -110,6 +102,14 @@ functions:
- type: long fract
- type: int
guard: LIBC_COMPILER_HAS_FIXED_POINT
+ - name: roundr
+ standards:
+ - stdc_ext
+ return_type: fract
+ arguments:
+ - type: fract
+ - type: int
+ guard: LIBC_COMPILER_HAS_FIXED_POINT
- name: rounduhk
standards:
- stdc_ext
@@ -134,14 +134,6 @@ functions:
- type: unsigned accum
- type: int
guard: LIBC_COMPILER_HAS_FIXED_POINT
- - name: roundur
- standards:
- - stdc_ext
- return_type: unsigned fract
- arguments:
- - type: unsigned fract
- - type: int
- guard: LIBC_COMPILER_HAS_FIXED_POINT
- name: roundulk
standards:
- stdc_ext
@@ -158,6 +150,14 @@ functions:
- type: unsigned long fract
- type: int
guard: LIBC_COMPILER_HAS_FIXED_POINT
+ - name: roundur
+ standards:
+ - stdc_ext
+ return_type: unsigned fract
+ arguments:
+ - type: unsigned fract
+ - type: int
+ guard: LIBC_COMPILER_HAS_FIXED_POINT
- name: sqrtuhk
standards:
- stdc_ext
@@ -182,27 +182,27 @@ functions:
arguments:
- type: unsigned accum
guard: LIBC_COMPILER_HAS_FIXED_POINT
- - name: sqrtur
- standards:
- - stdc_ext
- - llvm_libc_stdfix_ext
- return_type: unsigned fract
+ - name: sqrtulk
+ standards: llvm_libc_stdfix_ext
+ return_type: unsigned long accum
arguments:
- - type: unsigned fract
+ - type: unsigned long accum
guard: LIBC_COMPILER_HAS_FIXED_POINT
- name: sqrtulr
standards:
- - stdc_ext
+ - stdc_ext
- llvm_libc_stdfix_ext
return_type: unsigned long fract
arguments:
- type: unsigned long fract
guard: LIBC_COMPILER_HAS_FIXED_POINT
- - name: sqrtulk
- standards: llvm_libc_stdfix_ext
- return_type: unsigned long accum
+ - name: sqrtur
+ standards:
+ - stdc_ext
+ - llvm_libc_stdfix_ext
+ return_type: unsigned fract
arguments:
- - type: unsigned long accum
+ - type: unsigned fract
guard: LIBC_COMPILER_HAS_FIXED_POINT
- name: uhksqrtus
standards:
diff --git a/libc/newhdrgen/yaml/stdio.yaml b/libc/newhdrgen/yaml/stdio.yaml
index 776e9ae30f4743..43438699b58409 100644
--- a/libc/newhdrgen/yaml/stdio.yaml
+++ b/libc/newhdrgen/yaml/stdio.yaml
@@ -20,143 +20,14 @@ objects:
- object_name: stderr
object_type: FILE *
functions:
- - name: remove
+ - name: asprintf
standards:
- - stdc
- return_type: int
- arguments:
- - type: const char *
- - name: rename
- standards:
- - stdc
- return_type: int
- arguments:
- - type: const char *
- - type: const char *
- - name: sprintf
- standards:
- - stdc
- return_type: int
- arguments:
- - type: char *__restrict
- - type: const char *__restrict
- - type: ...
- - name: snprintf
- standards:
- - stdc
- return_type: int
- arguments:
- - type: char *__restrict
- - type: size_t
- - type: const char *__restrict
- - type: ...
- - name: fprintf
- standards:
- - stdc
- return_type: int
- arguments:
- - type: FILE *__restrict
- - type: const char *__restrict
- - type: ...
- - name: printf
- standards:
- - stdc
- return_type: int
- arguments:
- - type: const char *__restrict
- - type: ...
- - name: vsprintf
- standards:
- - stdc
- return_type: int
- arguments:
- - type: char *__restrict
- - type: const char *__restrict
- - type: va_list
- - name: vsnprintf
- standards:
- - stdc
- return_type: int
- arguments:
- - type: char *__restrict
- - type: size_t
- - type: const char *__restrict
- - type: va_list
- - name: vfprintf
- standards:
- - stdc
- return_type: int
- arguments:
- - type: FILE *__restrict
- - type: const char *__restrict
- - type: va_list
- - name: vprintf
- standards:
- - stdc
- return_type: int
- arguments:
- - type: const char *__restrict
- - type: va_list
- - name: asprintf
- standards:
- - GNUExtensions
- return_type: int
- arguments:
- - type: char **__restrict
- - type: const char *__restrict
- - type: ...
- - name: vasprintf
- standards:
- - GNUExtensions
- return_type: int
- arguments:
- - type: char **__restrict
- - type: const char *__restrict
- - type: va_list
- - name: sscanf
- standards:
- - stdc
- return_type: int
- arguments:
- - type: const char *__restrict
- - type: const char *__restrict
- - type: ...
- - name: vsscanf
- standards:
- - stdc
- return_type: int
- arguments:
- - type: const char *__restrict
- - type: const char *__restrict
- - type: va_list
- - name: scanf
- standards:
- - stdc
- return_type: int
- arguments:
- - type: const char *__restrict
- - type: ...
- - name: fscanf
- standards:
- - stdc
+ - GNUExtensions
return_type: int
arguments:
- - type: FILE *__restrict
+ - type: char **__restrict
- type: const char *__restrict
- - type: ...
- - name: fileno
- standards:
- - POSIX
- return_type: int
- arguments:
- - type: FILE *
- - name: fdopen
- standards:
- - POSIX
- return_type: FILE *
- arguments:
- - type: int
- - type: const char *
+ - type: '...'
- name: clearerr
standards:
- stdc
@@ -175,12 +46,13 @@ functions:
return_type: int
arguments:
- type: FILE *
- - name: flockfile
+ - name: fdopen
standards:
- POSIX
- return_type: void
+ return_type: FILE *
arguments:
- - type: FILE *
+ - type: int
+ - type: const char *
- name: feof
standards:
- stdc
@@ -205,6 +77,12 @@ functions:
return_type: int
arguments:
- type: FILE *
+ - name: fflush
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: FILE *
- name: fgetc
standards:
- stdc
@@ -225,12 +103,18 @@ functions:
- type: char *__restrict
- type: int
- type: FILE *__restrict
- - name: fflush
+ - name: fileno
standards:
- - stdc
+ - POSIX
return_type: int
arguments:
- type: FILE *
+ - name: flockfile
+ standards:
+ - POSIX
+ return_type: void
+ arguments:
+ - type: FILE *
- name: fopen
standards:
- stdc
@@ -238,6 +122,22 @@ functions:
arguments:
- type: const char *
- type: const char *
+ - name: fopencookie
+ standards:
+ - GNUExtensions
+ return_type: FILE *
+ arguments:
+ - type: void *
+ - type: const char *
+ - type: cookie_io_functions_t
+ - name: fprintf
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: FILE *__restrict
+ - type: const char *__restrict
+ - type: '...'
- name: fputc
standards:
- stdc
@@ -252,14 +152,6 @@ functions:
arguments:
- type: const char *__restrict
- type: FILE *__restrict
- - name: fopencookie
- standards:
- - GNUExtensions
- return_type: FILE *
- arguments:
- - type: void *
- - type: const char *
- - type: cookie_io_functions_t
- name: fread
standards:
- stdc
@@ -278,6 +170,14 @@ functions:
- type: size_t
- type: size_t
- type: FILE *__restrict
+ - name: fscanf
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: FILE *__restrict
+ - type: const char *__restrict
+ - type: '...'
- name: fseek
standards:
- stdc
@@ -338,6 +238,13 @@ functions:
- POSIX
return_type: int
arguments: []
+ - name: printf
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: const char *__restrict
+ - type: '...'
- name: putc
standards:
- stdc
@@ -357,6 +264,26 @@ functions:
return_type: int
arguments:
- type: const char *
+ - name: remove
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: const char *
+ - name: rename
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: const char *
+ - type: const char *
+ - name: scanf
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: const char *__restrict
+ - type: '...'
- name: setbuf
standards:
- stdc
@@ -373,6 +300,31 @@ functions:
- type: char *__restrict
- type: int
- type: size_t
+ - name: snprintf
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: char *__restrict
+ - type: size_t
+ - type: const char *__restrict
+ - type: '...'
+ - name: sprintf
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: char *__restrict
+ - type: const char *__restrict
+ - type: '...'
+ - name: sscanf
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: const char *__restrict
+ - type: const char *__restrict
+ - type: '...'
- name: ungetc
standards:
- stdc
@@ -380,3 +332,51 @@ functions:
arguments:
- type: int
- type: FILE *
+ - name: vasprintf
+ standards:
+ - GNUExtensions
+ return_type: int
+ arguments:
+ - type: char **__restrict
+ - type: const char *__restrict
+ - type: va_list
+ - name: vfprintf
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: FILE *__restrict
+ - type: const char *__restrict
+ - type: va_list
+ - name: vprintf
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: const char *__restrict
+ - type: va_list
+ - name: vsnprintf
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: char *__restrict
+ - type: size_t
+ - type: const char *__restrict
+ - type: va_list
+ - name: vsprintf
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: char *__restrict
+ - type: const char *__restrict
+ - type: va_list
+ - name: vsscanf
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: const char *__restrict
+ - type: const char *__restrict
+ - type: va_list
diff --git a/libc/newhdrgen/yaml/stdlib.yaml b/libc/newhdrgen/yaml/stdlib.yaml
index ac5e2260e9829c..081da5391c3a52 100644
--- a/libc/newhdrgen/yaml/stdlib.yaml
+++ b/libc/newhdrgen/yaml/stdlib.yaml
@@ -14,24 +14,55 @@ types:
enums: []
objects: []
functions:
+ - name: _Exit
+ standards:
+ - stdc
+ return_type: _Noreturn void
+ arguments:
+ - type: int
+ - name: abort
+ standards:
+ - stdc
+ return_type: _Noreturn void
+ arguments:
+ - type: void
- name: abs
standards:
- stdc
return_type: int
arguments:
- type: int
- - name: atoi
+ - name: aligned_alloc
+ standards:
+ - stdc
+ return_type: void *
+ arguments:
+ - type: size_t
+ - type: size_t
+ - name: at_quick_exit
standards:
- stdc
return_type: int
arguments:
- - type: const char *
+ - type: __atexithandler_t
+ - name: atexit
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: __atexithandler_t
- name: atof
standards:
- stdc
return_type: double
arguments:
- type: const char *__restrict
+ - name: atoi
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: const char *
- name: atol
standards:
- stdc
@@ -54,6 +85,13 @@ functions:
- type: size_t
- type: size_t
- type: __bsearchcompare_t
+ - name: calloc
+ standards:
+ - stdc
+ return_type: void *
+ arguments:
+ - type: size_t
+ - type: size_t
- name: div
standards:
- stdc
@@ -61,6 +99,24 @@ functions:
arguments:
- type: int
- type: int
+ - name: exit
+ standards:
+ - stdc
+ return_type: _Noreturn void
+ arguments:
+ - type: int
+ - name: free
+ standards:
+ - stdc
+ return_type: void
+ arguments:
+ - type: void *
+ - name: getenv
+ standards:
+ - stdc
+ return_type: char *
+ arguments:
+ - type: const char *
- name: labs
standards:
- stdc
@@ -87,6 +143,12 @@ functions:
arguments:
- type: long long
- type: long long
+ - name: malloc
+ standards:
+ - stdc
+ return_type: void *
+ arguments:
+ - type: size_t
- name: qsort
standards:
- stdc
@@ -106,12 +168,25 @@ functions:
- type: size_t
- type: __qsortrcompare_t
- type: void *
+ - name: quick_exit
+ standards:
+ - stdc
+ return_type: _Noreturn void
+ arguments:
+ - type: int
- name: rand
standards:
- stdc
return_type: int
arguments:
- type: void
+ - name: realloc
+ standards:
+ - stdc
+ return_type: void *
+ arguments:
+ - type: void *
+ - type: size_t
- name: srand
standards:
- stdc
@@ -198,78 +273,3 @@ functions:
- type: const char *__restrict
- type: char **__restrict
- type: int
- - name: malloc
- standards:
- - stdc
- return_type: void *
- arguments:
- - type: size_t
- - name: calloc
- standards:
- - stdc
- return_type: void *
- arguments:
- - type: size_t
- - type: size_t
- - name: realloc
- standards:
- - stdc
- return_type: void *
- arguments:
- - type: void *
- - type: size_t
- - name: aligned_alloc
- standards:
- - stdc
- return_type: void *
- arguments:
- - type: size_t
- - type: size_t
- - name: free
- standards:
- - stdc
- return_type: void
- arguments:
- - type: void *
- - name: _Exit
- standards:
- - stdc
- return_type: _Noreturn void
- arguments:
- - type: int
- - name: abort
- standards:
- - stdc
- return_type: _Noreturn void
- arguments:
- - type: void
- - name: at_quick_exit
- standards:
- - stdc
- return_type: int
- arguments:
- - type: __atexithandler_t
- - name: atexit
- standards:
- - stdc
- return_type: int
- arguments:
- - type: __atexithandler_t
- - name: exit
- standards:
- - stdc
- return_type: _Noreturn void
- arguments:
- - type: int
- - name: getenv
- standards:
- - stdc
- return_type: char *
- arguments:
- - type: const char *
- - name: quick_exit
- standards:
- - stdc
- return_type: _Noreturn void
- arguments:
- - type: int
diff --git a/libc/newhdrgen/yaml/string.yaml b/libc/newhdrgen/yaml/string.yaml
index 3287c8bdb6ccb6..387ea9ec4e1422 100644
--- a/libc/newhdrgen/yaml/string.yaml
+++ b/libc/newhdrgen/yaml/string.yaml
@@ -5,21 +5,22 @@ types:
enums: []
objects: []
functions:
- - name: memcpy
+ - name: memccpy
standards:
- - stdc
+ - POSIX
return_type: void *
arguments:
- type: void *__restrict
- type: const void *__restrict
+ - type: int
- type: size_t
- - name: memmove
+ - name: memchr
standards:
- stdc
return_type: void *
arguments:
- - type: void *
- type: const void *
+ - type: int
- type: size_t
- name: memcmp
standards:
@@ -29,10 +30,43 @@ functions:
- type: const void *
- type: const void *
- type: size_t
- - name: memchr
+ - name: memcpy
+ standards:
+ - stdc
+ return_type: void *
+ arguments:
+ - type: void *__restrict
+ - type: const void *__restrict
+ - type: size_t
+ - name: memmem
+ standards:
+ - GNUExtensions
+ return_type: void *
+ arguments:
+ - type: const void *
+ - type: size_t
+ - type: const void *
+ - type: size_t
+ - name: memmove
standards:
- stdc
return_type: void *
+ arguments:
+ - type: void *
+ - type: const void *
+ - type: size_t
+ - name: mempcpy
+ standards:
+ - POSIX
+ return_type: void *
+ arguments:
+ - type: void *__restrict
+ - type: const void *__restrict
+ - type: size_t
+ - name: memrchr
+ standards:
+ - GNUExtensions
+ return_type: void *
arguments:
- type: const void *
- type: int
@@ -53,21 +87,28 @@ functions:
- type: void *
- type: int
- type: size_t
- - name: strcpy
+ - name: stpcpy
standards:
- - stdc
+ - POSIX
return_type: char *
arguments:
- type: char *__restrict
- type: const char *__restrict
- - name: strncpy
+ - name: stpncpy
standards:
- - stdc
+ - POSIX
return_type: char *
arguments:
- type: char *__restrict
- type: const char *__restrict
- type: size_t
+ - name: strcasestr
+ standards:
+ - GNUExtensions
+ return_type: char *
+ arguments:
+ - type: const char *
+ - type: const char *
- name: strcat
standards:
- stdc
@@ -75,51 +116,41 @@ functions:
arguments:
- type: char *__restrict
- type: const char *__restrict
- - name: strncat
+ - name: strchr
standards:
- stdc
return_type: char *
arguments:
- - type: char *
- type: const char *
- - type: size_t
- - name: strcmp
+ - type: int
+ - name: strchrnul
standards:
- - stdc
- return_type: int
+ - GNUExtensions
+ return_type: char *
arguments:
- type: const char *
- - type: const char *
- - name: strcoll
+ - type: int
+ - name: strcmp
standards:
- stdc
return_type: int
arguments:
- type: const char *
- type: const char *
- - name: strncmp
+ - name: strcoll
standards:
- stdc
return_type: int
arguments:
- type: const char *
- type: const char *
- - type: size_t
- - name: strxfrm
+ - name: strcpy
standards:
- stdc
- return_type: size_t
+ return_type: char *
arguments:
- type: char *__restrict
- type: const char *__restrict
- - type: size_t
- - name: strchr
- standards:
- - stdc
- return_type: char *
- arguments:
- - type: const char *
- - type: int
- name: strcspn
standards:
- stdc
@@ -131,91 +162,72 @@ functions:
return_type: char *
arguments:
- type: const char *
- - name: strndup
- standards:
- - stdc
- return_type: char *
- arguments:
- - type: const char *
- - type: size_t
- - name: strpbrk
+ - name: strerror
standards:
- stdc
return_type: char *
arguments:
- - type: const char *
- - type: const char *
- - name: strrchr
+ - type: int
+ - name: strerror_r
standards:
- - stdc
+ - GNUExtensions
return_type: char *
arguments:
- - type: const char *
- type: int
- - name: strspn
+ - type: char *
+ - type: size_t
+ - name: strlcat
standards:
- - stdc
+ - BSDExtensions
return_type: size_t
arguments:
- - type: const char *
- - type: const char *
- - name: strstr
- standards:
- - stdc
- return_type: char *
- arguments:
- - type: const char *
- - type: const char *
- - name: strtok
- standards:
- - stdc
- return_type: char *
- arguments:
- - type: char *__restrict
- type: const char *__restrict
- - name: strerror
+ - type: const char *__restrict
+ - type: size_t
+ - name: strlcpy
standards:
- - stdc
- return_type: char *
+ - BSDExtensions
+ return_type: size_t
arguments:
- - type: int
+ - type: const char *__restrict
+ - type: const char *__restrict
+ - type: size_t
- name: strlen
standards:
- stdc
return_type: size_t
arguments:
- type: const char *
- - name: memccpy
+ - name: strncat
standards:
- - POSIX
- return_type: void *
+ - stdc
+ return_type: char *
arguments:
- - type: void *__restrict
- - type: const void *__restrict
- - type: int
+ - type: char *
+ - type: const char *
- type: size_t
- - name: mempcpy
+ - name: strncmp
standards:
- - POSIX
- return_type: void *
+ - stdc
+ return_type: int
arguments:
- - type: void *__restrict
- - type: const void *__restrict
+ - type: const char *
+ - type: const char *
- type: size_t
- - name: stpcpy
+ - name: strncpy
standards:
- - POSIX
+ - stdc
return_type: char *
arguments:
- type: char *__restrict
- type: const char *__restrict
- - name: stpncpy
+ - type: size_t
+ - name: strndup
standards:
- - POSIX
+ - stdc
return_type: char *
arguments:
- - type: char *__restrict
- - type: const char *__restrict
+ - type: const char *
- type: size_t
- name: strnlen
standards:
@@ -224,79 +236,67 @@ functions:
arguments:
- type: const char *
- type: size_t
- - name: strtok_r
+ - name: strpbrk
standards:
- - POSIX
+ - stdc
return_type: char *
arguments:
- - type: char *__restrict
- - type: const char *__restrict
- - type: char ** __restrict
- - name: strsignal
+ - type: const char *
+ - type: const char *
+ - name: strrchr
standards:
- - POSIX
+ - stdc
return_type: char *
arguments:
+ - type: const char *
- type: int
- - name: memmem
- standards:
- - GNUExtensions
- return_type: void *
- arguments:
- - type: const void *
- - type: size_t
- - type: const void *
- - type: size_t
- - name: memrchr
+ - name: strsep
standards:
- - GNUExtensions
- return_type: void *
+ - BSDExtensions
+ return_type: char *
arguments:
- - type: const void *
- - type: int
- - type: size_t
- - name: strerror_r
+ - type: char **__restrict
+ - type: const char *__restrict
+ - name: strsignal
standards:
- - GNUExtensions
+ - POSIX
return_type: char *
arguments:
- type: int
- - type: char *
- - type: size_t
- - name: strcasestr
+ - name: strspn
standards:
- - GNUExtensions
- return_type: char *
+ - stdc
+ return_type: size_t
arguments:
- type: const char *
- type: const char *
- - name: strchrnul
+ - name: strstr
standards:
- - GNUExtensions
+ - stdc
return_type: char *
arguments:
- type: const char *
- - type: int
- - name: strlcat
+ - type: const char *
+ - name: strtok
standards:
- - BSDExtensions
- return_type: size_t
+ - stdc
+ return_type: char *
arguments:
+ - type: char *__restrict
- type: const char *__restrict
- - type: const char *__restrict
- - type: size_t
- - name: strlcpy
+ - name: strtok_r
standards:
- - BSDExtensions
- return_type: size_t
+ - POSIX
+ return_type: char *
arguments:
+ - type: char *__restrict
- type: const char *__restrict
- - type: const char *__restrict
- - type: size_t
- - name: strsep
+ - type: char ** __restrict
+ - name: strxfrm
standards:
- - BSDExtensions
- return_type: char *
+ - stdc
+ return_type: size_t
arguments:
- - type: char **__restrict
+ - type: char *__restrict
- type: const char *__restrict
+ - type: size_t
diff --git a/libc/newhdrgen/yaml/strings.yaml b/libc/newhdrgen/yaml/strings.yaml
index eda8a5ae1bb90f..ca91b626740c12 100644
--- a/libc/newhdrgen/yaml/strings.yaml
+++ b/libc/newhdrgen/yaml/strings.yaml
@@ -4,6 +4,14 @@ types: []
enums: []
objects: []
functions:
+ - name: bcmp
+ standards:
+ - llvm_libc_ext
+ return_type: int
+ arguments:
+ - type: const void *
+ - type: const void *
+ - type: size_t
- name: bcopy
standards:
- llvm_libc_ext
@@ -19,40 +27,32 @@ functions:
arguments:
- type: void *
- type: size_t
- - name: bcmp
+ - name: index
standards:
- - llvm_libc_ext
- return_type: int
+ - BSDExtensions
+ return_type: char *
arguments:
- - type: const void *
- - type: const void *
- - type: size_t
- - name: strcasecmp
+ - type: const char *
+ - type: int
+ - name: rindex
standards:
- BSDExtensions
- return_type: int
+ return_type: char *
arguments:
- type: const char *
- - type: const char *
- - name: strncasecmp
+ - type: int
+ - name: strcasecmp
standards:
- BSDExtensions
return_type: int
arguments:
- type: const char *
- type: const char *
- - type: size_t
- - name: index
+ - name: strncasecmp
standards:
- BSDExtensions
- return_type: char *
+ return_type: int
arguments:
- type: const char *
- - type: int
- - name: rindex
- standards:
- - BSDExtensions
- return_type: char *
- arguments:
- type: const char *
- - type: int
+ - type: size_t
diff --git a/libc/newhdrgen/yaml/sys/epoll.yaml b/libc/newhdrgen/yaml/sys/epoll.yaml
index 3b55ce4f24d494..ee188c17fedc63 100644
--- a/libc/newhdrgen/yaml/sys/epoll.yaml
+++ b/libc/newhdrgen/yaml/sys/epoll.yaml
@@ -29,7 +29,7 @@ functions:
- type: int
- type: int
- type: struct epoll_event *
- - name: epoll_wait
+ - name: epoll_pwait
standards:
- Linux
return_type: int
@@ -38,7 +38,8 @@ functions:
- type: struct epoll_event *
- type: int
- type: int
- - name: epoll_pwait
+ - type: const sigset_t *
+ - name: epoll_pwait2
standards:
- Linux
return_type: int
@@ -46,9 +47,9 @@ functions:
- type: int
- type: struct epoll_event *
- type: int
- - type: int
+ - type: const struct timespec *
- type: const sigset_t *
- - name: epoll_pwait2
+ - name: epoll_wait
standards:
- Linux
return_type: int
@@ -56,5 +57,4 @@ functions:
- type: int
- type: struct epoll_event *
- type: int
- - type: const struct timespec *
- - type: const sigset_t *
+ - type: int
diff --git a/libc/newhdrgen/yaml/sys/mman.yaml b/libc/newhdrgen/yaml/sys/mman.yaml
index efddcaf071b673..272e7e2af16aaf 100644
--- a/libc/newhdrgen/yaml/sys/mman.yaml
+++ b/libc/newhdrgen/yaml/sys/mman.yaml
@@ -15,82 +15,82 @@ functions:
- type: void *
- type: size_t
- type: int
- - name: mmap
+ - name: mincore
standards:
- - POSIX
- return_type: void *
+ - Linux
+ return_type: int
arguments:
- type: void *
- type: size_t
- - type: int
- - type: int
- - type: int
- - type: off_t
- - name: mprotect
+ - type: unsigned char *
+ - name: mlock
standards:
- POSIX
return_type: int
arguments:
- type: void *
- type: size_t
- - type: int
- - name: munmap
+ - name: mlock2
standards:
- - POSIX
+ - Linux
return_type: int
arguments:
- type: void *
- type: size_t
- - name: posix_madvise
+ - type: unsigned int
+ - name: mlockall
standards:
- POSIX
return_type: int
arguments:
- - type: void *
- - type: size_t
- type: int
- - name: mincore
+ - name: mmap
standards:
- - Linux
- return_type: int
+ - POSIX
+ return_type: void *
arguments:
- type: void *
- type: size_t
- - type: unsigned char *
- - name: mlock
+ - type: int
+ - type: int
+ - type: int
+ - type: off_t
+ - name: mprotect
standards:
- POSIX
return_type: int
arguments:
- type: void *
- type: size_t
- - name: mlock2
+ - type: int
+ - name: msync
standards:
- - Linux
+ - POSIX
return_type: int
arguments:
- type: void *
- type: size_t
- - type: unsigned int
+ - type: int
- name: munlock
standards: POSIX
return_type: int
arguments:
- type: void *
- type: size_t
- - name: mlockall
+ - name: munlockall
standards:
- POSIX
return_type: int
arguments:
- - type: int
- - name: munlockall
+ - type: void
+ - name: munmap
standards:
- POSIX
return_type: int
arguments:
- - type: void
- - name: msync
+ - type: void *
+ - type: size_t
+ - name: posix_madvise
standards:
- POSIX
return_type: int
diff --git a/libc/newhdrgen/yaml/sys/socket.yaml b/libc/newhdrgen/yaml/sys/socket.yaml
index 06ffa295a17f0d..3b8bf4cecfe5aa 100644
--- a/libc/newhdrgen/yaml/sys/socket.yaml
+++ b/libc/newhdrgen/yaml/sys/socket.yaml
@@ -8,19 +8,19 @@ types:
enums: []
objects: []
functions:
- - name: socket
+ - name: bind
standards:
- POSIX
return_type: int
arguments:
- type: int
- - type: int
- - type: int
- - name: bind
+ - type: const struct sockaddr *
+ - type: socklen_t
+ - name: socket
standards:
- POSIX
return_type: int
arguments:
- type: int
- - type: const struct sockaddr *
- - type: socklen_t
+ - type: int
+ - type: int
diff --git a/libc/newhdrgen/yaml/sys/statvfs.yaml b/libc/newhdrgen/yaml/sys/statvfs.yaml
index 952ee88c82e9da..22e0ef22c4139b 100644
--- a/libc/newhdrgen/yaml/sys/statvfs.yaml
+++ b/libc/newhdrgen/yaml/sys/statvfs.yaml
@@ -7,17 +7,17 @@ types:
enums: []
objects: []
functions:
- - name: statvfs
+ - name: fstatvfs
standards:
- POSIX
return_type: int
arguments:
- - type: const char *__restrict
- - type: struct statvfs *__restrict
- - name: fstatvfs
+ - type: int
+ - type: struct statvfs *
+ - name: statvfs
standards:
- POSIX
return_type: int
arguments:
- - type: int
- - type: struct statvfs *
+ - type: const char *__restrict
+ - type: struct statvfs *__restrict
diff --git a/libc/newhdrgen/yaml/termios.yaml b/libc/newhdrgen/yaml/termios.yaml
index 7e4a0ff1d6a181..e9c4cd375d0b9f 100644
--- a/libc/newhdrgen/yaml/termios.yaml
+++ b/libc/newhdrgen/yaml/termios.yaml
@@ -35,39 +35,39 @@ functions:
arguments:
- type: struct termios *
- type: speed_t
- - name: tcgetattr
+ - name: tcdrain
standards:
- POSIX
return_type: int
arguments:
- type: int
- - type: struct termios *
- - name: tcgetsid
+ - name: tcflow
standards:
- POSIX
- return_type: pid_t
+ return_type: int
arguments:
- type: int
- - name: tcdrain
+ - type: int
+ - name: tcflush
standards:
- POSIX
return_type: int
arguments:
- type: int
- - name: tcflow
+ - type: int
+ - name: tcgetattr
standards:
- POSIX
return_type: int
arguments:
- type: int
- - type: int
- - name: tcflush
+ - type: struct termios *
+ - name: tcgetsid
standards:
- POSIX
- return_type: int
+ return_type: pid_t
arguments:
- type: int
- - type: int
- name: tcsendbreak
standards:
- POSIX
diff --git a/libc/newhdrgen/yaml/threads.yaml b/libc/newhdrgen/yaml/threads.yaml
index cceb48df6a723d..aadcaf5f66e06e 100644
--- a/libc/newhdrgen/yaml/threads.yaml
+++ b/libc/newhdrgen/yaml/threads.yaml
@@ -1,7 +1,7 @@
header: threads.h
macros:
- macro_name: ONCE_FLAG_INIT
- macro_value: "{0}"
+ macro_value: '{0}'
types:
- type_name: once_flag
- type_name: __call_once_func_t
@@ -68,19 +68,19 @@ functions:
arguments:
- type: cnd_t *
- type: mtx_t *
- - name: mtx_init
+ - name: mtx_destroy
standards:
- stdc
return_type: int
arguments:
- - type: mtx_t *
- - type: int
- - name: mtx_destroy
+ - type: void
+ - name: mtx_init
standards:
- stdc
return_type: int
arguments:
- - type: void
+ - type: mtx_t *
+ - type: int
- name: mtx_lock
standards:
- stdc
@@ -101,25 +101,18 @@ functions:
- type: thrd_t *
- type: thrd_start_t
- type: void *
- - name: thrd_join
+ - name: thrd_current
standards:
- stdc
- return_type: int
+ return_type: thrd_t
arguments:
- - type: thrd_t
- - type: int *
+ - type: void
- name: thrd_detach
standards:
- stdc
return_type: int
arguments:
- type: thrd_t
- - name: thrd_current
- standards:
- - stdc
- return_type: thrd_t
- arguments:
- - type: void
- name: thrd_equal
standards:
- stdc
@@ -133,6 +126,13 @@ functions:
return_type: void
arguments:
- type: int
+ - name: thrd_join
+ standards:
+ - stdc
+ return_type: int
+ arguments:
+ - type: thrd_t
+ - type: int *
- name: tss_create
standards:
- stdc
diff --git a/libc/newhdrgen/yaml/time.yaml b/libc/newhdrgen/yaml/time.yaml
index a4605a23fdc03a..64a112be091fa5 100644
--- a/libc/newhdrgen/yaml/time.yaml
+++ b/libc/newhdrgen/yaml/time.yaml
@@ -23,6 +23,12 @@ functions:
arguments:
- type: struct tm *
- type: char *
+ - name: clock
+ standard:
+ - stdc
+ return_type: clock_t
+ arguments:
+ - type: void
- name: clock_gettime
standard:
- POSIX
@@ -30,12 +36,6 @@ functions:
arguments:
- type: clockid_t
- type: struct timespec *
- - name: clock
- standard:
- - stdc
- return_type: clock_t
- arguments:
- - type: void
- name: difftime
standard:
- stdc
diff --git a/libc/newhdrgen/yaml/unistd.yaml b/libc/newhdrgen/yaml/unistd.yaml
index f52ddf41f2451e..4d12abe96a2ec4 100644
--- a/libc/newhdrgen/yaml/unistd.yaml
+++ b/libc/newhdrgen/yaml/unistd.yaml
@@ -22,6 +22,24 @@ objects:
- object_name: optopt
object_type: int
functions:
+ - name: __llvm_libc_syscall
+ standards:
+ - POSIX
+ return_type: long
+ arguments:
+ - type: long
+ - type: long
+ - type: long
+ - type: long
+ - type: long
+ - type: long
+ - type: long
+ - name: _exit
+ standards:
+ - POSIX
+ return_type: _Noreturn void
+ arguments:
+ - type: int
- name: access
standards:
- POSIX
@@ -62,6 +80,13 @@ functions:
- type: int
- type: int
- type: int
+ - name: execv
+ standards:
+ - POSIX
+ return_type: int
+ arguments:
+ - type: const char *
+ - type: __exec_argv_t
- name: execve
standards:
- POSIX
@@ -76,6 +101,12 @@ functions:
return_type: int
arguments:
- type: int
+ - name: fork
+ standards:
+ - POSIX
+ return_type: pid_t
+ arguments:
+ - type: void
- name: fsync
standards:
- POSIX
@@ -102,6 +133,14 @@ functions:
return_type: uid_t
arguments:
- type: void
+ - name: getopt
+ standards:
+ - POSIX
+ return_type: int
+ arguments:
+ - type: int
+ - type: __getoptargv_t
+ - type: const char *
- name: getpid
standards:
- POSIX
@@ -114,6 +153,12 @@ functions:
return_type: int
arguments:
- type: void
+ - name: gettid
+ standards:
+ - Linux
+ return_type: pid_t
+ arguments:
+ - type: void
- name: getuid
standards:
- POSIX
@@ -207,6 +252,14 @@ functions:
return_type: int
arguments:
- type: const char *
+ - name: swab
+ standards:
+ - POSIX
+ return_type: void
+ arguments:
+ - type: const void *__restrict
+ - type: void *
+ - type: ssize_t
- name: symlink
standards:
- POSIX
@@ -260,56 +313,3 @@ functions:
- type: size_t
guard: null
attributes: []
- - name: _exit
- standards:
- - POSIX
- return_type: _Noreturn void
- arguments:
- - type: int
- - name: execv
- standards:
- - POSIX
- return_type: int
- arguments:
- - type: const char *
- - type: __exec_argv_t
- - name: fork
- standards:
- - POSIX
- return_type: pid_t
- arguments:
- - type: void
- - name: __llvm_libc_syscall
- standards:
- - POSIX
- return_type: long
- arguments:
- - type: long
- - type: long
- - type: long
- - type: long
- - type: long
- - type: long
- - type: long
- - name: getopt
- standards:
- - POSIX
- return_type: int
- arguments:
- - type: int
- - type: __getoptargv_t
- - type: const char *
- - name: swab
- standards:
- - POSIX
- return_type: void
- arguments:
- - type: const void *__restrict
- - type: void *
- - type: ssize_t
- - name: gettid
- standards:
- - Linux
- return_type: pid_t
- arguments:
- - type: void
>From 72602b557a7a708f350eb910143377753d7e36fd Mon Sep 17 00:00:00 2001
From: Aaryan Shukla <aaryanshukla at google.com>
Date: Thu, 8 Aug 2024 23:12:40 +0000
Subject: [PATCH 2/4] added script for sorting
---
libc/newhdrgen/yaml_functions_sorted.py | 39 +++++++++++++++++++++++++
1 file changed, 39 insertions(+)
create mode 100644 libc/newhdrgen/yaml_functions_sorted.py
diff --git a/libc/newhdrgen/yaml_functions_sorted.py b/libc/newhdrgen/yaml_functions_sorted.py
new file mode 100644
index 00000000000000..db19edf7481de2
--- /dev/null
+++ b/libc/newhdrgen/yaml_functions_sorted.py
@@ -0,0 +1,39 @@
+# ex: python3 sort_yaml_functions.py
+# ex: must be within yaml directory
+import yaml
+import os
+
+
+def sort_yaml_functions(yaml_file):
+ with open(yaml_file, "r") as f:
+ yaml_data = yaml.load(f, Loader=yaml.FullLoader)
+
+ if "functions" in yaml_data:
+ yaml_data["functions"].sort(key=lambda x: x["name"])
+
+ class IndentYamlListDumper(yaml.Dumper):
+ def increase_indent(self, flow=False, indentless=False):
+ return super(IndentYamlListDumper, self).increase_indent(flow, False)
+
+ with open(yaml_file, "w") as f:
+ yaml.dump(
+ yaml_data,
+ f,
+ Dumper=IndentYamlListDumper,
+ default_flow_style=False,
+ sort_keys=False,
+ )
+
+
+def main():
+ current_directory = os.getcwd()
+ yaml_files = [
+ file for file in os.listdir(current_directory) if file.endswith(".yaml")
+ ]
+
+ for yaml_file in yaml_files:
+ sort_yaml_functions(yaml_file)
+
+
+if __name__ == "__main__":
+ main()
>From aed9f324b503d15f48f6ed3c6562c2dd26e05c86 Mon Sep 17 00:00:00 2001
From: Aaryan Shukla <aaryanshukla at google.com>
Date: Thu, 8 Aug 2024 23:24:30 +0000
Subject: [PATCH 3/4] updated rst files for sorting script
---
libc/docs/dev/header_generation.rst | 3 +++
1 file changed, 3 insertions(+)
diff --git a/libc/docs/dev/header_generation.rst b/libc/docs/dev/header_generation.rst
index 598c8b8c8a6e8b..00a5b74347b56a 100644
--- a/libc/docs/dev/header_generation.rst
+++ b/libc/docs/dev/header_generation.rst
@@ -69,6 +69,9 @@ To add through the command line:
generated header file with the new addition in the newhdrgen directory to
examine.
+If you want to sort the functions in yaml files by alphabetical names if they
+are not already you can check out libc/newhdrgen/yaml_functions_sorted.py.
+
Testing
-------
>From 502d5be6043433fecc010082e1bc77ea202d09ed Mon Sep 17 00:00:00 2001
From: aaryanshukla <53713108+aaryanshukla at users.noreply.github.com>
Date: Fri, 9 Aug 2024 09:54:11 -0700
Subject: [PATCH 4/4] Update header_generation.rst
---
libc/docs/dev/header_generation.rst | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/libc/docs/dev/header_generation.rst b/libc/docs/dev/header_generation.rst
index 00a5b74347b56a..ce38a455e61991 100644
--- a/libc/docs/dev/header_generation.rst
+++ b/libc/docs/dev/header_generation.rst
@@ -69,8 +69,7 @@ To add through the command line:
generated header file with the new addition in the newhdrgen directory to
examine.
-If you want to sort the functions in yaml files by alphabetical names if they
-are not already you can check out libc/newhdrgen/yaml_functions_sorted.py.
+If you want to sort the functions in yaml files by alphabetical names you can check out libc/newhdrgen/yaml_functions_sorted.py.
Testing
More information about the libc-commits
mailing list