[libc][newhdrgen]sorted function names in yaml (#102544)

diff --git a/libc/newhdrgen/yaml/ctype.yaml b/libc/newhdrgen/yaml/ctype.yaml
index e5b4d11..f3108a3 100644
--- a/libc/newhdrgen/yaml/ctype.yaml
+++ b/libc/newhdrgen/yaml/ctype.yaml
@@ -16,6 +16,12 @@
     return_type: int
     arguments:
       - type: int
+  - name: isascii
+    standards:
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
   - name: isblank
     standards:
       - stdc
@@ -76,6 +82,12 @@
     return_type: int
     arguments:
       - type: int
+  - name: toascii
+    standards:
+      - GNUExtensions
+    return_type: int
+    arguments:
+      - type: int
   - name: tolower
     standards:
       - stdc
@@ -88,16 +100,4 @@
     return_type: int
     arguments:
       - type: int
-    functions:
-  - name: isascii
-    standards:
-      - POSIX
-    return_type: int
-    arguments:
-      - type: int
-  - name: toascii
-    standards:
-      - GNUExtensions
-    return_type: int
-    arguments:
-      - type: int
+    functions: null
diff --git a/libc/newhdrgen/yaml/fcntl.yaml b/libc/newhdrgen/yaml/fcntl.yaml
index a7bd199..71c0df3 100644
--- a/libc/newhdrgen/yaml/fcntl.yaml
+++ b/libc/newhdrgen/yaml/fcntl.yaml
@@ -20,7 +20,7 @@
     arguments:
       - type: int
       - type: int
-      - type: ...
+      - type: '...'
   - name: open
     standards:
       - POSIX
@@ -28,7 +28,7 @@
     arguments:
       - type: const char *
       - type: int
-      - type: ...
+      - type: '...'
   - name: openat
     standards:
       - POSIX
@@ -37,4 +37,4 @@
       - type: int
       - type: const char *
       - type: int
-      - type: ...
+      - type: '...'
diff --git a/libc/newhdrgen/yaml/fenv.yaml b/libc/newhdrgen/yaml/fenv.yaml
index 95eb93c..1010efc 100644
--- a/libc/newhdrgen/yaml/fenv.yaml
+++ b/libc/newhdrgen/yaml/fenv.yaml
@@ -12,80 +12,6 @@
     return_type: int
     arguments:
       - type: int
-  - name: fetestexcept
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: int
-  - name: fetestexceptflag
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: const fexcept_t *
-      - type: int
-  - name: feraiseexcept
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: int
-  - name: fesetround
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: int
-  - name: fegetround
-    standards:
-      - stdc
-    return_type: int
-    arguments: []
-  - name: fegetenv
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: fenv_t *
-  - name: fesetenv
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: const fenv_t *
-  - name: fegetexceptflag
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: fexcept_t *
-      - type: int
-  - name: fesetexcept
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: int
-  - name: fesetexceptflag
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: const fexcept_t *
-      - type: int
-  - name: feholdexcept
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: fenv_t *
-  - name: feupdateenv
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: const fenv_t *
   - name: fedisableexcept
     standards:
       - GNUExtensions
@@ -100,8 +26,82 @@
     arguments:
       - type: int
     attributes: []
+  - name: fegetenv
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - 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: feholdexcept
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: fenv_t *
+  - name: feraiseexcept
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: int
+  - name: fesetenv
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: const fenv_t *
+  - name: fesetexcept
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: int
+  - name: fesetexceptflag
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: const fexcept_t *
+      - type: int
+  - name: fesetround
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: int
+  - name: fetestexcept
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: int
+  - name: fetestexceptflag
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: const fexcept_t *
+      - type: int
+  - name: feupdateenv
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: const fenv_t *
diff --git a/libc/newhdrgen/yaml/gpu/rpc.yaml b/libc/newhdrgen/yaml/gpu/rpc.yaml
index 57473f7..61856bc 100644
--- a/libc/newhdrgen/yaml/gpu/rpc.yaml
+++ b/libc/newhdrgen/yaml/gpu/rpc.yaml
@@ -4,14 +4,6 @@
 enums: []
 objects: []
 functions:
-  - name: rpc_host_call
-    standards:
-      - GPUExtensions
-    return_type: void
-    arguments:
-      - type: void *
-      - type: void *
-      - type: size_t
   - name: rpc_fprintf
     standards:
       - GPUExtensions
@@ -21,3 +13,11 @@
       - type: const char *__restrict
       - type: void *
       - type: size_t
+  - name: rpc_host_call
+    standards:
+      - GPUExtensions
+    return_type: void
+    arguments:
+      - type: void *
+      - type: void *
+      - type: size_t
diff --git a/libc/newhdrgen/yaml/math.yaml b/libc/newhdrgen/yaml/math.yaml
index 080f6ac..b724ac9f 100644
--- a/libc/newhdrgen/yaml/math.yaml
+++ b/libc/newhdrgen/yaml/math.yaml
@@ -7,6 +7,92 @@
 enums: []
 objects: []
 functions:
+  - name: acosf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: acoshf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: asin
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+  - name: asinf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: asinhf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: atan2f
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+      - type: float
+  - name: atanf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: atanhf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: canonicalize
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: double
+      - type: double
+  - name: canonicalizef
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: float
+      - type: float
+  - name: canonicalizef128
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: float128
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: canonicalizef16
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: _Float16
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: canonicalizel
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: long double
+      - type: long double
   - name: cbrt
     standards:
       - stdc
@@ -19,6 +105,38 @@
     return_type: float
     arguments:
       - type: float
+  - name: ceil
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+  - name: ceilf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: ceilf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: ceilf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: ceill
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
   - name: copysign
     standards:
       - stdc
@@ -33,6 +151,22 @@
     arguments:
       - type: float
       - type: float
+  - name: copysignf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: copysignf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
   - name: copysignl
     standards:
       - stdc
@@ -40,24 +174,298 @@
     arguments:
       - type: long double
       - type: long double
-  - name: ceil
+  - name: cos
     standards:
       - stdc
     return_type: double
     arguments:
       - type: double
-  - name: ceilf
+  - name: cosf
     standards:
       - stdc
     return_type: float
     arguments:
       - type: float
-  - name: ceill
+  - name: coshf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: ddivl
     standards:
       - stdc
     return_type: long double
     arguments:
       - type: long double
+      - type: long double
+  - 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: long double
+      - type: long double
+  - name: erff
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: exp
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+  - name: exp10
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+  - name: exp10f
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: exp2
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+  - name: exp2f
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: exp2m1f
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: expf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: expm1
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+  - name: expm1f
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: f16add
+    standards:
+      - llvm_libc_ext
+    return_type: _Float16
+    arguments:
+      - type: double
+      - type: double
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: f16addf
+    standards:
+      - llvm_libc_ext
+    return_type: _Float16
+    arguments:
+      - type: float
+      - type: float
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: f16addf128
+    standards:
+      - stdc
+    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
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: f16div
+    standards:
+      - llvm_libc_ext
+    return_type: _Float16
+    arguments:
+      - type: double
+      - type: double
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: f16divf
+    standards:
+      - llvm_libc_ext
+    return_type: _Float16
+    arguments:
+      - type: float
+      - type: float
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: f16divf128
+    standards:
+      - stdc
+    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
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: f16fma
+    standards:
+      - llvm_libc_ext
+    return_type: _Float16
+    arguments:
+      - type: double
+      - type: double
+      - type: double
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: f16fmaf
+    standards:
+      - llvm_libc_ext
+    return_type: _Float16
+    arguments:
+      - type: float
+      - type: float
+      - type: float
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: f16fmaf128
+    standards:
+      - stdc
+    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: long double
+      - type: long double
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: f16mul
+    standards:
+      - llvm_libc_ext
+    return_type: _Float16
+    arguments:
+      - type: double
+      - type: double
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: f16mulf
+    standards:
+      - llvm_libc_ext
+    return_type: _Float16
+    arguments:
+      - type: float
+      - type: float
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: f16mulf128
+    standards:
+      - stdc
+    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: long double
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: f16sqrt
+    standards:
+      - llvm_libc_ext
+    return_type: _Float16
+    arguments:
+      - type: double
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: f16sqrtf
+    standards:
+      - llvm_libc_ext
+    return_type: _Float16
+    arguments:
+      - type: float
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: f16sqrtf128
+    standards:
+      - 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
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: f16sub
+    standards:
+      - llvm_libc_ext
+    return_type: _Float16
+    arguments:
+      - type: double
+      - type: double
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: f16subf
+    standards:
+      - llvm_libc_ext
+    return_type: _Float16
+    arguments:
+      - type: float
+      - type: float
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: f16subf128
+    standards:
+      - stdc
+    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: long double
+    guard: LIBC_TYPES_HAS_FLOAT16
   - name: fabs
     standards:
       - stdc
@@ -70,6 +478,20 @@
     return_type: float
     arguments:
       - type: float
+  - 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
@@ -81,15 +503,8 @@
       - stdc
     return_type: float
     arguments:
-      - type: double 
       - type: double
-  - name: faddl
-    standards:
-      - faddl
-    return_type: float
-    arguments:
-      - type: long double
-      - type: long double
+      - type: double
   - name: faddf128
     standards:
       - llvm_libc_ext
@@ -98,6 +513,13 @@
       - type: float128
       - type: float128
     guard: LIBC_TYPES_HAS_FLOAT128
+  - name: faddl
+    standards:
+      - faddl
+    return_type: float
+    arguments:
+      - type: long double
+      - type: long double
   - name: fdim
     standards:
       - stdc
@@ -112,6 +534,22 @@
     arguments:
       - type: float
       - type: float
+  - name: fdimf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: fdimf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
   - name: fdiml
     standards:
       - stdc
@@ -119,6 +557,53 @@
     arguments:
       - type: long double
       - type: long double
+  - name: fdiv
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: double
+      - type: double
+  - name: fdivf128
+    standards:
+      - llvm_libc_ext
+    return_type: float
+    arguments:
+      - type: float128
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: fdivl
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: long double
+      - type: long double
+  - name: ffma
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: double
+      - type: double
+      - type: double
+  - name: ffmaf128
+    standards:
+      - llvm_libc_ext
+    return_type: float
+    arguments:
+      - type: float128
+      - type: float128
+      - type: float128
+    guards: LIBC_TYPES_HAS_FLOAT128
+  - name: ffmal
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: long double
+      - type: long double
+      - type: long double
   - name: floor
     standards:
       - stdc
@@ -131,33 +616,42 @@
     return_type: float
     arguments:
       - type: float
+  - 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
-  - name: fmin
+  - name: fma
     standards:
       - stdc
     return_type: double
     arguments:
       - type: double
       - type: double
-  - name: fminf
+      - type: double
+  - name: fmaf
     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
+      - type: float
   - name: fmax
     standards:
       - stdc
@@ -172,13 +666,22 @@
     arguments:
       - type: float
       - type: float
-  - name: fmaxl
+  - name: fmaxf128
     standards:
       - stdc
-    return_type: long double
+    return_type: float128
     arguments:
-      - type: long double
-      - type: long double
+      - 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
@@ -186,14 +689,74 @@
     arguments:
       - type: double
       - type: double
-  - name: fmaximumf
+  - name: fmaximum_mag
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+      - type: double
+  - name: fmaximum_mag_num
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+      - type: double
+  - name: fmaximum_mag_numf
     standards:
       - stdc
     return_type: float
     arguments:
       - type: float
       - type: float
-  - name: fmaximuml
+  - name: fmaximum_mag_numf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: fmaximum_mag_numf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: fmaximum_mag_numl
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
+      - type: long double
+  - name: fmaximum_magf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+      - type: float
+  - name: fmaximum_magf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - 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
@@ -214,6 +777,22 @@
     arguments:
       - type: float
       - type: float
+  - name: fmaximum_numf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: fmaximum_numf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
   - name: fmaximum_numl
     standards:
       - stdc
@@ -221,48 +800,73 @@
     arguments:
       - type: long double
       - type: long double
-  - name: fmaximum_mag
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-      - type: double
-  - name: fmaximum_magf
+  - name: fmaximumf
     standards:
       - stdc
     return_type: float
     arguments:
       - type: float
       - type: float
-  - name: fmaximum_magl
+  - name: fmaximumf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: fmaximumf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: fmaximuml
     standards:
       - stdc
     return_type: long double
     arguments:
       - type: long double
       - type: long double
-  - name: fmaximum_mag_num
+  - name: fmaxl
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
+      - type: long double
+  - name: fmin
     standards:
       - stdc
     return_type: double
     arguments:
       - type: double
       - type: double
-  - name: fmaximum_mag_numf
+  - name: fminf
     standards:
       - stdc
     return_type: float
     arguments:
       - type: float
       - type: float
-  - name: fmaximum_mag_numl
+  - name: fminf128
     standards:
       - stdc
-    return_type: long double
+    return_type: float128
     arguments:
-      - type: long double
-      - type: long double
+      - type: float128
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: fminf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
   - name: fminimum
     standards:
       - stdc
@@ -270,14 +874,74 @@
     arguments:
       - type: double
       - type: double
-  - name: fminimumf
+  - name: fminimum_mag
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+      - type: double
+  - name: fminimum_mag_num
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+      - type: double
+  - name: fminimum_mag_numf
     standards:
       - stdc
     return_type: float
     arguments:
       - type: float
       - type: float
-  - name: fminimuml
+  - name: fminimum_mag_numf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: fminimum_mag_numf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - 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
+  - name: fminimum_magf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+      - type: float
+  - name: fminimum_magf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - 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
@@ -298,64 +962,59 @@
     arguments:
       - type: float
       - type: float
-  - name: fminimum_mag
+  - name: fminimum_numf128
     standards:
       - stdc
-    return_type: double
+    return_type: float128
     arguments:
-      - type: double
-      - type: double
-  - name: fminimum_magf
+      - type: float128
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: fminimum_numf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: fminimumf
     standards:
       - stdc
     return_type: float
     arguments:
       - type: float
       - type: float
-  - name: fminimum_magl
+  - name: fminimumf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: fminimumf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: fminimuml
     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
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-      - type: float
-  - name: fminimum_mag_numl
+  - name: fminl
     standards:
       - stdc
     return_type: long double
     arguments:
       - type: long double
       - type: long double
-  - name: fma
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-      - type: double
-      - type: double
-  - name: fmaf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-      - type: float
-      - type: float
   - name: fmod
     standards:
       - stdc
@@ -370,6 +1029,22 @@
     arguments:
       - type: float
       - type: float
+  - name: fmodf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: fmodf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
   - name: fmodl
     standards:
       - stdc
@@ -384,6 +1059,14 @@
     arguments:
       - type: double
       - type: double
+  - name: fmulf128
+    standards:
+      - llvm_libc_ext
+    return_type: float
+    arguments:
+      - type: float128
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
   - name: fmull
     standards:
       - stdc
@@ -391,13 +1074,6 @@
     arguments:
       - type: long double
       - type: long double
-  - name: dmull
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: long double
-      - type: long double
   - name: frexp
     standards:
       - stdc
@@ -412,6 +1088,22 @@
     arguments:
       - type: float
       - 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
@@ -435,6 +1127,24 @@
       - type: float
       - 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
@@ -459,6 +1169,24 @@
       - type: float
       - type: int
       - type: unsigned int
+  - name: fromfpxf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+      - type: int
+      - type: unsigned int
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: fromfpxf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: int
+      - type: unsigned int
+    guard: LIBC_TYPES_HAS_FLOAT16
   - name: fromfpxl
     standards:
       - stdc
@@ -467,54 +1195,60 @@
       - type: long double
       - type: int
       - type: unsigned int
-  - name: ufromfp
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-      - type: int
-      - type: unsigned int
-  - name: ufromfpf
+  - name: fsub
     standards:
       - stdc
     return_type: float
     arguments:
-      - type: float
-      - type: int
-      - type: unsigned int
-  - name: ufromfpl
-    standards:
-      - stdc
-    return_type: long double
-    arguments:
-      - type: long double
-      - type: int
-      - type: unsigned int
-  - name: ufromfpx
-    standards:
-      - stdc
-    return_type: double
-    arguments:
       - type: double
-      - type: int
-      - type: unsigned int
-  - name: ufromfpxf
+      - type: double
+  - name: fsubf128
+    standards:
+      - llvm_libc_ext
+    return_type: float
+    arguments:
+      - type: float128
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: fsubl
     standards:
       - stdc
     return_type: float
     arguments:
-      - type: float
-      - type: int
-      - type: unsigned int
-  - name: ufromfpxl
+      - type: long double
+      - type: long double
+  - name: getpayload
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double *
+  - name: getpayloadf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float *
+  - name: getpayloadf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128 *
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: getpayloadf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16 *
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: getpayloadl
     standards:
       - stdc
     return_type: long double
     arguments:
-      - type: long double
-      - type: int
-      - type: unsigned int
+      - type: long double *
   - name: hypot
     standards:
       - stdc
@@ -541,6 +1275,20 @@
     return_type: int
     arguments:
       - type: float
+  - name: ilogbf128
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: ilogbf16
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
   - name: ilogbl
     standards:
       - stdc
@@ -565,24 +1313,6 @@
     return_type: int
     arguments:
       - type: long double
-  - name: llogb
-    standards:
-      - stdc
-    return_type: long
-    arguments:
-      - type: double
-  - name: llogbf
-    standards:
-      - stdc
-    return_type: long
-    arguments:
-      - type: float
-  - name: llogbl
-    standards:
-      - stdc
-    return_type: long
-    arguments:
-      - type: long double
   - name: ldexp
     standards:
       - stdc
@@ -597,6 +1327,22 @@
     arguments:
       - type: float
       - type: int
+  - name: ldexpf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+      - type: int
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: ldexpf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: int
+    guard: LIBC_TYPES_HAS_FLOAT16
   - name: ldexpl
     standards:
       - stdc
@@ -604,6 +1350,147 @@
     arguments:
       - type: long double
       - type: int
+  - name: lgamma
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+  - name: lgamma_r
+    standards:
+      - gnu
+    return_type: double
+    arguments:
+      - type: double
+      - type: int *
+  - name: lgammaf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: lgammaf_r
+    standards:
+      - gnu
+    return_type: float
+    arguments:
+      - type: float
+      - type: int *
+  - name: lgammal
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
+  - name: lgammal_r
+    standards:
+      - gnu
+    return_type: long double
+    arguments:
+      - type: long double
+      - type: int *
+  - name: llogb
+    standards:
+      - stdc
+    return_type: long
+    arguments:
+      - type: double
+  - name: llogbf
+    standards:
+      - stdc
+    return_type: long
+    arguments:
+      - type: float
+  - name: llogbf128
+    standards:
+      - stdc
+    return_type: long
+    arguments:
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: llogbf16
+    standards:
+      - stdc
+    return_type: long
+    arguments:
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: llogbl
+    standards:
+      - stdc
+    return_type: long
+    arguments:
+      - type: long double
+  - name: llrint
+    standards:
+      - stdc
+    return_type: long long
+    arguments:
+      - type: double
+  - name: llrintf
+    standards:
+      - stdc
+    return_type: long long
+    arguments:
+      - type: float
+  - name: llrintf128
+    standards:
+      - stdc
+    return_type: long long
+    arguments:
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: llrintf16
+    standards:
+      - stdc
+    return_type: long long
+    arguments:
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: llrintl
+    standards:
+      - stdc
+    return_type: long long
+    arguments:
+      - type: long double
+  - name: llround
+    standards:
+      - stdc
+    return_type: long long
+    arguments:
+      - type: double
+  - name: llroundf
+    standards:
+      - stdc
+    return_type: long long
+    arguments:
+      - type: float
+  - name: llroundf128
+    standards:
+      - stdc
+    return_type: long long
+    arguments:
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: llroundf16
+    standards:
+      - stdc
+    return_type: long long
+    arguments:
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: llroundl
+    standards:
+      - stdc
+    return_type: long long
+    arguments:
+      - type: long double
+  - name: log
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
   - name: log10
     standards:
       - stdc
@@ -640,18 +1527,6 @@
     return_type: float
     arguments:
       - type: float
-  - name: log
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-  - name: logf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
   - name: logb
     standards:
       - stdc
@@ -664,12 +1539,96 @@
     return_type: float
     arguments:
       - type: float
+  - name: logbf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: logbf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
   - name: logbl
     standards:
       - stdc
     return_type: long double
     arguments:
       - type: long double
+  - name: logf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: lrint
+    standards:
+      - stdc
+    return_type: long
+    arguments:
+      - type: double
+  - name: lrintf
+    standards:
+      - stdc
+    return_type: long
+    arguments:
+      - type: float
+  - name: lrintf128
+    standards:
+      - stdc
+    return_type: long
+    arguments:
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: lrintf16
+    standards:
+      - stdc
+    return_type: long
+    arguments:
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: lrintl
+    standards:
+      - stdc
+    return_type: long
+    arguments:
+      - type: long double
+  - name: lround
+    standards:
+      - stdc
+    return_type: long
+    arguments:
+      - type: double
+  - name: lroundf
+    standards:
+      - stdc
+    return_type: long
+    arguments:
+      - type: float
+  - name: lroundf128
+    standards:
+      - stdc
+    return_type: long
+    arguments:
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: lroundf16
+    standards:
+      - stdc
+    return_type: long
+    arguments:
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: lroundl
+    standards:
+      - stdc
+    return_type: long
+    arguments:
+      - type: long double
   - name: modf
     standards:
       - stdc
@@ -684,6 +1643,22 @@
     arguments:
       - type: float
       - type: float *
+  - name: modff128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+      - type: float128 *
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: modff16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: _Float16 *
+    guard: LIBC_TYPES_HAS_FLOAT16
   - name: modfl
     standards:
       - stdc
@@ -691,18 +1666,557 @@
     arguments:
       - type: long double
       - type: long double *
-  - name: cos
+  - name: nan
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: const char *
+  - name: nanf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: const char *
+  - name: nanf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: const char *
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: nanf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: const char *
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: nanl
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: const char *
+  - name: nearbyint
     standards:
       - stdc
     return_type: double
     arguments:
       - type: double
-  - name: cosf
+  - name: nearbyintf
     standards:
       - stdc
     return_type: float
     arguments:
       - type: float
+  - name: nearbyintf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: nearbyintf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: nearbyintl
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
+  - name: nextafter
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+      - type: double
+  - name: nextafterf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+      - type: float
+  - name: nextafterf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: nextafterf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: nextafterl
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
+      - type: long double
+  - name: nextdown
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+  - name: nextdownf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: nextdownf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: nextdownf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: nextdownl
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
+  - name: nexttoward
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+      - type: long double
+  - name: nexttowardf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+      - type: long double
+  - name: nexttowardf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: nexttowardl
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
+      - type: long double
+  - name: nextup
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+  - name: nextupf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: nextupf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: nextupf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: nextupl
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
+  - name: pow
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+      - type: double
+  - name: powf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+      - 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: double
+    arguments:
+      - type: double
+      - type: double
+  - name: remainderf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+      - type: float
+  - name: remainderf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: remainderf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: remainderl
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
+      - type: long double
+  - name: remquo
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+      - type: double
+      - type: int *
+  - name: remquof
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - 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: _Float16
+      - type: int *
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: remquol
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
+      - type: long double
+      - type: int *
+  - name: rint
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+  - name: rintf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: rintf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: rintf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: rintl
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
+  - name: round
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+  - name: roundeven
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+  - name: roundevenf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: roundevenf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: roundevenf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: roundevenl
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
+  - name: roundf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+  - name: roundf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: roundf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: roundl
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
+  - name: scalbln
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+      - type: long
+  - name: scalblnf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+      - type: long
+  - name: scalblnf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+      - type: long
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: scalblnf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: long
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: scalblnf16
+    standards:
+      - stdc
+    return_type: float16
+    arguments:
+      - type: float16
+      - type: long
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: scalblnl
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
+      - type: long
+  - name: scalbn
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+      - type: int
+  - name: scalbnf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+      - type: int
+  - name: scalbnf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+      - type: int
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: scalbnf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: int
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: scalbnl
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
+      - type: int
+  - name: setpayload
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: double *
+      - type: double
+  - name: setpayloadf
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: float *
+      - type: float
+  - name: setpayloadf128
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: float128 *
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: setpayloadf16
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: _Float16 *
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: setpayloadl
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: long double *
+      - type: long double
+  - name: setpayloadsig
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double *
+      - type: double
+  - name: setpayloadsigf
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: float *
+      - type: float
+  - name: setpayloadsigf128
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: float128 *
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
+  - name: setpayloadsigf16
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: _Float16 *
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: setpayloadsigl
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: long double *
+      - type: long double
   - name: sin
     standards:
       - stdc
@@ -723,257 +2237,12 @@
     return_type: float
     arguments:
       - type: float
-  - name: tan
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-  - name: tanf
+  - name: sinhf
     standards:
       - stdc
     return_type: float
     arguments:
       - type: float
-  - name: erff
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: exp
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-  - name: expf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: exp2
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-  - name: exp2f
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: exp2m1f
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: expm1
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-  - name: expm1f
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: exp10
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-  - name: exp10f
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: remainder
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-      - type: double
-  - name: remainderf
-    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
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - 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
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-      - type: float
-      - type: int *
-  - name: remquol
-    standards:
-      - stdc
-    return_type: long double
-    arguments:
-      - type: long double
-      - type: long double
-      - type: int *
-  - name: round
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-  - name: roundf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: roundl
-    standards:
-      - stdc
-    return_type: long double
-    arguments:
-      - type: long double
-  - name: roundeven
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-  - name: roundevenf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: roundevenl
-    standards:
-      - stdc
-    return_type: long double
-    arguments:
-      - type: long double
-  - name: lround
-    standards:
-      - stdc
-    return_type: long
-    arguments:
-      - type: double
-  - name: lroundf
-    standards:
-      - stdc
-    return_type: long
-    arguments:
-      - type: float
-  - name: lroundl
-    standards:
-      - stdc
-    return_type: long
-    arguments:
-      - type: long double
-  - name: llround
-    standards:
-      - stdc
-    return_type: long long
-    arguments:
-      - type: double
-  - name: llroundf
-    standards:
-      - stdc
-    return_type: long long
-    arguments:
-      - type: float
-  - name: llroundl
-    standards:
-      - stdc
-    return_type: long long
-    arguments:
-      - type: long double
-  - name: rint
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-  - name: rintf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: rintl
-    standards:
-      - stdc
-    return_type: long double
-    arguments:
-      - type: long double
-  - name: lrint
-    standards:
-      - stdc
-    return_type: long
-    arguments:
-      - type: double
-  - name: lrintf
-    standards:
-      - stdc
-    return_type: long
-    arguments:
-      - type: float
-  - name: lrintl
-    standards:
-      - stdc
-    return_type: long
-    arguments:
-      - type: long double
-  - name: llrint
-    standards:
-      - stdc
-    return_type: long long
-    arguments:
-      - type: double
-  - name: llrintf
-    standards:
-      - stdc
-    return_type: long long
-    arguments:
-      - type: float
-  - name: llrintl
-    standards:
-      - stdc
-    return_type: long long
-    arguments:
-      - type: long double
   - name: sqrt
     standards:
       - stdc
@@ -986,159 +2255,26 @@
     return_type: float
     arguments:
       - type: float
+  - name: sqrtf128
+    standards:
+      - stdc
+    return_type: float128
+    arguments:
+      - type: float128
+    guard: LIBC_TYPES_HAS_FLOAT128
   - name: sqrtl
     standards:
       - stdc
     return_type: long double
     arguments:
       - type: long double
-  - name: trunc
+  - name: tan
     standards:
       - stdc
     return_type: double
     arguments:
       - type: double
-  - name: truncf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: truncl
-    standards:
-      - stdc
-    return_type: long double
-    arguments:
-      - type: long double
-  - name: nearbyint
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-  - name: nearbyintf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: nearbyintl
-    standards:
-      - stdc
-    return_type: long double
-    arguments:
-      - type: long double
-  - name: nextafterf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-      - type: float
-  - name: nextafter
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-      - type: double
-  - name: nextafterl
-    standards:
-      - stdc
-    return_type: long double
-    arguments:
-      - type: long double
-      - type: long double
-  - name: nexttowardf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-      - type: long double
-  - name: nexttoward
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-      - type: long double
-  - name: nexttowardl
-    standards:
-      - stdc
-    return_type: long double
-    arguments:
-      - type: long double
-      - type: long double
-  - name: nextdown
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-  - name: nextdownf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: nextdownl
-    standards:
-      - stdc
-    return_type: long double
-    arguments:
-      - type: long double
-  - name: nextup
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-  - name: nextupf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: nextupl
-    standards:
-      - stdc
-    return_type: long double
-    arguments:
-      - type: long double
-  - name: powf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-      - type: float
-  - name: pow
-    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
-    arguments:
-      - type: float
-      - type: int
-  - name: coshf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: sinhf
+  - name: tanf
     standards:
       - stdc
     return_type: float
@@ -1150,717 +2286,6 @@
     return_type: float
     arguments:
       - type: float
-  - name: acosf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: asinf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: asin
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-  - name: atanf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: atan2f
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-      - type: float
-  - name: acoshf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: asinhf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: atanhf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: scalbn
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-      - type: int
-  - name: scalbnf
-    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
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: const char *
-  - name: nan
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: const char *
-  - name: nanl
-    standards:
-      - stdc
-    return_type: long double
-    arguments:
-      - type: const char *
-  - name: canonicalize
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: double
-      - type: double
-  - name: canonicalizef
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: float
-      - type: float
-  - name: canonicalizel
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: long double
-      - type: long double
-  - name: canonicalizef128
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: canonicalizef16
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: _Float16
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: ceilf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: copysignf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: f16add
-    standards:
-      - llvm_libc_ext
-    return_type: _Float16
-    arguments:
-      - type: double
-      - type: double
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: f16addf
-    standards:
-      - llvm_libc_ext
-    return_type: _Float16
-    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
-    standards:
-      - llvm_libc_ext
-    return_type: _Float16
-    arguments:
-      - type: double
-      - type: double
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: f16divf
-    standards:
-      - llvm_libc_ext
-    return_type: _Float16
-    arguments:
-      - type: float
-      - type: float
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: f16divl
-    standards:
-      - llvm_libc_ext
-    return_type: _Float16
-    arguments:
-      - type: long double
-      - type: long double
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: f16fma
-    standards:
-      - llvm_libc_ext
-    return_type: _Float16
-    arguments:
-      - type: double
-      - type: double
-      - type: double
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: f16fmaf
-    standards:
-      - llvm_libc_ext
-    return_type: _Float16
-    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
-    standards:
-      - llvm_libc_ext
-    return_type: _Float16
-    arguments:
-      - type: double
-      - type: double
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: f16mulf
-    standards:
-      - llvm_libc_ext
-    return_type: _Float16
-    arguments:
-      - type: float
-      - type: float
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: f16mull
-    standards:
-      - llvm_libc_ext
-    return_type: _Float16
-    arguments:
-      - type: long double
-      - type: long double
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: f16sqrt
-    standards:
-      - llvm_libc_ext
-    return_type: _Float16
-    arguments:
-      - type: double
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: f16sqrtf
-    standards:
-      - llvm_libc_ext
-    return_type: _Float16
-    arguments:
-      - type: float
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: f16sqrtl
-    standards:
-      - llvm_libc_ext
-    return_type: _Float16
-    arguments:
-      - type: long double
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: f16sub
-    standards:
-      - llvm_libc_ext
-    return_type: _Float16
-    arguments:
-      - type: double
-      - type: double
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: f16subf
-    standards:
-      - llvm_libc_ext
-    return_type: _Float16
-    arguments:
-      - type: float
-      - type: float
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: f16subl
-    standards:
-      - llvm_libc_ext
-    return_type: _Float16
-    arguments:
-      - type: long double
-      - type: long double
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: fabsf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: fdimf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: floorf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: fmaxf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: fmaximum_mag_numf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: fmaximum_magf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: fmaximum_numf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: fmaximumf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: fminf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: fminimum_mag_numf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: fminimum_magf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: fminimum_numf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: fminimumf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: fmodf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: frexpf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: int *
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: fromfpf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: int
-      - type: unsigned int
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: fromfpxf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: int
-      - type: unsigned int
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: fsub
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: double
-      - type: double
-  - name: fsubl
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: long double
-      - type: long double
-  - name: fsubf128
-    standards:
-      - llvm_libc_ext
-    return_type: float
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: getpayload
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double *
-  - name: getpayloadl
-    standards:
-      - stdc
-    return_type: long double
-    arguments:
-      - type: long double *
-  - name: getpayloadf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float *
-  - name: getpayloadf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16 *
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: getpayloadf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128 *
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: ilogbf16
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: ldexpf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: int
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: llogbf16
-    standards:
-      - stdc
-    return_type: long
-    arguments:
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: llrintf16
-    standards:
-      - stdc
-    return_type: long long
-    arguments:
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: llroundf16
-    standards:
-      - stdc
-    return_type: long long
-    arguments:
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: logbf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: lrintf16
-    standards:
-      - stdc
-    return_type: long
-    arguments:
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: lroundf16
-    standards:
-      - stdc
-    return_type: long
-    arguments:
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: modff16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16 *
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: nanf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: const char *
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: nearbyintf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: nextafterf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: nextdownf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: nexttowardf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: nextupf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: remainderf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: remquof16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: _Float16
-      - type: int *
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: rintf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: roundevenf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: roundf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: scalblnf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: long
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: scalbnf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: int
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: setpayload
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: double *
-      - type: double
-  - name: setpayloadf
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: float *
-      - type: float
-  - name: setpayloadl
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: long double *
-      - type: long double
-  - name: setpayloadf16
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: _Float16 *
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: setpayloadf128
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: float128 *
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: setpayloadsig
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double *
-      - type: double
-  - name: setpayloadsigf
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: float *
-      - type: float
-  - name: setpayloadsigl
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: long double *
-      - type: long double
-  - name: setpayloadsigf16
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: _Float16 *
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: setpayloadsigf128
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: float128 *
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
   - name: totalorder
     standards:
       - stdc
@@ -1875,21 +2300,6 @@
     arguments:
       - type: const float *
       - type: const float *
-  - name: totalorderl
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: const long double *
-      - type: const long double *
-  - name: totalorderf16
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: const _Float16 *
-      - type: const _Float16 *
-    guard: LIBC_TYPES_HAS_FLOAT16
   - name: totalorderf128
     standards:
       - stdc
@@ -1898,6 +2308,21 @@
       - type: const float128 *
       - type: const float128 *
     guard: LIBC_TYPES_HAS_FLOAT128
+  - name: totalorderf16
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: const _Float16 *
+      - type: const _Float16 *
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: totalorderl
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: const long double *
+      - type: const long double *
   - name: totalordermagf16
     standards:
       - stdc
@@ -1906,439 +2331,18 @@
       - type: _Float16 *
       - type: _Float16 *
     guard: LIBC_TYPES_HAS_FLOAT16
-  - name: truncf16
+  - name: trunc
     standards:
       - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: ufromfpf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: int
-      - type: unsigned int
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: ufromfpxf16
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: _Float16
-      - type: int
-      - type: unsigned int
-    guard: LIBC_TYPES_HAS_FLOAT16
-  - name: f16addf128
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
-  - name: f16divf128
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
-  - name: f16fmaf128
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: float128
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
-  - name: f16mulf128
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
-  - name: f16sqrtf128
-    standards:
-      - llvm_libc_ext
-    return_type: _Float16
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
-  - name: f16subf128
-    standards:
-      - stdc
-    return_type: _Float16
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
-  - name: ceilf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: copysignf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: fabsf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: fdimf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: fdiv
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: double
-      - type: double
-  - name: fdivl
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: long double
-      - type: long double
-  - name: fdivf128
-    standards:
-      - llvm_libc_ext
-    return_type: float
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: ffma
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: double
-      - type: double
-      - type: double
-  - name: ffmal
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: long double
-      - type: long double
-      - type: long double
-  - name: ffmaf128
-    standards:
-      - llvm_libc_ext
-    return_type: float
-    arguments:
-      - type: float128
-      - type: float128
-      - type: float128
-    guards: LIBC_TYPES_HAS_FLOAT128
-  - name: floorf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: fmaxf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: fmaximum_mag_numf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: fmaximum_magf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: fmaximum_numf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: fmaximumf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: fminf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: fminimum_mag_numf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: fminimum_magf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: fminimum_numf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: fminimumf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: fmodf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: fmulf128
-    standards:
-      - llvm_libc_ext
-    return_type: float
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: dmulf128
-    standards:
-      - llvm_libc_ext
     return_type: double
     arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: frexpf128
+      - type: double
+  - name: truncf
     standards:
       - stdc
-    return_type: float128
+    return_type: float
     arguments:
-      - type: float128
-      - type: int *
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: fromfpf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: int
-      - type: unsigned int
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: fromfpxf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: int
-      - type: unsigned int
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: ilogbf128
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: ldexpf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: int
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: llogbf128
-    standards:
-      - stdc
-    return_type: long
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: llrintf128
-    standards:
-      - stdc
-    return_type: long long
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: llroundf128
-    standards:
-      - stdc
-    return_type: long long
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: logbf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: lrintf128
-    standards:
-      - stdc
-    return_type: long
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: lroundf128
-    standards:
-      - stdc
-    return_type: long
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: modff128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: float128 *
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: nanf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: const char *
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: nearbyintf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: nextafterf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: nextdownf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: nextupf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: remquof128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: float128
-      - type: int *
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: rintf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: roundevenf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: roundf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: scalbnf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: int
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: sqrtf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-    guard: LIBC_TYPES_HAS_FLOAT128
+      - type: float
   - name: truncf128
     standards:
       - stdc
@@ -2346,6 +2350,35 @@
     arguments:
       - type: float128
     guard: LIBC_TYPES_HAS_FLOAT128
+  - name: truncf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: truncl
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
+  - name: ufromfp
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+      - type: int
+      - type: unsigned int
+  - name: ufromfpf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+      - type: int
+      - type: unsigned int
   - name: ufromfpf128
     standards:
       - stdc
@@ -2355,6 +2388,39 @@
       - type: int
       - type: unsigned int
     guard: LIBC_TYPES_HAS_FLOAT128
+  - name: ufromfpf16
+    standards:
+      - stdc
+    return_type: _Float16
+    arguments:
+      - type: _Float16
+      - type: int
+      - type: unsigned int
+    guard: LIBC_TYPES_HAS_FLOAT16
+  - name: ufromfpl
+    standards:
+      - stdc
+    return_type: long double
+    arguments:
+      - type: long double
+      - type: int
+      - type: unsigned int
+  - name: ufromfpx
+    standards:
+      - stdc
+    return_type: double
+    arguments:
+      - type: double
+      - type: int
+      - type: unsigned int
+  - name: ufromfpxf
+    standards:
+      - stdc
+    return_type: float
+    arguments:
+      - type: float
+      - type: int
+      - type: unsigned int
   - name: ufromfpxf128
     standards:
       - stdc
@@ -2364,86 +2430,20 @@
       - type: int
       - type: unsigned int
     guard: LIBC_TYPES_HAS_FLOAT128
-  - name: scalbln
-    standards: 
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-      - type: long
-  - name: scalblnl
+  - name: ufromfpxf16
     standards:
       - stdc
-    return_type: long double
+    return_type: _Float16
     arguments:
-      - type: long double
-      - type: long
-  - name: scalblnf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-      - type: long
-  - name: scalblnf16
-    standards:
-      - stdc
-    return_type: float16
-    arguments:
-      - type: float16
-      - type: long
+      - type: _Float16
+      - type: int
+      - type: unsigned int
     guard: LIBC_TYPES_HAS_FLOAT16
-  - name: scalblnf128
-    standards:
-      - stdc
-    return_type: float128
-    arguments:
-      - type: float128
-      - type: long
-    guard: LIBC_TYPES_HAS_FLOAT128
-  - name: lgamma
-    standards:
-      - stdc
-    return_type: double
-    arguments:
-      - type: double
-  - name: lgammaf
-    standards:
-      - stdc
-    return_type: float
-    arguments:
-      - type: float
-  - name: lgammal
+  - name: ufromfpxl
     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
-    arguments:
-      - type: float
-      - type: int *
-  - name: lgammal_r
-    standards:
-      - gnu
-    return_type: long double
-    arguments:
-      - type: long double
-      - type: int *
-  - name: ddivl
-    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 f3c59ee..b9068c3 100644
--- a/libc/newhdrgen/yaml/pthread.yaml
+++ b/libc/newhdrgen/yaml/pthread.yaml
@@ -31,12 +31,6 @@
     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 @@
     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 @@
     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 @@
     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 @@
     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 @@
     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 @@
     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 @@
     arguments:
       - type: pthread_key_t
       - type: const void *
-  - name: pthread_rwlock_init
+  - name: pthread_spin_destroy
     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
-    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 eaafa8f..2d4876b 100644
--- a/libc/newhdrgen/yaml/sched.yaml
+++ b/libc/newhdrgen/yaml/sched.yaml
@@ -10,6 +10,13 @@
 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 @@
     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 878b697..37d2650 100644
--- a/libc/newhdrgen/yaml/search.yaml
+++ b/libc/newhdrgen/yaml/search.yaml
@@ -19,6 +19,16 @@
     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 @@
       - 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 5de89e8..c66abb1 100644
--- a/libc/newhdrgen/yaml/signal.yaml
+++ b/libc/newhdrgen/yaml/signal.yaml
@@ -11,12 +11,6 @@
 enums: []
 objects: []
 functions:
-  - name: raise
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: int
   - name: kill
     standards:
       - POSIX
@@ -24,6 +18,12 @@
     arguments:
       - type: pid_t
       - type: int
+  - name: raise
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: int
   - name: sigaction
     standards:
       - POSIX
@@ -32,6 +32,13 @@
       - type: int
       - type: const struct sigaction *__restrict
       - type: struct sigaction *__restrict
+  - name: sigaddset
+    standards:
+      - POSIX
+    return_type: int
+    arguments:
+      - type: sigset_t *
+      - type: int
   - name: sigaltstack
     standards:
       - POSIX
@@ -46,27 +53,12 @@
     arguments:
       - type: sigset_t *
       - type: int
-  - name: sigaddset
-    standards:
-      - POSIX
-    return_type: int
-    arguments:
-      - type: sigset_t *
-      - type: int
   - name: sigemptyset
     standards:
       - POSIX
     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 @@
     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 7a5b619..25d2d32 100644
--- a/libc/newhdrgen/yaml/stdbit.yaml
+++ b/libc/newhdrgen/yaml/stdbit.yaml
@@ -4,378 +4,12 @@
 enums: []
 objects: []
 functions:
-  - name: stdc_leading_zeros_uc
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned char
-  - name: stdc_leading_zeros_us
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned short
-  - name: stdc_leading_zeros_ui
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned int
-  - name: stdc_leading_zeros_ul
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long
-  - name: stdc_leading_zeros_ull
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long long
-  - name: stdc_leading_ones_uc
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned char
-  - name: stdc_leading_ones_us
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned short
-  - name: stdc_leading_ones_ui
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned int
-  - name: stdc_leading_ones_ul
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long
-  - name: stdc_leading_ones_ull
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long long
-  - name: stdc_trailing_zeros_uc
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned char
-  - name: stdc_trailing_zeros_us
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned short
-  - name: stdc_trailing_zeros_ui
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned int
-  - name: stdc_trailing_zeros_ul
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long
-  - name: stdc_trailing_zeros_ull
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long long
-  - name: stdc_trailing_ones_uc
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned char
-  - name: stdc_trailing_ones_us
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned short
-  - name: stdc_trailing_ones_ui
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned int
-  - name: stdc_trailing_ones_ul
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long
-  - name: stdc_trailing_ones_ull
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long long
-  - name: stdc_first_leading_zero_uc
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned char
-  - name: stdc_first_leading_zero_us
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned short
-  - name: stdc_first_leading_zero_ui
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned int
-  - name: stdc_first_leading_zero_ul
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long
-  - name: stdc_first_leading_zero_ull
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long long
-  - name: stdc_first_leading_one_uc
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned char
-  - name: stdc_first_leading_one_us
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned short
-  - name: stdc_first_leading_one_ui
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned int
-  - name: stdc_first_leading_one_ul
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long
-  - name: stdc_first_leading_one_ull
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long long
-  - name: stdc_first_trailing_one_uc
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned char
-  - name: stdc_first_trailing_one_us
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned short
-  - name: stdc_first_trailing_one_ui
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned int
-  - name: stdc_first_trailing_one_ul
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long
-  - name: stdc_first_trailing_one_ull
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long long
-  - name: stdc_count_zeros_uc
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned char
-  - name: stdc_count_zeros_us
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned short
-  - name: stdc_count_zeros_ui
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned int
-  - name: stdc_count_zeros_ul
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long
-  - name: stdc_count_zeros_ull
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long long
-  - name: stdc_count_ones_uc
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned char
-  - name: stdc_count_ones_us
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned short
-  - name: stdc_count_ones_ui
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned int
-  - name: stdc_count_ones_ul
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long
-  - name: stdc_count_ones_ull
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long long
-  - name: stdc_has_single_bit_uc
-    standards:
-      - stdc
-    return_type: bool
-    arguments:
-      - type: unsigned char
-  - name: stdc_has_single_bit_us
-    standards:
-      - stdc
-    return_type: bool
-    arguments:
-      - type: unsigned short
-  - name: stdc_has_single_bit_ui
-    standards:
-      - stdc
-    return_type: bool
-    arguments:
-      - type: unsigned int
-  - name: stdc_has_single_bit_ul
-    standards:
-      - stdc
-    return_type: bool
-    arguments:
-      - type: unsigned long
-  - name: stdc_has_single_bit_ull
-    standards:
-      - stdc
-    return_type: bool
-    arguments:
-      - type: unsigned long long
-  - name: stdc_bit_width_uc
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned char
-  - name: stdc_bit_width_us
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned short
-  - name: stdc_bit_width_ui
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned int
-  - name: stdc_bit_width_ul
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long
-  - name: stdc_bit_width_ull
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned long long
-  - name: stdc_bit_floor_uc
-    standards:
-      - stdc
-    return_type: unsigned char
-    arguments:
-      - type: unsigned char
-  - name: stdc_bit_floor_us
-    standards:
-      - stdc
-    return_type: unsigned short
-    arguments:
-      - type: unsigned short
-  - name: stdc_bit_floor_ui
-    standards:
-      - stdc
-    return_type: unsigned int
-    arguments:
-      - type: unsigned int
-  - name: stdc_bit_floor_ul
-    standards:
-      - stdc
-    return_type: unsigned long
-    arguments:
-      - type: unsigned long
-  - name: stdc_bit_floor_ull
-    standards:
-      - stdc
-    return_type: unsigned long long
-    arguments:
-      - type: unsigned long long
   - name: stdc_bit_ceil_uc
     standards:
       - stdc
     return_type: unsigned char
     arguments:
       - type: unsigned char
-  - name: stdc_bit_ceil_us
-    standards:
-      - stdc
-    return_type: unsigned short
-    arguments:
-      - type: unsigned short
   - name: stdc_bit_ceil_ui
     standards:
       - stdc
@@ -394,3 +28,369 @@
     return_type: unsigned long long
     arguments:
       - type: unsigned long long
+  - name: stdc_bit_ceil_us
+    standards:
+      - stdc
+    return_type: unsigned short
+    arguments:
+      - type: unsigned short
+  - name: stdc_bit_floor_uc
+    standards:
+      - stdc
+    return_type: unsigned char
+    arguments:
+      - type: unsigned char
+  - name: stdc_bit_floor_ui
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_bit_floor_ul
+    standards:
+      - stdc
+    return_type: unsigned long
+    arguments:
+      - type: unsigned long
+  - name: stdc_bit_floor_ull
+    standards:
+      - stdc
+    return_type: unsigned long long
+    arguments:
+      - type: unsigned long long
+  - name: stdc_bit_floor_us
+    standards:
+      - stdc
+    return_type: unsigned short
+    arguments:
+      - type: unsigned short
+  - name: stdc_bit_width_uc
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_bit_width_ui
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_bit_width_ul
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_bit_width_ull
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_bit_width_us
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_count_ones_uc
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_count_ones_ui
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_count_ones_ul
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_count_ones_ull
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_count_ones_us
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_count_zeros_uc
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_count_zeros_ui
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_count_zeros_ul
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_count_zeros_ull
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_count_zeros_us
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_first_leading_one_uc
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_first_leading_one_ui
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_first_leading_one_ul
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_first_leading_one_ull
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_first_leading_one_us
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_first_leading_zero_uc
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_first_leading_zero_ui
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_first_leading_zero_ul
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_first_leading_zero_ull
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_first_leading_zero_us
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_first_trailing_one_uc
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_first_trailing_one_ui
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_first_trailing_one_ul
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_first_trailing_one_ull
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_first_trailing_one_us
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_has_single_bit_uc
+    standards:
+      - stdc
+    return_type: bool
+    arguments:
+      - type: unsigned char
+  - name: stdc_has_single_bit_ui
+    standards:
+      - stdc
+    return_type: bool
+    arguments:
+      - type: unsigned int
+  - name: stdc_has_single_bit_ul
+    standards:
+      - stdc
+    return_type: bool
+    arguments:
+      - type: unsigned long
+  - name: stdc_has_single_bit_ull
+    standards:
+      - stdc
+    return_type: bool
+    arguments:
+      - type: unsigned long long
+  - name: stdc_has_single_bit_us
+    standards:
+      - stdc
+    return_type: bool
+    arguments:
+      - type: unsigned short
+  - name: stdc_leading_ones_uc
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_leading_ones_ui
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_leading_ones_ul
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_leading_ones_ull
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_leading_ones_us
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_leading_zeros_uc
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_leading_zeros_ui
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_leading_zeros_ul
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_leading_zeros_ull
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_leading_zeros_us
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_trailing_ones_uc
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_trailing_ones_ui
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_trailing_ones_ul
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_trailing_ones_ull
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long long
+  - name: stdc_trailing_ones_us
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned short
+  - name: stdc_trailing_zeros_uc
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned char
+  - name: stdc_trailing_zeros_ui
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned int
+  - name: stdc_trailing_zeros_ul
+    standards:
+      - stdc
+    return_type: unsigned int
+    arguments:
+      - type: unsigned long
+  - name: stdc_trailing_zeros_ull
+    standards:
+      - stdc
+    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 339c6aa..ca66589 100644
--- a/libc/newhdrgen/yaml/stdfix.yaml
+++ b/libc/newhdrgen/yaml/stdfix.yaml
@@ -25,13 +25,6 @@
     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 @@
     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 @@
       - 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 @@
       - 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 @@
       - 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 @@
       - 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,6 +182,20 @@
     arguments:
       - type: unsigned accum
     guard: LIBC_COMPILER_HAS_FIXED_POINT
+  - name: sqrtulk
+    standards: llvm_libc_stdfix_ext
+    return_type: unsigned long accum
+    arguments:
+      - type: unsigned long accum
+    guard: LIBC_COMPILER_HAS_FIXED_POINT
+  - name: sqrtulr
+    standards:
+      - stdc_ext
+      - llvm_libc_stdfix_ext
+    return_type: unsigned long fract
+    arguments:
+      - type: unsigned long fract
+    guard: LIBC_COMPILER_HAS_FIXED_POINT
   - name: sqrtur
     standards:
       - stdc_ext
@@ -190,20 +204,6 @@
     arguments:
       - type: unsigned fract
     guard: LIBC_COMPILER_HAS_FIXED_POINT
-  - name: sqrtulr
-    standards:
-      - 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
-    arguments:
-      - type: unsigned long accum
-    guard: LIBC_COMPILER_HAS_FIXED_POINT
   - name: uhksqrtus
     standards:
       - stdc_ext
diff --git a/libc/newhdrgen/yaml/stdio.yaml b/libc/newhdrgen/yaml/stdio.yaml
index 776e9ae..4343869 100644
--- a/libc/newhdrgen/yaml/stdio.yaml
+++ b/libc/newhdrgen/yaml/stdio.yaml
@@ -20,143 +20,14 @@
   - object_name: stderr
     object_type: FILE *
 functions:
-  - name: remove
+  - name: asprintf
     standards:
-      - stdc
+      - GNUExtensions
     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: 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
-    return_type: int
-    arguments:
-      - type: FILE *__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 @@
     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 @@
     return_type: int
     arguments:
       - type: FILE *
+  - name: fflush
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: FILE *
   - name: fgetc
     standards:
       - stdc
@@ -225,12 +103,18 @@
       - 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 @@
     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 @@
     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 @@
       - 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 @@
       - 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 @@
     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 @@
       - 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 @@
     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 ac5e226..081da53 100644
--- a/libc/newhdrgen/yaml/stdlib.yaml
+++ b/libc/newhdrgen/yaml/stdlib.yaml
@@ -14,24 +14,55 @@
 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 @@
       - 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 @@
     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 @@
     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 @@
       - 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 @@
       - 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 3287c8b..387ea9e 100644
--- a/libc/newhdrgen/yaml/string.yaml
+++ b/libc/newhdrgen/yaml/string.yaml
@@ -5,21 +5,22 @@
 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,11 +30,44 @@
       - 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
       - type: size_t
@@ -53,21 +87,28 @@
       - 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,14 +116,20 @@
     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
+      - type: int
+  - name: strchrnul
+    standards:
+      - GNUExtensions
+    return_type: char *
+    arguments:
+      - type: const char *
+      - type: int
   - name: strcmp
     standards:
       - stdc
@@ -97,29 +144,13 @@
     arguments:
       - type: const char *
       - type: const char *
-  - name: strncmp
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: const char *
-      - type: const char *
-      - type: size_t
-  - name: strxfrm
-    standards:
-      - stdc
-    return_type: size_t
-    arguments:
-      - type: char *__restrict
-      - type: const char *__restrict
-      - type: size_t
-  - name: strchr
+  - name: strcpy
     standards:
       - stdc
     return_type: char *
     arguments:
-      - type: const char *
-      - type: int
+      - type: char *__restrict
+      - type: const char *__restrict
   - name: strcspn
     standards:
       - stdc
@@ -131,6 +162,66 @@
     return_type: char *
     arguments:
       - type: const char *
+  - name: strerror
+    standards:
+      - stdc
+    return_type: char *
+    arguments:
+      - type: int
+  - name: strerror_r
+    standards:
+      - GNUExtensions
+    return_type: char *
+    arguments:
+      - type: int
+      - type: char *
+      - type: size_t
+  - name: strlcat
+    standards:
+      - BSDExtensions
+    return_type: size_t
+    arguments:
+      - type: const char *__restrict
+      - type: const char *__restrict
+      - type: size_t
+  - name: strlcpy
+    standards:
+      - BSDExtensions
+    return_type: size_t
+    arguments:
+      - type: const char *__restrict
+      - type: const char *__restrict
+      - type: size_t
+  - name: strlen
+    standards:
+      - stdc
+    return_type: size_t
+    arguments:
+      - type: const char *
+  - name: strncat
+    standards:
+      - stdc
+    return_type: char *
+    arguments:
+      - type: char *
+      - type: const char *
+      - type: size_t
+  - name: strncmp
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: const char *
+      - type: const char *
+      - type: size_t
+  - name: strncpy
+    standards:
+      - stdc
+    return_type: char *
+    arguments:
+      - type: char *__restrict
+      - type: const char *__restrict
+      - type: size_t
   - name: strndup
     standards:
       - stdc
@@ -138,6 +229,13 @@
     arguments:
       - type: const char *
       - type: size_t
+  - name: strnlen
+    standards:
+      - POSIX
+    return_type: size_t
+    arguments:
+      - type: const char *
+      - type: size_t
   - name: strpbrk
     standards:
       - stdc
@@ -152,6 +250,19 @@
     arguments:
       - type: const char *
       - type: int
+  - name: strsep
+    standards:
+      - BSDExtensions
+    return_type: char *
+    arguments:
+      - type: char **__restrict
+      - type: const char *__restrict
+  - name: strsignal
+    standards:
+      - POSIX
+    return_type: char *
+    arguments:
+      - type: int
   - name: strspn
     standards:
       - stdc
@@ -173,57 +284,6 @@
     arguments:
       - type: char *__restrict
       - type: const char *__restrict
-  - name: strerror
-    standards:
-      - stdc
-    return_type: char *
-    arguments:
-      - type: int
-  - name: strlen
-    standards:
-      - stdc
-    return_type: size_t
-    arguments:
-      - type: const char *
-  - name: memccpy
-    standards:
-      - POSIX
-    return_type: void *
-    arguments:
-      - type: void *__restrict
-      - type: const void *__restrict
-      - type: int
-      - type: size_t
-  - name: mempcpy
-    standards:
-      - POSIX
-    return_type: void *
-    arguments:
-      - type: void *__restrict
-      - type: const void *__restrict
-      - type: size_t
-  - name: stpcpy
-    standards:
-      - POSIX
-    return_type: char *
-    arguments:
-      - type: char *__restrict
-      - type: const char *__restrict
-  - name: stpncpy
-    standards:
-      - POSIX
-    return_type: char *
-    arguments:
-      - type: char *__restrict
-      - type: const char *__restrict
-      - type: size_t
-  - name: strnlen
-    standards:
-      - POSIX
-    return_type: size_t
-    arguments:
-      - type: const char *
-      - type: size_t
   - name: strtok_r
     standards:
       - POSIX
@@ -232,71 +292,11 @@
       - type: char *__restrict
       - type: const char *__restrict
       - type: char ** __restrict
-  - name: strsignal
+  - name: strxfrm
     standards:
-      - POSIX
-    return_type: char *
-    arguments:
-      - type: int
-  - name: memmem
-    standards:
-      - GNUExtensions
-    return_type: void *
-    arguments:
-      - type: const void *
-      - type: size_t
-      - type: const void *
-      - type: size_t
-  - name: memrchr
-    standards:
-      - GNUExtensions
-    return_type: void *
-    arguments:
-      - type: const void *
-      - type: int
-      - type: size_t
-  - name: strerror_r
-    standards:
-      - GNUExtensions
-    return_type: char *
-    arguments:
-      - type: int
-      - type: char *
-      - type: size_t
-  - name: strcasestr
-    standards:
-      - GNUExtensions
-    return_type: char *
-    arguments:
-      - type: const char *
-      - type: const char *
-  - name: strchrnul
-    standards:
-      - GNUExtensions
-    return_type: char *
-    arguments:
-      - type: const char *
-      - type: int
-  - name: strlcat
-    standards:
-      - BSDExtensions
+      - stdc
     return_type: size_t
     arguments:
-      - type: const char *__restrict
+      - type: char *__restrict
       - type: const char *__restrict
       - type: size_t
-  - name: strlcpy
-    standards:
-      - BSDExtensions
-    return_type: size_t
-    arguments:
-      - type: const char *__restrict
-      - type: const char *__restrict
-      - type: size_t
-  - name: strsep
-    standards:
-      - BSDExtensions
-    return_type: char *
-    arguments:
-      - type: char **__restrict
-      - type: const char *__restrict
diff --git a/libc/newhdrgen/yaml/strings.yaml b/libc/newhdrgen/yaml/strings.yaml
index eda8a5a..ca91b62 100644
--- a/libc/newhdrgen/yaml/strings.yaml
+++ b/libc/newhdrgen/yaml/strings.yaml
@@ -4,6 +4,14 @@
 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,14 +27,20 @@
     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
+      - type: const char *
+      - type: int
+  - name: rindex
+    standards:
+      - BSDExtensions
+    return_type: char *
+    arguments:
+      - type: const char *
+      - type: int
   - name: strcasecmp
     standards:
       - BSDExtensions
@@ -42,17 +56,3 @@
       - type: const char *
       - type: const char *
       - type: size_t
-  - name: index
-    standards:
-      - BSDExtensions
-    return_type: char *
-    arguments:
-      - type: const char *
-      - type: int
-  - name: rindex
-    standards:
-      - BSDExtensions
-    return_type: char *
-    arguments:
-      - type: const char *
-      - type: int
diff --git a/libc/newhdrgen/yaml/sys/epoll.yaml b/libc/newhdrgen/yaml/sys/epoll.yaml
index 3b55ce4..ee188c1 100644
--- a/libc/newhdrgen/yaml/sys/epoll.yaml
+++ b/libc/newhdrgen/yaml/sys/epoll.yaml
@@ -29,15 +29,6 @@
       - type: int
       - type: int
       - type: struct epoll_event *
-  - name: epoll_wait
-    standards:
-      - Linux
-    return_type: int
-    arguments:
-      - type: int
-      - type: struct epoll_event *
-      - type: int
-      - type: int
   - name: epoll_pwait
     standards:
       - Linux
@@ -58,3 +49,12 @@
       - type: int
       - type: const struct timespec *
       - type: const sigset_t *
+  - name: epoll_wait
+    standards:
+      - Linux
+    return_type: int
+    arguments:
+      - type: int
+      - type: struct epoll_event *
+      - type: int
+      - type: int
diff --git a/libc/newhdrgen/yaml/sys/mman.yaml b/libc/newhdrgen/yaml/sys/mman.yaml
index efddcaf..272e7e2 100644
--- a/libc/newhdrgen/yaml/sys/mman.yaml
+++ b/libc/newhdrgen/yaml/sys/mman.yaml
@@ -15,40 +15,6 @@
       - type: void *
       - type: size_t
       - type: int
-  - name: mmap
-    standards:
-      - POSIX
-    return_type: void *
-    arguments:
-      - type: void *
-      - type: size_t
-      - type: int
-      - type: int
-      - type: int
-      - type: off_t
-  - name: mprotect
-    standards:
-      - POSIX
-    return_type: int
-    arguments:
-      - type: void *
-      - type: size_t
-      - type: int
-  - name: munmap
-    standards:
-      - POSIX
-    return_type: int
-    arguments:
-      - type: void *
-      - type: size_t
-  - name: posix_madvise
-    standards:
-      - POSIX
-    return_type: int
-    arguments:
-      - type: void *
-      - type: size_t
-      - type: int
   - name: mincore
     standards:
       - Linux
@@ -72,25 +38,59 @@
       - type: void *
       - type: size_t
       - type: unsigned int
-  - name: munlock
-    standards: POSIX
-    return_type: int
-    arguments:
-      - type: void *
-      - type: size_t
   - name: mlockall
     standards:
       - POSIX
     return_type: int
     arguments:
       - type: int
+  - name: mmap
+    standards:
+      - POSIX
+    return_type: void *
+    arguments:
+      - type: void *
+      - type: size_t
+      - type: int
+      - type: int
+      - type: int
+      - type: off_t
+  - name: mprotect
+    standards:
+      - POSIX
+    return_type: int
+    arguments:
+      - type: void *
+      - type: size_t
+      - type: int
+  - name: msync
+    standards:
+      - POSIX
+    return_type: int
+    arguments:
+      - type: void *
+      - type: size_t
+      - type: int
+  - name: munlock
+    standards: POSIX
+    return_type: int
+    arguments:
+      - type: void *
+      - type: size_t
   - name: munlockall
     standards:
       - POSIX
     return_type: int
     arguments:
       - type: void
-  - name: msync
+  - name: munmap
+    standards:
+      - POSIX
+    return_type: int
+    arguments:
+      - 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 06ffa29..3b8bf4c 100644
--- a/libc/newhdrgen/yaml/sys/socket.yaml
+++ b/libc/newhdrgen/yaml/sys/socket.yaml
@@ -8,14 +8,6 @@
 enums: []
 objects: []
 functions:
-  - name: socket
-    standards:
-      - POSIX
-    return_type: int
-    arguments:
-      - type: int
-      - type: int
-      - type: int
   - name: bind
     standards:
       - POSIX
@@ -24,3 +16,11 @@
       - type: int
       - type: const struct sockaddr *
       - type: socklen_t
+  - name: socket
+    standards:
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: int
+      - type: int
diff --git a/libc/newhdrgen/yaml/sys/statvfs.yaml b/libc/newhdrgen/yaml/sys/statvfs.yaml
index 952ee88..22e0ef2 100644
--- a/libc/newhdrgen/yaml/sys/statvfs.yaml
+++ b/libc/newhdrgen/yaml/sys/statvfs.yaml
@@ -7,13 +7,6 @@
 enums: []
 objects: []
 functions:
-  - name: statvfs
-    standards:
-      - POSIX
-    return_type: int
-    arguments:
-      - type: const char *__restrict
-      - type: struct statvfs *__restrict
   - name: fstatvfs
     standards:
       - POSIX
@@ -21,3 +14,10 @@
     arguments:
       - type: int
       - type: struct statvfs *
+  - name: statvfs
+    standards:
+      - POSIX
+    return_type: int
+    arguments:
+      - type: const char *__restrict
+      - type: struct statvfs *__restrict
diff --git a/libc/newhdrgen/yaml/termios.yaml b/libc/newhdrgen/yaml/termios.yaml
index 7e4a0ff..e9c4cd3 100644
--- a/libc/newhdrgen/yaml/termios.yaml
+++ b/libc/newhdrgen/yaml/termios.yaml
@@ -35,19 +35,6 @@
     arguments:
       - type: struct termios *
       - type: speed_t
-  - name: tcgetattr
-    standards:
-      - POSIX
-    return_type: int
-    arguments:
-      - type: int
-      - type: struct termios *
-  - name: tcgetsid
-    standards:
-      - POSIX
-    return_type: pid_t
-    arguments:
-      - type: int
   - name: tcdrain
     standards:
       - POSIX
@@ -68,6 +55,19 @@
     arguments:
       - type: int
       - type: int
+  - name: tcgetattr
+    standards:
+      - POSIX
+    return_type: int
+    arguments:
+      - type: int
+      - type: struct termios *
+  - name: tcgetsid
+    standards:
+      - POSIX
+    return_type: pid_t
+    arguments:
+      - type: int
   - name: tcsendbreak
     standards:
       - POSIX
diff --git a/libc/newhdrgen/yaml/threads.yaml b/libc/newhdrgen/yaml/threads.yaml
index cceb48d..aadcaf5 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,6 +68,12 @@
     arguments:
       - type: cnd_t *
       - type: mtx_t *
+  - name: mtx_destroy
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: void
   - name: mtx_init
     standards:
       - stdc
@@ -75,12 +81,6 @@
     arguments:
       - type: mtx_t *
       - type: int
-  - name: mtx_destroy
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: void
   - name: mtx_lock
     standards:
       - stdc
@@ -101,25 +101,18 @@
       - type: thrd_t *
       - type: thrd_start_t
       - type: void *
-  - name: thrd_join
-    standards:
-      - stdc
-    return_type: int
-    arguments:
-      - type: thrd_t
-      - type: int *
-  - 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_detach
+    standards:
+      - stdc
+    return_type: int
+    arguments:
+      - type: thrd_t
   - name: thrd_equal
     standards:
       - stdc
@@ -133,6 +126,13 @@
     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 a4605a2..64a112b 100644
--- a/libc/newhdrgen/yaml/time.yaml
+++ b/libc/newhdrgen/yaml/time.yaml
@@ -23,6 +23,12 @@
     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 @@
     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 f52ddf4..4d12abe 100644
--- a/libc/newhdrgen/yaml/unistd.yaml
+++ b/libc/newhdrgen/yaml/unistd.yaml
@@ -22,6 +22,24 @@
   - 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 @@
       - 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 @@
     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 @@
     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 @@
     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 @@
     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 @@
       - 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