Update libdemangle (#5850)

* Update libdemangle to revision 37f9e9e
* Fix: C++ demangler plugin definition
* Fix: update tests
This commit is contained in:
billow 2026-02-19 12:20:29 +08:00 committed by GitHub
parent 3db19a4c30
commit b4ca5641e6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
12 changed files with 102 additions and 118 deletions

View file

@ -20,14 +20,7 @@
.demangle = &handler##_cast, \
}
#if WITH_GPL
// cpp demangler contains GPL2 code and LGPL3 for delphi
DEFINE_DEMANGLER_PLUGIN(cpp, "c++", "GPL-2,LGPL3", "FSF/deroad", libdemangle_handler_cxx);
#else
// cpp demangler contain only the LGPL3 for delphi
DEFINE_DEMANGLER_PLUGIN(cpp, "c++", "LGPL3", "deroad", libdemangle_handler_cxx);
#endif /* WITH_GPL */
DEFINE_DEMANGLER_PLUGIN(cpp, "c++", "LGPL3", "billow", libdemangle_handler_cxx);
DEFINE_DEMANGLER_PLUGIN(rust, "rust", "LGPL3", "Dhruv Maroo/RizinOrg", libdemangle_handler_rust);
DEFINE_DEMANGLER_PLUGIN(java, "java", "LGPL3", "deroad", libdemangle_handler_java);
DEFINE_DEMANGLER_PLUGIN(msvc, "msvc", "LGPL3", "inisider", libdemangle_handler_msvc);

View file

@ -312,11 +312,6 @@ libdemangle_options = [
'default_library=static',
'use_swift_demangler=false',
]
if get_option('use_gpl')
libdemangle_options += 'use_gpl=true'
else
libdemangle_options += 'use_gpl=false'
endif
libdemangle_proj = subproject('libdemangle', default_options: libdemangle_options)
libdemangle_dep = libdemangle_proj.get_variable('libdemangle_dep')

View file

@ -1,4 +1,4 @@
[wrap-git]
url = https://github.com/rizinorg/rz-libdemangle.git
revision = d3083c18befed11069b65c57c2ad79fa5d9afba4
revision = 37f9e9e5a0a0b7fdc6faf030b2495a40f81e47e9
depth = 1

View file

@ -34,11 +34,11 @@ nth addr vt_offset type name
3 0x00400ac8 0x00000000 VIRTUAL method.A.greet
[std]
[std::basic_ostream_char__std::char_traits_char_____std]
nth addr vt_offset type name
-----------------------------------------------------------------------
1 0x00400890 ---------- DEFAULT operator<< <std::char_traits<char> >
2 0x004008b0 ---------- DEFAULT endl<char, std::char_traits<char> >
[std::basic_ostream_char__std::char_traits_char____std]
nth addr vt_offset type name
---------------------------------------------------------------------
1 0x00400890 ---------- DEFAULT operator<<<std::char_traits<char>>
2 0x004008b0 ---------- DEFAULT endl<char, std::char_traits<char>>
[std::ios_base::Init]
nth addr vt_offset type name
@ -77,11 +77,11 @@ nth addr vt_offset type name
3 0x00400ac8 0x00000000 VIRTUAL method.A.greet
[std]
[std::basic_ostream_char__std::char_traits_char_____std]
nth addr vt_offset type name
-----------------------------------------------------------------------
1 0x00400890 ---------- DEFAULT operator<< <std::char_traits<char> >
2 0x004008b0 ---------- DEFAULT endl<char, std::char_traits<char> >
[std::basic_ostream_char__std::char_traits_char____std]
nth addr vt_offset type name
---------------------------------------------------------------------
1 0x00400890 ---------- DEFAULT operator<<<std::char_traits<char>>
2 0x004008b0 ---------- DEFAULT endl<char, std::char_traits<char>>
[std::ios_base::Init]
nth addr vt_offset type name
@ -120,11 +120,11 @@ nth addr vt_offset type name
3 0x00400ac8 0x00000000 VIRTUAL method.A.greet
[std]
[std::basic_ostream_char__std::char_traits_char_____std]
nth addr vt_offset type name
-----------------------------------------------------------------------
1 0x00400890 ---------- DEFAULT operator<< <std::char_traits<char> >
2 0x004008b0 ---------- DEFAULT endl<char, std::char_traits<char> >
[std::basic_ostream_char__std::char_traits_char____std]
nth addr vt_offset type name
---------------------------------------------------------------------
1 0x00400890 ---------- DEFAULT operator<<<std::char_traits<char>>
2 0x004008b0 ---------- DEFAULT endl<char, std::char_traits<char>>
[std::ios_base::Init]
nth addr vt_offset type name

View file

@ -556,7 +556,7 @@ aaa
aclj
EOF
EXPECT=<<EOF
[{"name":"B","bases":[{"id":"0","name":"A","offset":0}],"vtables":[{"id":"0","addr":4197640,"offset":0}],"methods":[{"name":"B","addr":4197198,"type":"CONSTRUCTOR"},{"name":"printValue","addr":4197250,"type":"VIRTUAL","vtable_offset":8},{"name":"method.A.greet","addr":4197064,"type":"VIRTUAL","vtable_offset":0}]},{"name":"std::ios_base::Init","bases":[],"vtables":[],"methods":[{"name":"Init","addr":4196432,"type":"DEFAULT"},{"name":"~Init","addr":4196480,"type":"DEFAULT"}]},{"name":"std","bases":[],"vtables":[],"methods":[]},{"name":"std::ostream","bases":[],"vtables":[],"methods":[{"name":"operator<<","addr":4196400,"type":"DEFAULT"},{"name":"operator<<","addr":4196512,"type":"DEFAULT"}]},{"name":"std::basic_ostream_char__std::char_traits_char_____std","bases":[],"vtables":[],"methods":[{"name":"operator<< <std::char_traits<char> >","addr":4196496,"type":"DEFAULT"},{"name":"endl<char, std::char_traits<char> >","addr":4196528,"type":"DEFAULT"}]},{"name":"A","bases":[],"vtables":[{"id":"0","addr":4197672,"offset":0}],"methods":[{"name":"greet","addr":4197064,"type":"VIRTUAL","vtable_offset":0},{"name":"printValue","addr":4197108,"type":"VIRTUAL","vtable_offset":8},{"name":"A","addr":4197174,"type":"CONSTRUCTOR"}]},{"name":"C","bases":[{"id":"0","name":"A","offset":0}],"vtables":[{"id":"0","addr":4197608,"offset":0}],"methods":[{"name":"C","addr":4197316,"type":"CONSTRUCTOR"},{"name":"printValue","addr":4197368,"type":"VIRTUAL","vtable_offset":8},{"name":"method.A.greet","addr":4197064,"type":"VIRTUAL","vtable_offset":0}]}]
[{"name":"B","bases":[{"id":"0","name":"A","offset":0}],"vtables":[{"id":"0","addr":4197640,"offset":0}],"methods":[{"name":"B","addr":4197198,"type":"CONSTRUCTOR"},{"name":"printValue","addr":4197250,"type":"VIRTUAL","vtable_offset":8},{"name":"method.A.greet","addr":4197064,"type":"VIRTUAL","vtable_offset":0}]},{"name":"std::basic_ostream_char__std::char_traits_char____std","bases":[],"vtables":[],"methods":[{"name":"operator<<<std::char_traits<char>>","addr":4196496,"type":"DEFAULT"},{"name":"endl<char, std::char_traits<char>>","addr":4196528,"type":"DEFAULT"}]},{"name":"std::ios_base::Init","bases":[],"vtables":[],"methods":[{"name":"Init","addr":4196432,"type":"DEFAULT"},{"name":"~Init","addr":4196480,"type":"DEFAULT"}]},{"name":"std","bases":[],"vtables":[],"methods":[]},{"name":"std::ostream","bases":[],"vtables":[],"methods":[{"name":"operator<<","addr":4196400,"type":"DEFAULT"},{"name":"operator<<","addr":4196512,"type":"DEFAULT"}]},{"name":"A","bases":[],"vtables":[{"id":"0","addr":4197672,"offset":0}],"methods":[{"name":"greet","addr":4197064,"type":"VIRTUAL","vtable_offset":0},{"name":"printValue","addr":4197108,"type":"VIRTUAL","vtable_offset":8},{"name":"A","addr":4197174,"type":"CONSTRUCTOR"}]},{"name":"C","bases":[{"id":"0","name":"A","offset":0}],"vtables":[{"id":"0","addr":4197608,"offset":0}],"methods":[{"name":"C","addr":4197316,"type":"CONSTRUCTOR"},{"name":"printValue","addr":4197368,"type":"VIRTUAL","vtable_offset":8},{"name":"method.A.greet","addr":4197064,"type":"VIRTUAL","vtable_offset":0}]}]
EOF
RUN

View file

@ -30,11 +30,11 @@ nth addr vt_offset type name
3 0x00400ac8 0x00000000 VIRTUAL method.A.greet
[std]
[std::basic_ostream_char__std::char_traits_char_____std]
nth addr vt_offset type name
-----------------------------------------------------------------------
1 0x00400890 ---------- DEFAULT operator<< <std::char_traits<char> >
2 0x004008b0 ---------- DEFAULT endl<char, std::char_traits<char> >
[std::basic_ostream_char__std::char_traits_char____std]
nth addr vt_offset type name
---------------------------------------------------------------------
1 0x00400890 ---------- DEFAULT operator<<<std::char_traits<char>>
2 0x004008b0 ---------- DEFAULT endl<char, std::char_traits<char>>
[std::ios_base::Init]
nth addr vt_offset type name
@ -89,10 +89,10 @@ nth addr vt_offset type name
4 0x00001602 ---------- DESTRUCTOR ~Triangle
[std]
[std::basic_ostream_char__std::char_traits_char_____std]
nth addr vt_offset type name
----------------------------------------------------------------------
1 ---------- ---------- DEFAULT endl<char, std::char_traits<char> >
[std::basic_ostream_char__std::char_traits_char____std]
nth addr vt_offset type name
---------------------------------------------------------------------
1 ---------- ---------- DEFAULT endl<char, std::char_traits<char>>
[std::ios_base::Init]
nth addr vt_offset type name
@ -148,10 +148,10 @@ nth addr vt_offset type name
4 0x00001602 ---------- DESTRUCTOR ~Triangle
[std]
[std::basic_ostream_char__std::char_traits_char_____std]
nth addr vt_offset type name
----------------------------------------------------------------------
1 ---------- ---------- DEFAULT endl<char, std::char_traits<char> >
[std::basic_ostream_char__std::char_traits_char____std]
nth addr vt_offset type name
---------------------------------------------------------------------
1 ---------- ---------- DEFAULT endl<char, std::char_traits<char>>
[std::ios_base::Init]
nth addr vt_offset type name
@ -182,10 +182,10 @@ nth addr vt_offset type name
2 0x004008da 0x00000000 VIRTUAL print
[std]
[std::basic_ostream_char__std::char_traits_char_____std]
nth addr vt_offset type name
-----------------------------------------------------------------------
1 0x00400660 ---------- DEFAULT operator<< <std::char_traits<char> >
[std::basic_ostream_char__std::char_traits_char____std]
nth addr vt_offset type name
---------------------------------------------------------------------
1 0x00400660 ---------- DEFAULT operator<<<std::char_traits<char>>
[std::ios_base::Init]
nth addr vt_offset type name
@ -230,10 +230,10 @@ nth addr vt_offset type name
2 0x00400ac0 ---------- DEFAULT ~Mammal
[std]
[std::basic_ostream_char__std::char_traits_char_____std]
nth addr vt_offset type name
-----------------------------------------------------------------------
1 0x004007c0 ---------- DEFAULT operator<< <std::char_traits<char> >
[std::basic_ostream_char__std::char_traits_char____std]
nth addr vt_offset type name
---------------------------------------------------------------------
1 0x004007c0 ---------- DEFAULT operator<<<std::char_traits<char>>
[std::ios_base::Init]
nth addr vt_offset type name
@ -303,25 +303,21 @@ nth addr vt_offset type name
-----------------------------------------------------------------------
1 0x100003838 ---------- DEFAULT __compressed_pair_elem[abi:v160006]
[std::__1::__compressed_pair_elem_std::__1::basic_string_char__std::__1::char_traits_char___std::__1::allocator_char___::__rep__0__false_]
[std::__1::__compressed_pair_elem_std::__1::basic_string_char__std::__1::char_traits_char___std::__1::allocator_char__::__rep__0__false_]
nth addr vt_offset type name
-----------------------------------------------------------------------
1 0x100003824 ---------- DEFAULT __compressed_pair_elem[abi:v160006]
2 0x1000039b8 ---------- DEFAULT __get[abi:v160006]
3 0x1000039f0 ---------- DEFAULT __get[abi:v160006]
[std::__1::__compressed_pair_std::__1::basic_string_char__std::__1::char_traits_char___std::__1::allocator_char___::__rep__std::__1::allocator_char___]
nth addr vt_offset type name
------------------------------------------------------
1 0x100003994 ---------- DEFAULT first[abi:v160006]
2 0x1000039cc ---------- DEFAULT first[abi:v160006]
[std::__1::__default_init_tag___std::__1::__compressed_pair_std::__1::basic_string_char__std::__1::char_traits_char___std::__1::allocator_char___::__rep__std::__1::allocator_char___]
[std::__1::__compressed_pair_std::__1::basic_string_char__std::__1::char_traits_char___std::__1::allocator_char__::__rep__std::__1::allocator_char__]
nth addr vt_offset type name
------------------------------------------------------------------------------------------------------------------------------
1 0x10000379c ---------- DEFAULT __compressed_pair[abi:v160006]<std::__1::__default_init_tag, std::__1::__default_init_tag>
2 0x100003994 ---------- DEFAULT first[abi:v160006]
3 0x1000039cc ---------- DEFAULT first[abi:v160006]
[std::__1::__non_trivial_if_true__std::__1::allocator_char___]
[std::__1::__non_trivial_if_true__std::__1::allocator_char__]
nth addr vt_offset type name
-----------------------------------------------------------------
1 0x100003890 ---------- DEFAULT __non_trivial_if[abi:v160006]
@ -331,7 +327,7 @@ nth addr vt_offset type name
----------------------------------------------------------
1 0x100003864 ---------- DEFAULT allocator[abi:v160006]
[std::__1::basic_ios_char__std::__1::char_traits_char___]
[std::__1::basic_ios_char__std::__1::char_traits_char__]
nth addr vt_offset type name
---------------------------------------------------------
1 0x1000035a0 ---------- DEFAULT fill[abi:v160006]
@ -339,25 +335,25 @@ nth addr vt_offset type name
3 0x100003a6c ---------- DEFAULT rdbuf[abi:v160006]
4 0x100003ad8 ---------- DEFAULT widen[abi:v160006]
[std::__1::basic_ostream_char__std::__1::char_traits_char___::sentry]
[std::__1::basic_ostream_char__std::__1::char_traits_char__::sentry]
nth addr vt_offset type name
--------------------------------------------------------------
1 0x1000032f8 ---------- DEFAULT operator bool[abi:v160006]
2 0x100003ce8 ---------- DEFAULT sentry
3 0x100003cf4 ---------- DEFAULT ~sentry
[std::__1::basic_ostream_char__std::__1::char_traits_char_____std::__1]
nth addr vt_offset type name
-------------------------------------------------------------------------------------------------------------
1 0x100002ea0 ---------- DEFAULT operator<<[abi:v160006]<std::__1::char_traits<char> >
2 0x1000030d8 ---------- DEFAULT __put_character_sequence[abi:v160006]<char, std::__1::char_traits<char> >
[std::__1::basic_ostream_char__std::__1::char_traits_char____std::__1]
nth addr vt_offset type name
------------------------------------------------------------------------------------------------------------
1 0x100002ea0 ---------- DEFAULT operator<<[abi:v160006]<std::__1::char_traits<char>>
2 0x1000030d8 ---------- DEFAULT __put_character_sequence[abi:v160006]<char, std::__1::char_traits<char>>
[std::__1::basic_streambuf_char__std::__1::char_traits_char___]
[std::__1::basic_streambuf_char__std::__1::char_traits_char__]
nth addr vt_offset type name
------------------------------------------------------
1 0x10000367c ---------- DEFAULT sputn[abi:v160006]
[std::__1::basic_string_char__std::__1::char_traits_char___std::__1::allocator_char___]
[std::__1::basic_string_char__std::__1::char_traits_char___std::__1::allocator_char__]
nth addr vt_offset type name
--------------------------------------------------------------------
1 0x1000036b8 ---------- DEFAULT basic_string[abi:v160006]
@ -382,9 +378,9 @@ nth addr vt_offset type name
1 0x100003b88 ---------- DEFAULT widen[abi:v160006]
[std::__1::ctype_char__const__std::__1]
nth addr vt_offset type name
----------------------------------------------------------------------------------
1 0x100003b5c ---------- DEFAULT use_facet[abi:v160006]<std::__1::ctype<char> >
nth addr vt_offset type name
---------------------------------------------------------------------------------
1 0x100003b5c ---------- DEFAULT use_facet[abi:v160006]<std::__1::ctype<char>>
[std::__1::ios_base]
nth addr vt_offset type name
@ -404,16 +400,16 @@ nth addr vt_offset type name
1 0x100003c94 ---------- DEFAULT use_facet
2 0x100003d00 ---------- DEFAULT ~locale
[std::__1::ostreambuf_iterator_char__std::__1::char_traits_char___]
[std::__1::ostreambuf_iterator_char__std::__1::char_traits_char__]
nth addr vt_offset type name
--------------------------------------------------------------------
1 0x100003554 ---------- DEFAULT ostreambuf_iterator[abi:v160006]
2 0x100003604 ---------- DEFAULT failed[abi:v160006]
[std::__1::ostreambuf_iterator_char__std::__1::char_traits_char____std::__1]
nth addr vt_offset type name
-----------------------------------------------------------------------------------------------------
1 0x100003314 ---------- DEFAULT __pad_and_output[abi:v160006]<char, std::__1::char_traits<char> >
[std::__1::ostreambuf_iterator_char__std::__1::char_traits_char___std::__1]
nth addr vt_offset type name
----------------------------------------------------------------------------------------------------
1 0x100003314 ---------- DEFAULT __pad_and_output[abi:v160006]<char, std::__1::char_traits<char>>
[std::__1::pointer_traits_char__]
nth addr vt_offset type name
@ -421,9 +417,9 @@ nth addr vt_offset type name
1 0x100003a04 ---------- DEFAULT pointer_to[abi:v160006]
[void_std::__1]
nth addr vt_offset type name
------------------------------------------------------------------------------------------------------------------------------------------------------------
1 0x1000037d8 ---------- DEFAULT __debug_db_insert_c[abi:v160006]<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >
nth addr vt_offset type name
----------------------------------------------------------------------------------------------------------------------------------------------------------
1 0x1000037d8 ---------- DEFAULT __debug_db_insert_c[abi:v160006]<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>
EOF
RUN

View file

@ -693,8 +693,8 @@ pd 1 @ 0x000011ef @e:asm.flags.real=true
pd 1 @ 0x000011ef @e:asm.flags.real=false
EOF
EXPECT=<<EOF
0x000011ef call std::vector<int, std::allocator<int> >::vector() ; method.std::vector_int__std::allocator_int___.vector
0x000011ef call method.std::vector_int__std::allocator_int___.vector
0x000011ef call std::vector<int, std::allocator<int>>::vector() ; method.std::vector_int__std::allocator_int__.vector
0x000011ef call method.std::vector_int__std::allocator_int__.vector
EOF
RUN

View file

@ -1231,12 +1231,12 @@ pthread_mutex_unlock
0x000149a4 2 typeinfo name for unsigned long
0x000149a8 3 typeinfo name for unsigned long*
0x000149ac 4 typeinfo name for unsigned long const*
0x000149b0 2 typeinfo name for int64_t
0x000149b4 3 typeinfo name for int64_t*
0x000149b8 4 typeinfo name for int64_t const*
0x000149bc 2 typeinfo name for uint64_t
0x000149c0 3 typeinfo name for uint64_t*
0x000149c4 4 typeinfo name for uint64_t const*
0x000149b0 2 typeinfo name for long long
0x000149b4 3 typeinfo name for long long*
0x000149b8 4 typeinfo name for long long const*
0x000149bc 2 typeinfo name for unsigned long long
0x000149c0 3 typeinfo name for unsigned long long*
0x000149c4 4 typeinfo name for unsigned long long const*
0x000149c8 2 typeinfo name for float
0x000149cc 3 typeinfo name for float*
0x000149d0 4 typeinfo name for float const*
@ -1255,13 +1255,13 @@ pthread_mutex_unlock
0x00014a0c 3 typeinfo name for decimal128
0x00014a10 4 typeinfo name for decimal128*
0x00014a14 5 typeinfo name for decimal128 const*
0x00014a1c 3 typeinfo name for decltype(nullptr)
0x00014a20 4 typeinfo name for decltype(nullptr)*
0x00014a24 5 typeinfo name for decltype(nullptr) const*
0x00016848 16 typeinfo for decltype(nullptr) const*
0x00014a1c 3 typeinfo name for std::nullptr_t
0x00014a20 4 typeinfo name for std::nullptr_t*
0x00014a24 5 typeinfo name for std::nullptr_t const*
0x00016848 16 typeinfo for std::nullptr_t const*
0x00016c18 36 vtable for __cxxabiv1::__pointer_type_info
0x00016868 8 typeinfo for decltype(nullptr)
0x00016858 16 typeinfo for decltype(nullptr)*
0x00016868 8 typeinfo for std::nullptr_t
0x00016858 16 typeinfo for std::nullptr_t*
0x00016870 16 typeinfo for decimal128 const*
0x00016890 8 typeinfo for decimal128
0x00016880 16 typeinfo for decimal128*
@ -1280,12 +1280,12 @@ pthread_mutex_unlock
0x00016938 16 typeinfo for float const*
0x00016958 8 typeinfo for float
0x00016948 16 typeinfo for float*
0x00016960 16 typeinfo for uint64_t const*
0x00016980 8 typeinfo for uint64_t
0x00016970 16 typeinfo for uint64_t*
0x00016988 16 typeinfo for int64_t const*
0x000169a8 8 typeinfo for int64_t
0x00016998 16 typeinfo for int64_t*
0x00016960 16 typeinfo for unsigned long long const*
0x00016980 8 typeinfo for unsigned long long
0x00016970 16 typeinfo for unsigned long long*
0x00016988 16 typeinfo for long long const*
0x000169a8 8 typeinfo for long long
0x00016998 16 typeinfo for long long*
0x000169b0 16 typeinfo for unsigned long const*
0x000169d0 8 typeinfo for unsigned long
0x000169c0 16 typeinfo for unsigned long*

View file

@ -6,7 +6,7 @@ EOF
EXPECT=<<EOF
size
------
12.9K
13.1K
EOF
RUN

View file

@ -22,7 +22,7 @@ EXPECT=<<EOF
0x00001dfa 0 imp.std::ostream::operator<<(std::ostream& (*)(std::ostream&))
0x00001e00 0 imp.std::ios_base::Init::Init()
0x00001e06 0 imp.std::ios_base::Init::~Init()
0x00001e12 0 imp.std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)
0x00001e12 0 imp.std::basic_ostream<char, std::char_traits<char>>& std::operator<<<std::char_traits<char>>(std::basic_ostream<char, std::char_traits<char>>&, char const*)
0x00001e18 0 imp.__cxa_atexit
0x00001e1e 0 imp.exit
EOF
@ -143,7 +143,7 @@ NAME=demangle obj in pd
FILE=bins/elf/ch25.bin
CMDS=e asm.bytes=true; pd 1 @ 0x08048aac;
EXPECT=<<EOF
0x08048aac c7042460b004. mov dword [esp], obj.std::cerr ; sym..bss
0x08048aac c7042460b004. mov dword [esp], obj.std::cerr ; obj._ZSt4cerr__GLIBCXX_3.4
; [0x804b060:4]=0
EOF
RUN
@ -256,15 +256,15 @@ EOF
EXPECT=<<EOF
; CALL XREF from main @ +0x222
; CALL XREF from fcn.00001717 @ +0xbb
; CALL XREF from sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_char___void__char___char___std::allocator_char__const @ +0x66
; CALL XREF from sym.void_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_construct_char___char___char___std::forward_iterator_tag @ +0x116
; CALL XREF from sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char__::basic_string_char___void__char___char___std::allocator_char__const @ +0x66
; CALL XREF from sym.void_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char__::_M_construct_char___char___char___std::forward_iterator_tag @ +0x116
/ sym.imp._Unwind_Resume();
\ 0x00000f10 jmp dword [ebx+0x70]
; CALL XREF from main @ +0x222
; CALL XREF from fcn.00001717 @ +0xbb
; CALL XREF from sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_char___void__char___char___std::allocator_char__const @ +0x66
; CALL XREF from sym.void_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_construct_char___char___char___std::forward_iterator_tag @ +0x116
; CALL XREF from sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char__::basic_string_char___void__char___char___std::allocator_char__const @ +0x66
; CALL XREF from sym.void_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char__::_M_construct_char___char___char___std::forward_iterator_tag @ +0x116
/ sym.imp._Unwind_Resume();
\ 0x00000f10 jmp dword [ebx+0x70]
EOF
@ -496,7 +496,7 @@ EXPECT=<<EOF
0x00001dfa 0 imp.std::ostream::operator<<(std::ostream& (*)(std::ostream&))
0x00001e00 0 imp.std::ios_base::Init::Init()
0x00001e06 0 imp.std::ios_base::Init::~Init()
0x00001e12 0 imp.std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)
0x00001e12 0 imp.std::basic_ostream<char, std::char_traits<char>>& std::operator<<<std::char_traits<char>>(std::basic_ostream<char, std::char_traits<char>>&, char const*)
====================
0x00001d9a 0 unsigned long const& std::min<unsigned long>(unsigned long const&, unsigned long const&)
0x00001c4e 0 std::__verify_grouping(char const*, unsigned long, std::string const&)
@ -506,7 +506,7 @@ EXPECT=<<EOF
0x00001dfa 0 imp.std::ostream::operator<<(std::ostream& (*)(std::ostream&))
0x00001e00 0 imp.std::ios_base::Init::Init()
0x00001e06 0 imp.std::ios_base::Init::~Init()
0x00001e12 0 imp.std::ostream& std::operator<< <std::char_traits<char> >(std::ostream&, char const*)
0x00001e12 0 imp.std::ostream& std::operator<<<std::char_traits<char>>(std::ostream&, char const*)
====================
0x00001d9a 0 __ZSt3minImERKT_S2_S2_
0x00001ba0 0 __Z41__static_initialization_and_destruction_0ii

View file

@ -115,7 +115,7 @@ bintype mach0
0x000012a8 0x000012a8 0x0000d298 UNKNOWN IORegistryEntry::setProperty(char const*, OSObject*)
0x000012b0 0x000012b0 0x0000d2a0 UNKNOWN IORegistryEntry::setProperty(char const*, char const*)
0x000012b8 0x000012b8 0x0000d2a8 UNKNOWN IORegistryEntry::setProperty(char const*, bool)
0x000012c0 0x000012c0 0x0000d2b0 UNKNOWN IORegistryEntry::setProperty(char const*, uint64_t, unsigned int)
0x000012c0 0x000012c0 0x0000d2b0 UNKNOWN IORegistryEntry::setProperty(char const*, unsigned long long, unsigned int)
0x000012c8 0x000012c8 0x0000d2b8 UNKNOWN IORegistryEntry::setProperty(char const*, void*, unsigned int)
0x000012d0 0x000012d0 0x0000d2c0 UNKNOWN IORegistryEntry::removeProperty(OSSymbol const*)
0x000012d8 0x000012d8 0x0000d2c8 UNKNOWN IORegistryEntry::removeProperty(OSString const*)
@ -165,7 +165,7 @@ bintype mach0
0x00001438 0x00001438 0x0000d428 UNKNOWN IOService::requestTerminate(IOService*, unsigned int)
0x00001440 0x00001440 0x0000d430 UNKNOWN IOService::willTerminate(IOService*, unsigned int)
0x00001448 0x00001448 0x0000d438 UNKNOWN IOService::didTerminate(IOService*, unsigned int, bool*)
0x00001450 0x00001450 0x0000d440 UNKNOWN IOService::nextIdleTimeout(uint64_t, uint64_t, unsigned int)
0x00001450 0x00001450 0x0000d440 UNKNOWN IOService::nextIdleTimeout(unsigned long long, unsigned long long, unsigned int)
0x00001458 0x00001458 0x0000d448 UNKNOWN IOService::systemWillShutdown(unsigned int)
0x00001460 0x00001460 0x0000d450 UNKNOWN IOService::copyClientWithCategory(OSSymbol const*)
0x00001468 0x00001468 0x0000d458 UNKNOWN IOService::configureReport(IOReportChannelList*, unsigned int, void*, void*)
@ -464,7 +464,7 @@ bintype mach0
0x000012a8 0x000012a8 0x0000d298 UNKNOWN IORegistryEntry::setProperty(char const*, OSObject*)
0x000012b0 0x000012b0 0x0000d2a0 UNKNOWN IORegistryEntry::setProperty(char const*, char const*)
0x000012b8 0x000012b8 0x0000d2a8 UNKNOWN IORegistryEntry::setProperty(char const*, bool)
0x000012c0 0x000012c0 0x0000d2b0 UNKNOWN IORegistryEntry::setProperty(char const*, uint64_t, unsigned int)
0x000012c0 0x000012c0 0x0000d2b0 UNKNOWN IORegistryEntry::setProperty(char const*, unsigned long long, unsigned int)
0x000012c8 0x000012c8 0x0000d2b8 UNKNOWN IORegistryEntry::setProperty(char const*, void*, unsigned int)
0x000012d0 0x000012d0 0x0000d2c0 UNKNOWN IORegistryEntry::removeProperty(OSSymbol const*)
0x000012d8 0x000012d8 0x0000d2c8 UNKNOWN IORegistryEntry::removeProperty(OSString const*)
@ -514,7 +514,7 @@ bintype mach0
0x00001438 0x00001438 0x0000d428 UNKNOWN IOService::requestTerminate(IOService*, unsigned int)
0x00001440 0x00001440 0x0000d430 UNKNOWN IOService::willTerminate(IOService*, unsigned int)
0x00001448 0x00001448 0x0000d438 UNKNOWN IOService::didTerminate(IOService*, unsigned int, bool*)
0x00001450 0x00001450 0x0000d440 UNKNOWN IOService::nextIdleTimeout(uint64_t, uint64_t, unsigned int)
0x00001450 0x00001450 0x0000d440 UNKNOWN IOService::nextIdleTimeout(unsigned long long, unsigned long long, unsigned int)
0x00001458 0x00001458 0x0000d448 UNKNOWN IOService::systemWillShutdown(unsigned int)
0x00001460 0x00001460 0x0000d450 UNKNOWN IOService::copyClientWithCategory(OSSymbol const*)
0x00001468 0x00001468 0x0000d458 UNKNOWN IOService::configureReport(IOReportChannelList*, unsigned int, void*, void*)
@ -809,7 +809,7 @@ bintype mach0
0x0000c308 0x0000c308 0x0001c2c8 UNKNOWN IORegistryEntry::setProperty(char const*, OSObject*)
0x0000c310 0x0000c310 0x0001c2d0 UNKNOWN IORegistryEntry::setProperty(char const*, char const*)
0x0000c318 0x0000c318 0x0001c2d8 UNKNOWN IORegistryEntry::setProperty(char const*, bool)
0x0000c320 0x0000c320 0x0001c2e0 UNKNOWN IORegistryEntry::setProperty(char const*, uint64_t, unsigned int)
0x0000c320 0x0000c320 0x0001c2e0 UNKNOWN IORegistryEntry::setProperty(char const*, unsigned long long, unsigned int)
0x0000c328 0x0000c328 0x0001c2e8 UNKNOWN IORegistryEntry::setProperty(char const*, void*, unsigned int)
0x0000c330 0x0000c330 0x0001c2f0 UNKNOWN IORegistryEntry::removeProperty(OSSymbol const*)
0x0000c338 0x0000c338 0x0001c2f8 UNKNOWN IORegistryEntry::removeProperty(OSString const*)
@ -859,7 +859,7 @@ bintype mach0
0x0000c498 0x0000c498 0x0001c458 UNKNOWN IOService::requestTerminate(IOService*, unsigned int)
0x0000c4a0 0x0000c4a0 0x0001c460 UNKNOWN IOService::willTerminate(IOService*, unsigned int)
0x0000c4a8 0x0000c4a8 0x0001c468 UNKNOWN IOService::didTerminate(IOService*, unsigned int, bool*)
0x0000c4b0 0x0000c4b0 0x0001c470 UNKNOWN IOService::nextIdleTimeout(uint64_t, uint64_t, unsigned int)
0x0000c4b0 0x0000c4b0 0x0001c470 UNKNOWN IOService::nextIdleTimeout(unsigned long long, unsigned long long, unsigned int)
0x0000c4b8 0x0000c4b8 0x0001c478 UNKNOWN IOService::systemWillShutdown(unsigned int)
0x0000c4c0 0x0000c4c0 0x0001c480 UNKNOWN IOService::copyClientWithCategory(OSSymbol const*)
0x0000c4c8 0x0000c4c8 0x0001c488 UNKNOWN IOService::configureReport(IOReportChannelList*, unsigned int, void*, void*)
@ -1153,7 +1153,7 @@ bintype mach0
0x0000c308 0x0000c308 0x0001c2c8 UNKNOWN IORegistryEntry::setProperty(char const*, OSObject*)
0x0000c310 0x0000c310 0x0001c2d0 UNKNOWN IORegistryEntry::setProperty(char const*, char const*)
0x0000c318 0x0000c318 0x0001c2d8 UNKNOWN IORegistryEntry::setProperty(char const*, bool)
0x0000c320 0x0000c320 0x0001c2e0 UNKNOWN IORegistryEntry::setProperty(char const*, uint64_t, unsigned int)
0x0000c320 0x0000c320 0x0001c2e0 UNKNOWN IORegistryEntry::setProperty(char const*, unsigned long long, unsigned int)
0x0000c328 0x0000c328 0x0001c2e8 UNKNOWN IORegistryEntry::setProperty(char const*, void*, unsigned int)
0x0000c330 0x0000c330 0x0001c2f0 UNKNOWN IORegistryEntry::removeProperty(OSSymbol const*)
0x0000c338 0x0000c338 0x0001c2f8 UNKNOWN IORegistryEntry::removeProperty(OSString const*)
@ -1203,7 +1203,7 @@ bintype mach0
0x0000c498 0x0000c498 0x0001c458 UNKNOWN IOService::requestTerminate(IOService*, unsigned int)
0x0000c4a0 0x0000c4a0 0x0001c460 UNKNOWN IOService::willTerminate(IOService*, unsigned int)
0x0000c4a8 0x0000c4a8 0x0001c468 UNKNOWN IOService::didTerminate(IOService*, unsigned int, bool*)
0x0000c4b0 0x0000c4b0 0x0001c470 UNKNOWN IOService::nextIdleTimeout(uint64_t, uint64_t, unsigned int)
0x0000c4b0 0x0000c4b0 0x0001c470 UNKNOWN IOService::nextIdleTimeout(unsigned long long, unsigned long long, unsigned int)
0x0000c4b8 0x0000c4b8 0x0001c478 UNKNOWN IOService::systemWillShutdown(unsigned int)
0x0000c4c0 0x0000c4c0 0x0001c480 UNKNOWN IOService::copyClientWithCategory(OSSymbol const*)
0x0000c4c8 0x0000c4c8 0x0001c488 UNKNOWN IOService::configureReport(IOReportChannelList*, unsigned int, void*, void*)

View file

@ -906,7 +906,7 @@ java LGPL3 deroad
msvc LGPL3 inisider
objc LGPL3 pancake
pascal LGPL3 deroad
c++ GPL-2,LGPL3 FSF/deroad
c++ LGPL3 billow
rust LGPL3 Dhruv Maroo/RizinOrg
EOF
RUN