#0 WTF::equalInternal () at /usr/src/debug/webkitgtk-2.38.2/Source/WTF/wtf/text/StringImpl.cpp:1418 #1 WTF::equal () at /usr/src/debug/webkitgtk-2.38.2/Source/WTF/wtf/text/StringImpl.cpp:1427 #2 0x00fffffff435c1fc in WTF::LCharBufferTranslator::equal () at /usr/src/debug/webkitgtk-2.38.2/Source/WTF/wtf/text/AtomStringImpl.cpp:264 #3 WTF::HashSetTranslatorAdapter::equal, WTF::HashTranslatorCharBuffer > () at /usr/src/debug/webkitgtk-2.38.2/Source/WTF/wtf/HashSet.h:172 #4 WTF::HashTable, WTF::Packed, WTF::IdentityExtractor, WTF::DefaultHash >, WTF::HashTraits >, WTF::HashTraits > >::fullLookupForWriting, WTF::HashTranslatorCharBuffer > () at /usr/src/debug/webkitgtk-2.38.2/Source/WTF/wtf/HashTable.h:815 #5 WTF::HashTable, WTF::Packed, WTF::IdentityExtractor, WTF::DefaultHash >, WTF::HashTraits >, WTF::HashTraits > >::addPassingHashCode, WTF::HashTranslatorCharBuffer const&, WTF::HashTranslatorCharBuffer const&> () at /usr/src/debug/webkitgtk-2.38.2/Source/WTF/wtf/HashTable.h:973 #6 WTF::HashSet, WTF::DefaultHash >, WTF::HashTraits >, WTF::HashTableTraits>::add > () at /usr/src/debug/webkitgtk-2.38.2/Source/WTF/wtf/HashSet.h:292 #7 addToStringTable, WTF::LCharBufferTranslator> () at /usr/src/debug/webkitgtk-2.38.2/Source/WTF/wtf/text/AtomStringImpl.cpp:75 #8 addToStringTable, WTF::LCharBufferTranslator> () at /usr/src/debug/webkitgtk-2.38.2/Source/WTF/wtf/text/AtomStringImpl.cpp:88 #9 WTF::AtomStringImpl::add () at /usr/src/debug/webkitgtk-2.38.2/Source/WTF/wtf/text/AtomStringImpl.cpp:307 #10 0x00fffffff6c2edc6 in WTF::AtomStringImpl::add () at /usr/src/debug/webkitgtk-2.38.2/riscv64-alt-linux/WTF/Headers/wtf/text/AtomStringImpl.h:44 #11 WTF::AtomString::AtomString () at /usr/src/debug/webkitgtk-2.38.2/riscv64-alt-linux/WTF/Headers/wtf/text/AtomString.h:290 #12 WTF::LazyNeverDestroyed::constructWithoutAccessCheck () at /usr/src/debug/webkitgtk-2.38.2/riscv64-alt-linux/WTF/Headers/wtf/NeverDestroyed.h:130 #13 operator() () at /usr/src/debug/webkitgtk-2.38.2/Source/WebCore/platform/CommonAtomStrings.cpp:45 #14 __invoke_impl > () at /usr/include/c++/10/bits/invoke.h:60 #15 __invoke > () at /usr/include/c++/10/bits/invoke.h:95 #16 operator() () at /usr/include/c++/10/mutex:717 #17 operator() () at /usr/include/c++/10/mutex:722 #18 _FUN () at /usr/include/c++/10/mutex:722 #19 0x00fffffff31e6f8a in __pthread_once_slow (once_control=, init_routine=) at pthread_once.c:116 #20 0x00fffffff6c2f062 in __gthread_once () at /usr/include/c++/10/riscv64-alt-linux/bits/gthr-default.h:700 #21 call_once > () at /usr/include/c++/10/mutex:729 #22 WebCore::initializeCommonAtomStrings () at /usr/src/debug/webkitgtk-2.38.2/Source/WebCore/platform/CommonAtomStrings.cpp:44 #23 0x00fffffff5741e76 in WebKit::InitializeWebKit2 () at /usr/src/debug/webkitgtk-2.38.2/Source/WebKit/Shared/WebKit2Initialize.cpp:48 #24 0x00fffffff583a5ee in operator() () at /usr/src/debug/webkitgtk-2.38.2/Source/WebKit/UIProcess/API/glib/WebKitInitialize.cpp:103 #25 __invoke_impl > () at /usr/include/c++/10/bits/invoke.h:60 #26 __invoke > () at /usr/include/c++/10/bits/invoke.h:95 #27 operator() () at /usr/include/c++/10/mutex:717 #28 operator() () at /usr/include/c++/10/mutex:722 #29 _FUN () at /usr/include/c++/10/mutex:722 #30 0x00fffffff31e6f8a in __pthread_once_slow (once_control=, init_routine=) at pthread_once.c:116 #31 0x00fffffff583a922 in __gthread_once () at /usr/include/c++/10/riscv64-alt-linux/bits/gthr-default.h:700 #32 call_once > () at /usr/include/c++/10/mutex:729 #33 WebKit::webkitInitialize () at /usr/src/debug/webkitgtk-2.38.2/Source/WebKit/UIProcess/API/glib/WebKitInitialize.cpp:102 #34 0x00fffffff584486e in webkit_settings_class_init () at /usr/src/debug/webkitgtk-2.38.2/Source/WebKit/UIProcess/API/glib/WebKitSettings.cpp:614 #35 webkit_settings_class_intern_init () at /usr/src/debug/webkitgtk-2.38.2/Source/WebKit/UIProcess/API/glib/WebKitSettings.cpp:107 #36 0x00fffffff7d45834 in type_class_init_Wm (pclass=0xaaaaaaaaaee2e0, node=0xaaaaaaaab65630) at ../gobject/gtype.c:2299 #37 g_type_class_ref (type=type@entry=48038396026050096) at ../gobject/gtype.c:3014 #38 0x00fffffff7d32e70 in g_object_new_with_properties (object_type=, n_properties=, names=, values=) at ../gobject/gobject.c:2370 #39 0x00fffffff7d33694 in g_object_new (object_type=, first_property_name=) at ../gobject/gobject.c:2037 #40 0x00fffffff5845ef6 in webkit_settings_new () at /usr/src/debug/webkitgtk-2.38.2/Source/WebKit/UIProcess/API/glib/WebKitSettings.cpp:1611 #41 0x00aaaaaaaaab90c4 in main () at /usr/src/debug/webkitgtk-2.38.2/Tools/MiniBrowser/gtk/main.c:815 (gdb) info registers ra 0xfffffff435c1fc 0xfffffff435c1fc sp 0xffffffffffebd0 0xffffffffffebd0 gp 0xaaaaaaaaac7e30 0xaaaaaaaaac7e30 tp 0xffffffef4c5800 0xffffffef4c5800 t0 0xfffffff7d614f0 72057593900963056 t1 0xfffffff4363fd6 72057593840156630 t2 0xfffffff44e5570 72057593841735024 fp 0xffffffee8f7022 0xffffffee8f7022 s1 0xffffffffffebf8 72057594037922808 a0 0xffffee8f6020 281474684117024 a1 0xfffffff74bdcd0 72057593891904720 a2 0xa 10 a3 0x1 1 a4 0xff 255 a5 0xff 255 a6 0x20 32 a7 0x20 32 s2 0x3 3 s3 0xfffffff74bdcd0 72057593891904720 s4 0x0 0 s5 0x1 1 s6 0xffffffffffec80 72057594037922944 s7 0xfffffff7ffdcf0 72057593903701232 s8 0xa 10 s9 0x0 0 s10 0xffffffee8f7010 72057593745338384 s11 0x7 7 t3 0xfffffff3410688 72057593824085640 t4 0xf63fd6 16138198 t5 0x85 133 t6 0x8708 34568 pc 0xfffffff4363fda 0xfffffff4363fda (gdb) disassemble Dump of assembler code for function _ZN3WTF5equalEPKNS_10StringImplEPKhj: 0x00fffffff4363fd6 <+0>: beqz a0,0xfffffff436402e <_ZN3WTF5equalEPKNS_10StringImplEPKhj+88> 0x00fffffff4363fd8 <+2>: beqz a1,0xfffffff436400e <_ZN3WTF5equalEPKNS_10StringImplEPKhj+56> => 0x00fffffff4363fda <+4>: lw a3,4(a0) 0x00fffffff4363fdc <+6>: mv a4,a0 0x00fffffff4363fde <+8>: li a0,0 0x00fffffff4363fe0 <+10>: beq a3,a2,0xfffffff4363fe6 <_ZN3WTF5equalEPKNS_10StringImplEPKhj+16> 0x00fffffff4363fe4 <+14>: ret 0x00fffffff4363fe6 <+16>: lw a2,16(a4) 0x00fffffff4363fe8 <+18>: ld a0,8(a4) 0x00fffffff4363fea <+20>: andi a4,a2,4 0x00fffffff4363fee <+24>: bnez a4,0xfffffff4364012 <_ZN3WTF5equalEPKNS_10StringImplEPKhj+60> 0x00fffffff4363ff0 <+26>: beqz a3,0xfffffff4364034 <_ZN3WTF5equalEPKNS_10StringImplEPKhj+94> 0x00fffffff4363ff2 <+28>: slli a3,a3,0x20 0x00fffffff4363ff4 <+30>: srli a3,a3,0x1f 0x00fffffff4363ff6 <+32>: add a3,a3,a0 0x00fffffff4363ff8 <+34>: j 0xfffffff4363ffe <_ZN3WTF5equalEPKNS_10StringImplEPKhj+40> 0x00fffffff4363ffa <+36>: beq a3,a0,0xfffffff4364034 <_ZN3WTF5equalEPKNS_10StringImplEPKhj+94> 0x00fffffff4363ffe <+40>: lbu a4,0(a1) 0x00fffffff4364002 <+44>: lhu a5,0(a0) 0x00fffffff4364006 <+48>: addi a1,a1,1 0x00fffffff4364008 <+50>: addi a0,a0,2 0x00fffffff436400a <+52>: beq a4,a5,0xfffffff4363ffa <_ZN3WTF5equalEPKNS_10StringImplEPKhj+36> 0x00fffffff436400e <+56>: li a0,0 0x00fffffff4364010 <+58>: ret 0x00fffffff4364012 <+60>: slli a2,a3,0x20 0x00fffffff4364016 <+64>: addi sp,sp,-16 0x00fffffff4364018 <+66>: srli a2,a2,0x20 0x00fffffff436401a <+68>: sd ra,8(sp) 0x00fffffff436401c <+70>: auipc ra,0xff1df 0x00fffffff4364020 <+74>: jalr -652(ra) # 0xfffffff3542d90 0x00fffffff4364024 <+78>: ld ra,8(sp) 0x00fffffff4364026 <+80>: seqz a0,a0 0x00fffffff436402a <+84>: addi sp,sp,16 0x00fffffff436402c <+86>: ret 0x00fffffff436402e <+88>: seqz a0,a1 0x00fffffff4364032 <+92>: ret 0x00fffffff4364034 <+94>: li a0,1 0x00fffffff4364036 <+96>: ret End of assembler dump. То же самое через c++filt: (gdb) disassemble Dump of assembler code for function WTF::equal(WTF::StringImpl const*, unsigned char const*, unsigned int): 0x00fffffff4363fd6 <+0>: beqz a0,0xfffffff436402e 0x00fffffff4363fd8 <+2>: beqz a1,0xfffffff436400e => 0x00fffffff4363fda <+4>: lw a3,4(a0) 0x00fffffff4363fdc <+6>: mv a4,a0 0x00fffffff4363fde <+8>: li a0,0 0x00fffffff4363fe0 <+10>: beq a3,a2,0xfffffff4363fe6 0x00fffffff4363fe4 <+14>: ret 0x00fffffff4363fe6 <+16>: lw a2,16(a4) 0x00fffffff4363fe8 <+18>: ld a0,8(a4) 0x00fffffff4363fea <+20>: andi a4,a2,4 0x00fffffff4363fee <+24>: bnez a4,0xfffffff4364012 0x00fffffff4363ff0 <+26>: beqz a3,0xfffffff4364034 0x00fffffff4363ff2 <+28>: slli a3,a3,0x20 0x00fffffff4363ff4 <+30>: srli a3,a3,0x1f 0x00fffffff4363ff6 <+32>: add a3,a3,a0 0x00fffffff4363ff8 <+34>: j 0xfffffff4363ffe 0x00fffffff4363ffa <+36>: beq a3,a0,0xfffffff4364034 0x00fffffff4363ffe <+40>: lbu a4,0(a1) 0x00fffffff4364002 <+44>: lhu a5,0(a0) 0x00fffffff4364006 <+48>: addi a1,a1,1 0x00fffffff4364008 <+50>: addi a0,a0,2 0x00fffffff436400a <+52>: beq a4,a5,0xfffffff4363ffa 0x00fffffff436400e <+56>: li a0,0 0x00fffffff4364010 <+58>: ret 0x00fffffff4364012 <+60>: slli a2,a3,0x20 0x00fffffff4364016 <+64>: addi sp,sp,-16 0x00fffffff4364018 <+66>: srli a2,a2,0x20 0x00fffffff436401a <+68>: sd ra,8(sp) 0x00fffffff436401c <+70>: auipc ra,0xff1df 0x00fffffff4364020 <+74>: jalr -652(ra) # 0xfffffff3542d90 0x00fffffff4364024 <+78>: ld ra,8(sp) 0x00fffffff4364026 <+80>: seqz a0,a0 0x00fffffff436402a <+84>: addi sp,sp,16 0x00fffffff436402c <+86>: ret 0x00fffffff436402e <+88>: seqz a0,a1 0x00fffffff4364032 <+92>: ret 0x00fffffff4364034 <+94>: li a0,1 0x00fffffff4364036 <+96>: ret End of assembler dump.