Skip to content

Instantly share code, notes, and snippets.

@retep998
Created March 9, 2017 15:29
Show Gist options
  • Save retep998/09b69602a7500c41a4c24f956d17d449 to your computer and use it in GitHub Desktop.
Save retep998/09b69602a7500c41a4c24f956d17d449 to your computer and use it in GitHub Desktop.
Sizes of functions in naive hello world with rustc main.rs -O -g -Cpanic=abort -Clto
Name Size
std__panicking__default_hook____closure__ 000025E4
std__panicking__rust_panic_with_hook 00000E60
main 000008FB
std__io__Write__write_fmt____impl____write_str_std__io__stdio__StdoutLock_ 000008C5
core__fmt__Formatter__pad_integral 000005B4
std__io__error____impl____fmt 0000056C
core__fmt____impl____fmt_0 00000438
core__fmt__Formatter__pad 00000437
core__str__slice_error_fail 0000039F
std__io__buffered__BufWriter_std__io__stdio__Maybe_std__io__stdio__StdoutRaw____flush_buf_std__io__stdio__Maybe_std__io__stdio__StdoutRaw__ 0000037A
core__fmt__write 00000371
std__sys__imp__stdio__write 00000340
core__iter__iterator__Iterator__collect_collections__str__EncodeUtf16_collections__vec__Vec_u16__ 0000032D
std__sys_common__wtf8____impl____fmt__write_str_escaped 00000328
std__io__stdio____impl____write_fmt 000002BA
std__io__stdio__stdout__stdout_init 0000025F
core__fmt____impl____fmt_collections__vec__Vec_u8__ 00000246
std__io__Write__write_all_std__sys__imp__stdio__Stderr_ 0000023D
core__str__from_utf8 00000236
core__fmt____impl____fmt 00000230
core__fmt____impl____fmt_std__ffi__os_str__OsStr_ 0000022F
std__sys__imp__dynamic_lib__DynamicLibrary__symbol 00000203
core__fmt__builders____impl____write_str 000001E7
std__sys_common__memchr__fallback__memchr 000001E2
std__io__Write__write_fmt_std__sys__imp__stdio__Stderr_ 000001DB
std__thread__local__LocalKey_core__cell__RefCell_core__option__Option_std__sys_common__thread_info__ThreadInfo_____with_core__cell__RefCell_core__option__Option_std__sys_common__thread_info__ThreadInfo___closure_core__option__Option_std__thread__Thread__ 000001D7
__isa_available_init 000001C6
std__io__buffered____impl____write_std__io__stdio__Maybe_std__io__stdio__StdoutRaw__ 000001C1
std__thread__Thread__new 000001B9
core__char_private__is_printable 000001B4
collections__fmt__format 000001A4
main__main 0000019E
std__sync__once____impl____call_once____closure___closure_ 0000019A
std__sys__imp__thread_local__destroy 0000018D
std__sys__imp__compat__lookup 00000186
__scrt_common_main_seh 00000177
std__sys__imp__stdio__get 00000172
core__fmt__builders__DebugStruct__field 00000166
core__fmt__builders__DebugTuple__field 00000162
alloc__arc__Arc_std__sys_common__remutex__ReentrantMutex_core__cell__RefCell_std__io__buffered__LineWriter_std__io__stdio__Maybe_std__io__stdio__StdoutRaw_______drop_slow_std__sys_common__remutex__ReentrantMutex_core__cell__RefCell_std__io__buffered__LineWriter_std__io__stdio__Maybe_std__io__stdio__StdoutRaw_____ 00000158
core__fmt__num____impl____fmt_2 0000014A
core__fmt__num____impl____fmt 00000145
__scrt_fastfail 00000145
std__ffi__c_str__CString__from_vec_unchecked 0000013F
std_unicode__tables__trie_lookup_range_table 00000122
std__sys_common__util__dumb_print 00000120
core__fmt__num____impl____fmt_1 0000011F
core__fmt__num____impl____fmt_0 00000119
core__fmt____impl____fmt_libc__c_void_ 0000010A
core__fmt__Write__write_fmt____impl____write_char_collections__string__String_ 00000107
collections__string__String__push 00000106
std__sys_common__at_exit_imp__push 00000105
std__sys__imp__stack_overflow__vectored_handler 00000100
std__ffi__c_str____impl____fmt 000000FC
std__io__stdio__stdout 000000F2
std__sys__imp__mutex__Mutex__lock 000000E4
std__error____impl____from____impl____fmt 000000DE
std__sys_common__wtf8__Wtf8Buf__push_code_point_unchecked 000000D9
core__iter__iterator____impl____next_core__str__Chars_ 000000D2
std__sys__imp__thread_local__create 000000D2
__scrt_initialize_onexit_tables 000000C9
std__io__Write__write_fmt____impl____write_str_std__sys__imp__stdio__Stderr_ 000000C2
core__fmt__num____impl____fmt_3 000000BF
core__fmt__Write__write_fmt____impl____write_char_core__fmt__builders__PadAdapter_ 000000BC
core__fmt__Write__write_fmt____impl____write_char_std__io__Write__write_fmt__Adaptor_std__io__stdio__StdoutLock__ 000000BC
core__fmt__Write__write_fmt____impl____write_char_std__io__Write__write_fmt__Adaptor_std__sys__imp__stdio__Stderr__ 000000BC
pre_c_initialization 000000BB
core__fmt__Write__write_char_core__fmt__builders__PadAdapter_ 000000B9
core__fmt__Write__write_char_std__io__Write__write_fmt__Adaptor_std__io__stdio__StdoutLock__ 000000B9
core__fmt__Write__write_char_std__io__Write__write_fmt__Adaptor_std__sys__imp__stdio__Stderr__ 000000B9
std__sys__imp__mutex__Mutex__unlock 000000B8
std__thread__local__os__destroy_value_core__cell__RefCell_core__option__Option_alloc__boxed__Box_Write____ 000000B2
std__sys__imp__thread_local__init_dtors 000000B1
std__thread__local__os__Key_core__cell__RefCell_core__option__Option_std__sys_common__thread_info__ThreadInfo_____get_core__cell__RefCell_core__option__Option_std__sys_common__thread_info__ThreadInfo___ 000000AD
__security_init_cookie 000000AC
std__io__stdio__LOCAL_STDOUT____getit 000000AA
std__sys_common__thread_info__THREAD_INFO____getit 000000AA
std__panicking__update_panic_count__PANIC_COUNT____getit 000000AA
core__fmt____impl____fmt_u8_ 000000A9
core__str____impl____fmt 000000A6
core__num____impl____fmt 000000A6
collections__vec__Vec_u16___reserve_u16_ 000000A1
__scrt_is_nonwritable_in_current_image 00000099
sub_140007780 00000097
core__result__unwrap_failed_std__sys_common__poison__PoisonError_std__sync__mutex__MutexGuard_bool___ 00000097
alloc__arc__Arc_std__thread__Inner___drop_slow_std__thread__Inner_ 00000096
core__result__unwrap_failed_std__ffi__c_str__NulError_ 00000096
core__result__unwrap_failed_core__str__Utf8Error_ 00000094
core__result__unwrap_failed_core__num__ParseIntError_ 00000093
collections__vec__Vec_u8___reserve_u8__0 00000091
collections__vec__Vec_u8___reserve_u8_ 00000091
core__result__unwrap_failed_core__cell__BorrowError_ 00000090
core__result__unwrap_failed_core__cell__BorrowMutError_ 00000090
std__thread__local__os__destroy_value_core__cell__RefCell_core__option__Option_std__sys_common__thread_info__ThreadInfo___ 0000008E
alloc__boxed____impl____call_box____closure_ 0000008E
std__sys__imp__mutex__Mutex__remutex 0000008C
core__fmt____impl____fmt_core__num__IntErrorKind_ 00000083
sub_14000A1E0 0000007F
core__slice__slice_index_order_fail 0000007E
core__slice__slice_index_len_fail 0000007E
core__panicking__panic_bounds_check 0000007B
alloc__boxed____impl____call_box____closure__0 00000079
alloc__raw_vec__RawVec_u16___double_u16_ 00000078
alloc__raw_vec__RawVec__u32__unsafe_extern__C__fn__mut_u8_____double__u32__unsafe_extern__C__fn__mut_u8___ 00000077
std__sys_common__thread_local__StaticKey__lazy_init 0000006D
core__option__expect_failed 0000006C
std__panicking__begin_panic_fmt 0000006C
alloc__raw_vec__RawVec_u8___double_u8_ 0000006A
core__ops____impl____fmt_usize_ 00000068
std__thread__local__os__destroy_value_core__cell__Cell_usize__ 00000063
std__panicking__begin_panic_collections__string__String_ 0000005F
core__panicking__panic 00000059
__scrt_is_managed_app 00000054
_alloca_probe 00000051
std__panicking__begin_panic__str_ 00000050
_onexit 0000004F
_RTC_Terminate 0000004A
_RTC_Initialize 0000004A
__scrt_initialize_crt 00000049
core__fmt__Write__write_fmt____impl____write_str_collections__string__String__0 00000046
core__fmt__Write__write_fmt____impl____write_str_collections__string__String_ 00000046
core__fmt__Write__write_fmt____impl____write_fmt_core__fmt__builders__PadAdapter_ 00000043
core__fmt__Write__write_fmt____impl____write_fmt_collections__string__String__0 00000043
core__fmt__Write__write_fmt____impl____write_fmt_std__io__Write__write_fmt__Adaptor_std__io__stdio__StdoutLock__ 00000043
core__fmt__Write__write_fmt____impl____write_fmt_collections__string__String_ 00000043
core__fmt__Write__write_fmt____impl____write_fmt_std__io__Write__write_fmt__Adaptor_std__sys__imp__stdio__Stderr__ 00000043
core__fmt__Write__write_fmt_core__fmt__builders__PadAdapter_ 00000040
core__fmt__Write__write_fmt_std__io__Write__write_fmt__Adaptor_std__io__stdio__StdoutLock__ 00000040
core__fmt__Write__write_fmt_std__io__Write__write_fmt__Adaptor_std__sys__imp__stdio__Stderr__ 00000040
std__io__impls____impl____write_fmt_std__sys__imp__stdio__Stderr_ 0000003E
core__panicking__panic_fmt 0000003A
__scrt_acquire_startup_lock 00000039
std__sys__imp__init__oom_handler 00000039
__scrt_unhandled_exception_filter 00000038
sub_140005DC0 00000035
__scrt_uninitialize_crt 0000002B
__scrt_release_startup_lock 00000024
std__sys__imp__c__WakeConditionVariable__fallback 00000022
std__sys__imp__c__SleepConditionVariableSRW__fallback 00000022
std__sys__imp__c__AcquireSRWLockExclusive__fallback 00000022
std__sys__imp__c__ReleaseSRWLockShared__fallback 00000022
std__sys__imp__c__AcquireSRWLockShared__fallback 00000022
std__sys__imp__c__ReleaseSRWLockExclusive__fallback 00000022
core__cell____impl____fmt_0 00000021
core__cell____impl____fmt 00000021
std__io__impls____impl____write_all_std__sys__imp__stdio__Stderr_ 00000020
std__io__impls____impl____write_std__sys__imp__stdio__Stderr_ 00000020
___scrt_common_main_seh____1___filt$0 0000001E
std__sys_common__poison____impl____fmt_std__sync__mutex__MutexGuard_bool__ 0000001D
std__sys__imp__c__SetThreadStackGuarantee__fallback 0000001C
core__fmt____impl____fmt_collections__string__String_ 0000001B
__scrt_initialize_default_local_stdio_options 0000001B
core__fmt__Write__write_fmt____impl____write_char_collections__string__String__0 0000001A
pre_cpp_initialization 00000019
__scrt_is_nonwritable_in_current_image$filt$0 00000018
core__fmt____impl____fmt_str_ 00000018
collections__string____impl____fmt 00000018
atexit 00000017
core__fmt____impl____fmt_Debug_ 00000016
alloc__oom__oom 00000015
mainCRTStartup 00000012
core__any____impl____get_type_id__str_ 00000010
core__any____impl____get_type_id_collections__string__String_ 00000010
std__error__Error__type_id_std__error____impl____from__StringError_ 00000010
std__error__Error__cause_std__error____impl____from__StringError_ 00000010
post_pgo_initialization 00000010
core__fmt__Write__write_fmt____impl____write_str_core__fmt__builders__PadAdapter_ 0000000E
core__fmt__Write__write_fmt____impl____write_str_std__io__Write__write_fmt__Adaptor_std__io__stdio__StdoutLock__ 0000000E
core__fmt____impl____fmt_usize_ 0000000E
core__fmt__Write__write_fmt____impl____write_str_std__io__Write__write_fmt__Adaptor_std__sys__imp__stdio__Stderr__ 0000000E
__scrt_set_unhandled_exception_filter 0000000E
__scrt_initialize_type_info(void) 0000000E
std__error____impl____from____impl____description 0000000D
__scrt_is_ucrt_dll_in_use 0000000C
__scrt_is_user_matherr_present 0000000C
core__fmt__ArgumentV1__show_usize 0000000B
alloc__oom__default_oom_handler 00000008
__scrt_get_dyn_tls_dtor_callback 00000008
__scrt_get_dyn_tls_init_callback 00000008
__local_stdio_scanf_options 00000008
__local_stdio_printf_options 00000008
_guard_check_icall 00000007
sub_140005B50 00000006
terminate_0 00000006
_crt_atexit_0 00000006
_register_onexit_function_0 00000006
_initialize_onexit_table_0 00000006
__p__commode_0 00000006
_set_new_mode_0 00000006
_configthreadlocale_0 00000006
_register_thread_local_exe_atexit_callback_0 00000006
_c_exit_0 00000006
_cexit_0 00000006
__p___argv_0 00000006
__p___argc_0 00000006
_set_fmode_0 00000006
_exit_0 00000006
exit_0 00000006
_initterm_e_0 00000006
_initterm_0 00000006
_get_initial_narrow_environment_0 00000006
_initialize_narrow_environment_0 00000006
_configure_narrow_argv_0 00000006
__setusermatherr_0 00000006
_set_app_type_0 00000006
_seh_filter_exe_0 00000006
strlen_0 00000006
__C_specific_handler_0 00000006
memmove_0 00000006
memcmp_0 00000006
memset_0 00000006
memcpy_0 00000006
IsProcessorFeaturePresent_0 00000006
FormatMessageW_0 00000006
TlsFree_0 00000006
TlsAlloc_0 00000006
HeapReAlloc_0 00000006
WriteConsoleW_0 00000006
WriteFile_0 00000006
RtlCaptureContext_0 00000006
GetCurrentThread_0 00000006
GetCurrentProcess_0 00000006
FreeLibrary_0 00000006
LoadLibraryW_0 00000006
GetConsoleMode_0 00000006
GetStdHandle_0 00000006
TlsSetValue_0 00000006
TlsGetValue_0 00000006
GetEnvironmentVariableW_0 00000006
SetLastError_0 00000006
DeleteCriticalSection_0 00000006
InitializeCriticalSection_0 00000006
HeapFree_0 00000006
GetProcAddress_0 00000006
GetModuleHandleW_0 00000006
LeaveCriticalSection_0 00000006
EnterCriticalSection_0 00000006
HeapAlloc_0 00000006
GetProcessHeap_0 00000006
GetLastError_0 00000006
AddVectoredExceptionHandler_0 00000006
_get_startup_file_mode 00000006
_get_startup_argv_mode 00000006
__scrt_stub_for_acrt_uninitialize 00000003
_guard_check_icall_nop 00000003
__scrt_initialize_winrt 00000003
_guard_dispatch_icall_nop 00000002
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment