|
| 1 | + |
| 2 | +-call_properties+={"name(z_phys_map)", {"pointee_read(1=never)","pointee_write(1=always)","taken()"}} |
| 3 | +-call_properties+={"name(pcie_get_mbar)", {"pointee_read(3=never)","pointee_write(3=maybe)","taken()"}} |
| 4 | +-call_properties+={"name(k_mem_region_align)", { |
| 5 | + "pointee_read(1..2=never)", |
| 6 | + "pointee_write(1..2=always)","taken()" |
| 7 | + }} |
| 8 | +-call_properties+={"name(pentry_get)", { |
| 9 | + "pointee_read(1..2=never&&3..4=always)", |
| 10 | + "pointee_write(1..2=maybe&&3..4=never)" |
| 11 | + }} |
| 12 | +-call_properties+={"name(z_phys_unmap)", {"pointee_read(1=never)","pointee_write(1=never)"}} |
| 13 | +-call_properties+={"name(check_sum)", {"pointee_read(1=always)","pointee_write(1=never)"}} |
| 14 | +-call_properties+={"name(z_impl_device_get_binding)", {"pointee_read(1=maybe)","pointee_write(1=maybe)","taken()"}} |
| 15 | +-call_properties+={"name(z_setup_new_thread)", {"pointee_read(10=maybe)","pointee_write(10=never)","taken()"}} |
| 16 | +-call_properties+={"name(mbox_message_put)", {"pointee_read(3=always)","pointee_write(3=always)"}} |
| 17 | +-doc_begin="The functions can be implemented using the GCC built-in functions. |
| 18 | + See Section \"6.62.13 6.56 Built-in Functions to Perform Arithmetic with Overflow Checking\" of "GCC_MANUAL"." |
| 19 | +-call_properties+={"name(size_mul_overflow)", {"pointee_read(3=never)","pointee_write(3=always)","taken()"}} |
| 20 | +-call_properties+={"name(size_add_overflow)", {"pointee_read(3=never)","pointee_write(3=always)","taken()"}} |
| 21 | +-call_properties+={"name(__builtin_mul_overflow)", {"pointee_read(3=never)","pointee_write(3=always)","taken()"}} |
| 22 | +-call_properties+={"name(__builtin_add_overflow)", {"pointee_read(3=never)","pointee_write(3=always)","taken()"}} |
| 23 | +-doc_end |
| 24 | + |
| 25 | +-call_properties+={"name(__builtin_va_end)", {"taken()"}} # Not documented in gcc.pdf |
| 26 | +-call_properties+={"name(arch_page_phys_get)", {"pointee_read(2=never)","pointee_write(2=maybe)","taken()"}} |
| 27 | +-call_properties+={"name(cbvprintf)", {"taken()"}} |
| 28 | +-call_properties+={"name(cbvprintf)", {"taken()"}} |
| 29 | +-call_properties+={"name(char2hex)", {"pointee_read(2=never)","pointee_write(2=maybe)"}} |
| 30 | +-call_properties+={"name(find_and_stack)", {"pointee_read(3=never)","pointee_write(3=always)"}} |
| 31 | +-call_properties+={"name(fix_missing_black)", {"pointee_read(1=always)","pointee_write(1=maybe)"}} |
| 32 | +-call_properties+={"name(__get_cpuid)", {"pointee_read(2..5=never)","pointee_write(2..5=always)"}} |
| 33 | +-call_properties+={"name(k_mutex_init)", {"pointee_read(1=never)","pointee_write(1=always)"}} |
| 34 | +-call_properties+={"name(k_sem_init)", {"pointee_read(1=never)","pointee_write(1=maybe)"}} |
| 35 | +-call_properties+={"name(k_work_init)", {"pointee_read(1=never)","pointee_write(1=always)"}} |
| 36 | +-call_properties+={"name(k_work_init_delayable)", {"pointee_read(1=never)","pointee_write(1=always)"}} |
| 37 | +-call_properties+={"name(k_work_queue_start)", {"taken()"}} |
| 38 | +-call_properties+={"name(log_from_user)", {"pointee_write(1..=never)", "taken()"}} |
| 39 | +-call_properties+={"name(log_n)", {"taken()"}} |
| 40 | +-call_properties+={"name(log_string_sync)", {"pointee_write(1..=never)", "taken()"}} |
| 41 | +-call_properties+={"name(match_region)", {"pointee_read(5..6=never)","pointee_write(5=always&&6=maybe)"}} |
| 42 | +-call_properties+={"name(mbox_async_alloc)", {"pointee_read(1=never)","pointee_write(1=maybe)"}} |
| 43 | +-call_properties+={"name(pipe_xfer_prepare)", {"pointee_read(2=never)","pointee_write(2=always)"}} |
| 44 | +-call_properties+={"name(printk)", {"pointee_write(1..=never)", "taken()"}} |
| 45 | +-call_properties+={"name(snprintk)", {"pointee_read(1=never)","pointee_write(1=always)", "taken()"}} # to check |
| 46 | +-call_properties+={"name(snprintk)", {"taken()"}} |
| 47 | +-call_properties+={"name(sys_bitarray_alloc)", {"pointee_read(3=never)","pointee_write(3=maybe)","taken()"}} |
| 48 | +-call_properties+={"name(sys_slist_init)", {"pointee_read(1=never)","pointee_write(1=always)"}} |
| 49 | +-call_properties+={"name(vprintk)", {"taken()"}} |
| 50 | +-call_properties+={"name(z_dummy_thread_init)", {"pointee_read(1=never)","pointee_write(1=always)"}} # the function does not initialize all the fields |
| 51 | +-call_properties+={"name(z_impl_k_stack_pop)", {"taken()"}} |
| 52 | +-call_properties+={"name(z_impl_z_log_msg2_runtime_vcreate)", {"taken()"}} |
| 53 | +-call_properties+={"name(z_log_minimal_printk)", {"pointee_write(1..=never)", "taken()"}} |
| 54 | +-call_properties+={"name(z_log_msg2_runtime_create)", {"pointee_write(1..=never)", "taken()"}} |
| 55 | +-call_properties+={"name(z_log_printk)", {"taken()"}} |
| 56 | +-call_properties+={"name(z_log_printf_arg_checker)", {"pointee_write(1..=never)", "taken()"}} |
| 57 | +-call_properties+={"name(z_log_strdup)", {"taken()"}} |
| 58 | +-call_properties+={"name(z_rb_foreach_next)", {"taken()"}} |
| 59 | +-call_properties+={"name(z_user_string_copy)", {"pointee_read(1=never)","pointee_write(1=maybe)","taken()"}} |
| 60 | + |
| 61 | +-doc_begin="These macros are designed to evaluate to either 0 or 1." |
| 62 | +-call_properties+={"macro(name(UTIL_NOT))",{"data_kind(0=int_bool)"}} |
| 63 | +-call_properties+={"macro(name(IS_ENABLED))",{"data_kind(0=int_bool)"}} |
| 64 | +-call_properties+={"decl(name(isspace))",{"data_kind(0=int_bool)"}} |
| 65 | +-call_properties+={"macro(name(isdigit))",{"data_kind(0=int_bool)"}} |
| 66 | +-call_properties+={"decl(name(isdigit))",{"data_kind(0=int_bool)"}} |
| 67 | +-call_properties+={"macro(name(isalpha))",{"data_kind(0=int_bool)"}} |
| 68 | +-call_properties+={"decl(name(isalpha))",{"data_kind(0=int_bool)"}} |
| 69 | +-call_properties+={"macro(name(isupper))",{"data_kind(0=int_bool)"}} |
| 70 | +-call_properties+={"decl(name(isupper))",{"data_kind(0=int_bool)"}} |
| 71 | +-doc_end |
| 72 | + |
| 73 | +-doc="__builtin_alloca cannot interfere with other effects." |
| 74 | +-call_properties+={"decl(name(__builtin_alloca))",{"noeffect"}} |
| 75 | + |
| 76 | +-doc="log_strdup cannot interfere with other effects." |
| 77 | +-call_properties+={"decl(name(log_strdup))",{"noeffect"}} |
| 78 | + |
| 79 | + |
| 80 | +# Not documented functions |
| 81 | +# device_map |
0 commit comments