Skip to content

Commit 4a1fdeb

Browse files
authored
[libc] reordered Function class parameters and moved yaml files (#97329)
Reordered Function class parameter "standards" to make more logical sense and to match the ordering in the add_function function. Deleted the yaml_combined folder and moved contained files to the yaml folder. Updated math.yaml file with the recently added math functions in spec.td
1 parent 611212f commit 4a1fdeb

16 files changed

+255
-6
lines changed

libc/newhdrgen/yaml_combined/math.yaml renamed to libc/newhdrgen/yaml/math.yaml

+191-1
Original file line numberDiff line numberDiff line change
@@ -563,6 +563,15 @@ functions:
563563
- type: float
564564
- type: float
565565
- type: float
566+
- name: f16fma
567+
standards:
568+
- stdc
569+
return_type: _Float16
570+
arguments:
571+
- type: double
572+
- type: double
573+
- type: double
574+
guard: LIBC_TYPES_HAS_FLOAT16
566575
- name: f16fmaf
567576
standards:
568577
- stdc
@@ -572,6 +581,24 @@ functions:
572581
- type: float
573582
- type: float
574583
guard: LIBC_TYPES_HAS_FLOAT16
584+
- name: f16fmal
585+
standards:
586+
- stdc
587+
return_type: _Float16
588+
arguments:
589+
- type: long double
590+
- type: long double
591+
- type: long double
592+
guard: LIBC_TYPES_HAS_FLOAT16
593+
- name: f16fmaf128
594+
standards:
595+
- stdc
596+
return_type: _Float16
597+
arguments:
598+
- type: float128
599+
- type: float128
600+
- type: float128
601+
guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
575602
- name: fmod
576603
standards:
577604
- stdc
@@ -913,6 +940,14 @@ functions:
913940
arguments:
914941
- type: long double
915942
- type: int
943+
- name: ldexpf16
944+
standards:
945+
- stdc
946+
return_type: _Float16
947+
arguments:
948+
- type: _Float16
949+
- type: int
950+
guard: LIBC_TYPES_HAS_FLOAT16
916951
- name: ldexpf128
917952
standards:
918953
- stdc
@@ -1761,6 +1796,14 @@ functions:
17611796
return_type: float
17621797
arguments:
17631798
- type: float
1799+
- name: scalblnf16
1800+
standards:
1801+
- stdc
1802+
return_type: _Float16
1803+
arguments:
1804+
- type: _Float16
1805+
- type: long
1806+
guard: LIBC_TYPES_HAS_FLOAT16
17641807
- name: scalbn
17651808
standards:
17661809
- stdc
@@ -1782,6 +1825,13 @@ functions:
17821825
arguments:
17831826
- type: long double
17841827
- type: int
1828+
- name: scalbnf16
1829+
standards:
1830+
- stdc
1831+
return_type: _Float16
1832+
arguments:
1833+
- type: _Float16
1834+
- type: int
17851835
- name: scalbnf128
17861836
standards:
17871837
- stdc
@@ -1875,10 +1925,150 @@ functions:
18751925
- type: _Float16 *
18761926
- type: _Float16 *
18771927
guard: LIBC_TYPES_HAS_FLOAT16
1878-
- name: f16sqrtf
1928+
- name: getpayloadf16
18791929
standards:
18801930
- stdc
18811931
return_type: _Float16
1932+
arguments:
1933+
- type: _Float16 *
1934+
guard: LIBC_TYPES_HAS_FLOAT16
1935+
- name: setpayloadf16
1936+
standards:
1937+
- stdc
1938+
return_type: int
1939+
arguments:
1940+
- type: _Float16 *
1941+
- type: _Float16
1942+
guard: LIBC_TYPES_HAS_FLOAT16
1943+
- name: setpayloadsigf16
1944+
standards:
1945+
- stdc
1946+
return_type: int
1947+
arguments:
1948+
- type: _Float16 *
1949+
- type: _Float16
1950+
guard: LIBC_TYPES_HAS_FLOAT16
1951+
- name: f16addf128
1952+
standards:
1953+
- stdc
1954+
return_type: _Float16
1955+
arguments:
1956+
- type: float128
1957+
- type: float128
1958+
guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
1959+
- name: f16subf128
1960+
standards:
1961+
- stdc
1962+
return_type: _Float16
1963+
arguments:
1964+
- type: float128
1965+
- type: float128
1966+
guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
1967+
- name: f16sqrtf
1968+
standards:
1969+
- llvm_libc_ext
1970+
return_type: _Float16
18821971
arguments:
18831972
- type: float
18841973
guard: LIBC_TYPES_HAS_FLOAT16
1974+
- name: f16sqrtf128
1975+
standards:
1976+
- llvm_libc_ext
1977+
return_type: _Float16
1978+
arguments:
1979+
- type: float128
1980+
guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
1981+
- name: f16add
1982+
standards:
1983+
- llvm_libc_ext
1984+
return_type: _Float16
1985+
arguments:
1986+
- type: double
1987+
- type: double
1988+
guard: LIBC_TYPES_HAS_FLOAT16
1989+
- name: f16addf
1990+
standards:
1991+
- llvm_libc_ext
1992+
return_type: _Float16
1993+
arguments:
1994+
- type: float
1995+
- type: float
1996+
guard: LIBC_TYPES_HAS_FLOAT16
1997+
- name: f16addl
1998+
standards:
1999+
- llvm_libc_ext
2000+
return_type: _Float16
2001+
arguments:
2002+
- type: long double
2003+
- type: long double
2004+
guard: LIBC_TYPES_HAS_FLOAT16
2005+
- name: f16sub
2006+
standards:
2007+
- llvm_libc_ext
2008+
return_type: _Float16
2009+
arguments:
2010+
- type: double
2011+
- type: double
2012+
guard: LIBC_TYPES_HAS_FLOAT16
2013+
- name: f16subf
2014+
standards:
2015+
- llvm_libc_ext
2016+
return_type: _Float16
2017+
arguments:
2018+
- type: float
2019+
- type: float
2020+
guard: LIBC_TYPES_HAS_FLOAT16
2021+
- name: f16subl
2022+
standards:
2023+
- llvm_libc_ext
2024+
return_type: _Float16
2025+
arguments:
2026+
- type: long double
2027+
- type: long double
2028+
guard: LIBC_TYPES_HAS_FLOAT16
2029+
- name: f16div
2030+
standards:
2031+
- llvm_libc_ext
2032+
return_type: _Float16
2033+
arguments:
2034+
- type: double
2035+
- type: double
2036+
guard: LIBC_TYPES_HAS_FLOAT16
2037+
- name: f16divf
2038+
standards:
2039+
- llvm_libc_ext
2040+
return_type: _Float16
2041+
arguments:
2042+
- type: float
2043+
- type: float
2044+
guard: LIBC_TYPES_HAS_FLOAT16
2045+
- name: f16divf128
2046+
standards:
2047+
- stdc
2048+
return_type: _Float16
2049+
arguments:
2050+
- type: float128
2051+
- type: float128
2052+
guard: LIBC_TYPES_HAS_FLOAT16_AND_FLOAT128
2053+
- name: f16divl
2054+
standards:
2055+
- llvm_libc_ext
2056+
return_type: _Float16
2057+
arguments:
2058+
- type: long double
2059+
- type: long double
2060+
guard: LIBC_TYPES_HAS_FLOAT16
2061+
- name: f16sqrt
2062+
standards:
2063+
- llvm_libc_ext
2064+
return_type: _Float16
2065+
arguments:
2066+
- type: double
2067+
guard: LIBC_TYPES_HAS_FLOAT16
2068+
- name: f16sqrtl
2069+
standards:
2070+
- llvm_libc_ext
2071+
return_type: _Float16
2072+
arguments:
2073+
- type: long double
2074+
guard: LIBC_TYPES_HAS_FLOAT16

libc/newhdrgen/yaml_combined/pthread.yaml renamed to libc/newhdrgen/yaml/pthread.yaml

+48
Original file line numberDiff line numberDiff line change
@@ -366,3 +366,51 @@ functions:
366366
arguments:
367367
- type: pthread_key_t
368368
- type: const void *
369+
- name: pthread_rwlock_init
370+
standards: POSIX
371+
return_type: int
372+
arguments:
373+
- type: pthread_rwlock_t *
374+
- type: const pthread_rwlockattr_t *__restrict
375+
- name: pthread_rwlock_tryrdlock
376+
standards: POSIX
377+
return_type: int
378+
arguments:
379+
- type: pthread_rwlock_t *
380+
- name: pthread_rwlock_trywrlock
381+
standards: POSIX
382+
return_type: int
383+
arguments:
384+
- type: pthread_rwlock_t *
385+
- name: pthread_rwlock_timedrdlock
386+
standards: POSIX
387+
return_type: int
388+
arguments:
389+
- type: pthread_rwlock_t *__restrict
390+
- type: const struct timespec *__restrict
391+
- name: pthread_rwlock_timedwrlock
392+
standards: POSIX
393+
return_type: int
394+
arguments:
395+
- type: pthread_rwlock_t *__restrict
396+
- type: const struct timespec *__restrict
397+
- name: pthread_rwlock_rdlock
398+
standards: POSIX
399+
return_type: int
400+
arguments:
401+
- type: pthread_rwlock_t *
402+
- name: pthread_rwlock_wrlock
403+
standards: POSIX
404+
return_type: int
405+
arguments:
406+
- type: pthread_rwlock_t *
407+
- name: pthread_rwlock_unlock
408+
standards: POSIX
409+
return_type: int
410+
arguments:
411+
- type: pthread_rwlock_t *
412+
- name: pthread_rwlock_destroy
413+
standards: POSIX
414+
return_type: int
415+
arguments:
416+
- type: pthread_rwlock_t *

libc/newhdrgen/yaml_combined/stdio.yaml renamed to libc/newhdrgen/yaml/stdio.yaml

+7
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,13 @@ functions:
130130
return_type: int
131131
arguments:
132132
- type: FILE *
133+
- name: fdopen
134+
standards:
135+
- POSIX
136+
return_type: FILE *
137+
arguments:
138+
- type: int
139+
- type: const char *
133140
- name: clearerr
134141
standards:
135142
- stdc

libc/newhdrgen/yaml/sys_auxv.yaml

+7-1
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,10 @@ macros: []
55
types: []
66
enums: []
77
objects: []
8-
functions: []
8+
functions:
9+
- name: getauxval
10+
standards:
11+
- GNUExtensions
12+
return_type: unsigned long
13+
arguments:
14+
- type: unsigned long

libc/newhdrgen/yaml_combined/sys_mman.yaml renamed to libc/newhdrgen/yaml/sys_mman.yaml

-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
1-
#known as sys/mman in POSIX
21
header: sys-mman.h
32
standards: POSIX
43
macros: []
5-
macros: []
64
types:
75
- type_name: mode_t
86
- type_name: size_t

libc/newhdrgen/yaml/sys_types.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,5 +26,5 @@ types:
2626
- type_name: pthread_key_t
2727
- type_name: pthread_condattr_t
2828
enums: []
29-
functions: []
3029
objects: []
30+
functions: []

libc/newhdrgen/yaml_combined/sys_wait.yaml renamed to libc/newhdrgen/yaml/sys_wait.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
header: sys-wait.h #sys/wait.h
1+
header: sys-wait.h
22
macros: []
33
types:
44
- type_name: siginfo_t

0 commit comments

Comments
 (0)