Old: Test::g(float, float) [/home/flo/Tmp/elf_diff/testing/src/old/test.cpp:38]
New: Test1::f(int, int) [/home/flo/Tmp/elf_diff/testing/src/new/test.cpp:37]
Old | New | ||||
---|---|---|---|---|---|
f | 1 | endbr64 | f | 1 | endbr64 |
2 | push %rbp | 2 | push %rbp | ||
3 | mov %rsp,%rbp | 3 | mov %rsp,%rbp | ||
n | 4 | mov %rdi,-0x8(%rbp) | n | 4 | mov %edi,-0x4(%rbp) |
5 | movss %xmm0,-0xc(%rbp) | 5 | mov %esi,-0x8(%rbp) | ||
6 | movss %xmm1,-0x10(%rbp) | ||||
7 | mov $0x1,%eax | 6 | mov $0x2a,%eax | ||
8 | pop %rbp | 7 | pop %rbp | ||
9 | ret | 8 | ret | ||
t | t | 9 | nop | ||
10 | 10 |
similar_symbols ├── display_info [Information that configures how things are displayed] │ ├── anchor_id = '4' <str> [Unique string identifier token that can be used to generate a HTML anchor for cross references] │ ├── display_symbol_details = 'True' <bool> [True if symbol details are supposed to be displayed] │ └── symbol_class = 'similar' <str> [The class of symbol old/new/appeared/disappeared/persisting/similar] ├── id = '7' <int> [The id of the symbol pair] ├── new │ └── signature_tagged = 'Test...HIGHLIGHT_START...1...HIGHLIGHT_END...::...HIGHLIGHT_START...f...HIGHLIGHT_END...(...HIGHLIGHT_START...in...HIGHLIGHT_END...t, ...HIGHLIGHT_START...in...HIGHLIGHT_END...t)' <str> [A tagged version of the symbol signature. Taggs '...HIGHLIGHT_START...' and '...HIGHLIGHT_END...' must be replaced accordingly, e.g. for highlighting.] ├── old │ └── signature_tagged = 'Test::...HIGHLIGHT_START...g...HIGHLIGHT_END...(...HIGHLIGHT_START...floa...HIGHLIGHT_END...t, ...HIGHLIGHT_START...floa...HIGHLIGHT_END...t)' <str> [A tagged version of the symbol signature. Taggs '...HIGHLIGHT_START...' and '...HIGHLIGHT_END...' must be replaced accordingly, e.g. for highlighting.] ├── related_symbols [A relation between two symbols] │ ├── new_symbol │ │ ├── id = '10' <int> [Unique symbol identifier] │ │ ├── instructions = 'endbr64 push %rbp mov %rsp,%rbp mov %edi,-0x4(%rbp) mov %esi,-0x8(%rbp) mov $0x2a,%eax pop %rbp ret nop ' <str> [Code instructions (assembly with possibly high level language code intermixed)] │ │ ├── is_demangled = 'True' <bool> [True if the symbol name is demangled] │ │ ├── is_stored_in_program_memory = 'True' <bool> [True if the symbol is stored in program memory] │ │ ├── name = 'Test1::f(int, int)' <str> [The symbol name (demangled if supported)] │ │ ├── name_mangled = '_ZN5Test11fEii' <str> [The mangled symbol name] │ │ ├── size = '21' <int> [Number of bytes occupied by the symbol] │ │ ├── source │ │ │ ├── file_id = '10' <int> [The id of the source file] │ │ │ └── line = '37' <int> [The line number in the source file where the symbol is defined] │ │ └── type = 'T' <str> [Type character matching the characters used by the nm binutils tool] │ ├── old_symbol │ │ ├── id = '4' <int> [Unique symbol identifier] │ │ ├── instructions = 'endbr64 push %rbp mov %rsp,%rbp mov %rdi,-0x8(%rbp) movss %xmm0,-0xc(%rbp) movss %xmm1,-0x10(%rbp) mov $0x1,%eax pop %rbp ret ' <str> [Code instructions (assembly with possibly high level language code intermixed)] │ │ ├── is_demangled = 'True' <bool> [True if the symbol name is demangled] │ │ ├── is_stored_in_program_memory = 'True' <bool> [True if the symbol is stored in program memory] │ │ ├── name = 'Test::g(float, float)' <str> [The symbol name (demangled if supported)] │ │ ├── name_mangled = '_ZN4Test1gEff' <str> [The mangled symbol name] │ │ ├── size = '29' <int> [Number of bytes occupied by the symbol] │ │ ├── source │ │ │ ├── file_id = '5' <int> [The id of the source file] │ │ │ └── line = '38' <int> [The line number in the source file where the symbol is defined] │ │ └── type = 'T' <str> [Type character matching the characters used by the nm binutils tool] │ └── size_delta = '-8' <int> [Difference in bytes between the resource occupation of the two symbols] └── similarities [Symbol similarity ratios] ├── instruction = '81.36882129277566' <float> [The percentage of symbol instruction similarity] └── signature = '66.66666666666666' <float> [The percentage of symbol signature similarity]