llvm-project
80 строк · 2.9 Кб
1{
2"printf": {
3"LIBC_CONF_PRINTF_DISABLE_FLOAT": {
4"value": false,
5"doc": "Disable printing floating point values in printf and friends."
6},
7"LIBC_CONF_PRINTF_DISABLE_INDEX_MODE": {
8"value": false,
9"doc": "Disable index mode in the printf format string."
10},
11"LIBC_CONF_PRINTF_DISABLE_WRITE_INT": {
12"value": false,
13"doc": "Disable handling of %n in printf format string."
14},
15"LIBC_CONF_PRINTF_FLOAT_TO_STR_USE_MEGA_LONG_DOUBLE_TABLE": {
16"value": false,
17"doc": "Use large table for better printf long double performance."
18},
19"LIBC_CONF_PRINTF_DISABLE_FIXED_POINT": {
20"value": false,
21"doc": "Disable printing fixed point values in printf and friends."
22}
23},
24"scanf": {
25"LIBC_CONF_SCANF_DISABLE_FLOAT": {
26"value": false,
27"doc": "Disable parsing floating point values in scanf and friends."
28},
29"LIBC_CONF_SCANF_DISABLE_INDEX_MODE": {
30"value": false,
31"doc": "Disable index mode in the scanf format string."
32}
33},
34"string": {
35"LIBC_CONF_STRING_UNSAFE_WIDE_READ": {
36"value": false,
37"doc": "Read more than a byte at a time to perform byte-string operations like strlen."
38},
39"LIBC_CONF_MEMSET_X86_USE_SOFTWARE_PREFETCHING": {
40"value": false,
41"doc": "Inserts prefetch for write instructions (PREFETCHW) for memset on x86 to recover performance when hardware prefetcher is disabled."
42}
43},
44"codegen": {
45"LIBC_CONF_KEEP_FRAME_POINTER": {
46"value": true,
47"doc": "Keep frame pointer in functions for better debugging experience."
48},
49"LIBC_CONF_ENABLE_STRONG_STACK_PROTECTOR": {
50"value": true,
51"doc": "Enable -fstack-protector-strong to defend against stack smashing attack."
52}
53},
54"pthread": {
55"LIBC_CONF_TIMEOUT_ENSURE_MONOTONICITY": {
56"value": true,
57"doc": "Automatically adjust timeout to CLOCK_MONOTONIC (default to true). POSIX API may require CLOCK_REALTIME, which can be unstable and leading to unexpected behavior. This option will convert the real-time timestamp to monotonic timestamp relative to the time of call."
58},
59"LIBC_CONF_RAW_MUTEX_DEFAULT_SPIN_COUNT": {
60"value": 100,
61"doc": "Default number of spins before blocking if a mutex is in contention (default to 100)."
62},
63"LIBC_CONF_RWLOCK_DEFAULT_SPIN_COUNT": {
64"value": 100,
65"doc": "Default number of spins before blocking if a rwlock is in contention (default to 100)."
66}
67},
68"malloc": {
69"LIBC_CONF_FREELIST_MALLOC_BUFFER_SIZE": {
70"value": 1073741824,
71"doc": "Default size for the constinit freelist buffer used for the freelist malloc implementation (default 1o 1GB)."
72}
73},
74"math": {
75"LIBC_CONF_MATH_OPTIMIZATIONS": {
76"value": 0,
77"doc": "Configures optimizations for math functions. Values accepted are LIBC_MATH_SKIP_ACCURATE_PASS, LIBC_MATH_SMALL_TABLES, LIBC_MATH_NO_ERRNO, LIBC_MATH_NO_EXCEPT, and LIBC_MATH_FAST."
78}
79}
80}
81