// SPDX-License-Identifier: MIT
#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA))
#error Meh...
#endif

GO(aligned_alloc, pFuu)
GO(calloc, pFLL)
GO(cfree, vFp)
//GO(_fini, 
GO(free, vFp)
//GO(_init, 
GO(__libc_calloc, pFLL)
GO(__libc_cfree, vFp)
GO(__libc_free, vFp)
GO(__libc_malloc, pFL)
GO(__libc_memalign, pFLL)
GO(__libc_pvalloc, pFL)
GO(__libc_realloc, pFpL)
GO(__libc_valloc, pFL)
GOM(mallinfo, pFEp)
GO(malloc, pFL)
GO(__posix_memalign,  iFpLL)
GO(posix_memalign,  iFpLL)
//GO(pvalloc, 
//GO(realloc, 
//GOW(reallocarr, 
//GO(reallocarray, 
//GO(reallocf, 
//GO(strdup, 
//GO(strndup, 
//GO(valloc, 
//GO(vfree, 
//GO(_ZdaPv, 
//GO(_ZdaPvm, 
//GO(_ZdaPvmSt11align_val_t, 
//GO(_ZdaPvRKSt9nothrow_t, 
//GO(_ZdaPvSt11align_val_t, 
//GO(_ZdaPvSt11align_val_tRKSt9nothrow_t, 
//GO(_ZdlPv, 
//GO(_ZdlPvm, 
//GO(_ZdlPvmSt11align_val_t, 
//GO(_ZdlPvRKSt9nothrow_t, 
//GO(_ZdlPvSt11align_val_t, 
//GO(_ZdlPvSt11align_val_tRKSt9nothrow_t, 
//GO(_Znam, 
//GO(_ZnamRKSt9nothrow_t, 
//GO(_ZnamSt11align_val_t, 
//GO(_ZnamSt11align_val_tRKSt9nothrow_t, 
//GO(_Znwm, 
//GO(_ZnwmRKSt9nothrow_t, 
//GO(_ZnwmSt11align_val_t, 
//GO(_ZnwmSt11align_val_tRKSt9nothrow_t, 
//GO(mi_aligned_alloc, 
//GO(mi_aligned_offset_recalloc, 
//GO(mi_aligned_recalloc, 
//GO(mi_any_heap_contains, 
//GO(mi_arena_area, 
//GO(mi_arena_contains, 
//GO(mi_arena_min_alignment, 
//GO(mi_arena_min_size, 
//GO(mi_arenas_print, 
//GO(mi_calloc, 
//GO(mi_calloc_aligned, 
//GO(mi_calloc_aligned_at, 
//GO(mi_cfree, 
//GO(mi_check_owned, 
GOM(mi_collect, vFi)    //%noE
//GO(mi_debug_show_arenas, 
//GO(mi_dupenv_s, 
//GO(mi__expand, 
//GO(mi_expand, 
GO2(mi_free, vFp, free)
GO2(mi_free_aligned, vFpL, free)    // ignoring alignent
GO2(mi_free_size, vFpL, free)   // ignoring size
GO2(mi_free_size_aligned, vFpLL, free)  // ignoring size & aligment
//GO(mi_free_small, 
//GO(mi_good_size, 
//GO(mi_heap_alloc_new, 
//GO(mi_heap_alloc_new_n, 
//GO(mi_heap_calloc, 
//GO(mi_heap_calloc_aligned, 
//GO(mi_heap_calloc_aligned_at, 
//GO(mi_heap_collect, 
//GO(mi_heap_contains, 
//GO(mi_heap_delete, 
GOM(mi_heap_destroy, vFp)   //%noE
//GO(mi_heap_main, 
GOM(mi_heap_malloc, pFpL)   //%noE
//GO(mi_heap_malloc_aligned, 
//GO(mi_heap_malloc_aligned_at, 
//GO(mi_heap_mallocn, 
//GO(mi_heap_malloc_small, 
GOM(mi_heap_new, pFv)   //%noE
//GO(mi_heap_new_in_arena, 
//GO(mi_heap_of, 
//GO(mi_heap_realloc, 
//GO(mi_heap_realloc_aligned, 
//GO(mi_heap_realloc_aligned_at, 
//GO(mi_heap_reallocf, 
//GO(mi_heap_reallocn, 
//GO(mi_heap_realpath, 
//GO(mi_heap_recalloc, 
//GO(mi_heap_recalloc_aligned, 
//GO(mi_heap_recalloc_aligned_at, 
//GO(mi_heap_rezalloc, 
//GO(mi_heap_rezalloc_aligned, 
//GO(mi_heap_rezalloc_aligned_at, 
//GO(mi_heap_set_numa_affinity, 
//GO(mi_heap_stats_get, 
//GO(mi_heap_stats_get_json, 
//GO(mi_heap_stats_merge_to_subproc, 
//GO(mi_heap_stats_print_out, 
//GO(mi_heap_strdup, 
//GO(mi_heap_strndup, 
//GO(mi_heap_theap, 
//GO(mi_heap_visit_abandoned_blocks, 
//GO(mi_heap_visit_blocks, 
//GO(mi_heap_zalloc, 
//GO(mi_heap_zalloc_aligned, 
//GO(mi_heap_zalloc_aligned_at, 
//GO(mi_heap_zalloc_small, 
//GO(mi_is_in_heap_region, 
//GO(mi_is_redirected, 
GO2(mi_malloc, pFL, malloc)
GOM(mi_malloc_aligned, pFLL)   //%noE
//GO(mi_malloc_aligned_at, 
//GO(mi_malloc_good_size, 
//GO(mi_mallocn, 
//GO(mi_malloc_size, 
//GO(mi_malloc_small, 
//GO(mi_malloc_usable_size, 
//GO(mi_manage_memory, 
//GO(mi_manage_os_memory, 
//GO(mi_manage_os_memory_ex, 
//GO(mi_mbsdup, 
//GO(mi_memalign, 
GO2(mi_new, pFL, malloc) // ignoring throw
GO2(mi_new_aligned, pFLL, my_mi_malloc_aligned) // ignoring throw
GO2(mi_new_aligned_nothrow, pFLL, my_mi_malloc_aligned)
//GO(mi_new_n, 
GO2(mi_new_nothrow, pFL, malloc)
//GO(mi_new_realloc, 
//GO(mi_new_reallocn, 
//GO(mi_option_disable, 
//GO(mi_option_enable, 
//GO(mi_option_get, 
//GO(mi_option_get_clamp, 
//GO(mi_option_get_size, 
//GO(mi_option_is_enabled, 
GOM(mi_option_set, vFul)    //%noE
//GO(mi_option_set_default, 
//GO(mi_option_set_enabled, 
//GO(mi_option_set_enabled_default, 
//GO(mi_options_print, 
//GO(mi_options_print_out, 
//GO(mi_posix_memalign, 
//GO(mi_process_done, 
GOM(mi_process_info, vFpppppppp)    //%noE
//GO(mi_process_info_print, 
//GO(mi_process_info_print_out, 
GOM(mi_process_init, vFv)   //%noE
//GO(mi_pvalloc, 
GO2(mi_realloc, pFpLL, realloc)
GOM(mi_realloc_aligned, pFpLL)   //%noE
//GO(mi_realloc_aligned_at, 
//GO(mi_reallocarr, 
//GO(mi_reallocarray, 
//GO(mi_reallocf, 
//GO(mi_reallocn, 
//GO(mi_realpath, 
//GO(mi_recalloc, 
//GO(mi_recalloc_aligned, 
//GO(mi_recalloc_aligned_at, 
//GO(mi_register_alloc_callback, 
//GO(mi_register_deferred_free, 
GOM(mi_register_error, vFpp)    //%noE
//GO(mi_register_free_callback, 
GOM(mi_register_output, vFpp)   //%noE
//GO(mi_reserve_huge_os_pages, 
//GO(mi_reserve_huge_os_pages_at, 
//GO(mi_reserve_huge_os_pages_at_ex, 
//GO(mi_reserve_huge_os_pages_interleave, 
//GO(mi_reserve_os_memory, 
//GO(mi_reserve_os_memory_ex, 
//GO(mi_rezalloc, 
//GO(mi_rezalloc_aligned, 
//GO(mi_rezalloc_aligned_at, 
//GO(mi_stats_as_json, 
//GO(mi_stats_get, 
//GO(mi_stats_get_bin_size, 
//GO(mi_stats_get_json, 
//GO(mi_stats_print, 
GOM(mi_stats_print_out, vFpp)   //%noE
//GO(mi_stats_reset, 
//GO(mi_strdup, 
//GO(mi_strndup, 
//GO(mi_subproc_add_current_thread, 
//GO(mi_subproc_current, 
//GO(mi_subproc_destroy, 
//GO(mi_subproc_heap_stats_print_out, 
//GO(mi_subproc_main, 
//GO(mi_subproc_new, 
//GO(mi_subproc_stats_get, 
//GO(mi_subproc_stats_get_exclusive, 
//GO(mi_subproc_stats_get_json, 
//GO(mi_subproc_stats_print_out, 
//GO(mi_subproc_visit_heaps, 
//GO(mi_theap_calloc, 
//GO(mi_theap_collect, 
//GO(mi_theap_get_default, 
//GO(mi_theap_guarded_set_sample_rate, 
//GO(mi_theap_guarded_set_size_bound, 
//GO(mi_theap_malloc, 
//GO(mi_theap_malloc_aligned, 
//GO(mi_theap_malloc_small, 
//GO(mi_theap_realloc, 
//GO(mi_theap_visit_blocks, 
//GO(mi_theap_zalloc, 
//GO(mi_theap_zalloc_small, 
//GO(mi_thread_done, 
GOM(mi_thread_init, vFv)    //%noE
//GO(mi_thread_set_in_threadpool, 
//GO(mi_thread_stats_print_out, 
//GO(mi_ucalloc, 
//GO(mi_ufree, 
//GO(mi_umalloc, 
//GO(mi_umalloc_aligned, 
//GO(mi_umalloc_small, 
//GO(mi_unsafe_heap_page_is_under_utilized, 
//GO(mi_urealloc, 
//GO(mi_usable_size, 
//GO(mi_uzalloc_aligned, 
//GO(mi_valloc, 
//GO(mi_version, 
//GO(mi_wcsdup, 
//GO(mi_wdupenv_s, 
GOM(mi_zalloc, pFL) //%noE
//GO(mi_zalloc_aligned, 
//GO(mi_zalloc_aligned_at, 
//GO(mi_zalloc_small, 
