mirror of
https://github.com/compiler-explorer/compiler-explorer.git
synced 2025-12-27 09:23:52 -05:00
Some compilers emit symbol names with multiple dots, e. g. Clang for static data (like string literals) or GCC for function clones (e. g. due to interprocedural constant propagation). Test cases: https://godbolt.org/z/dGbGncnh8, https://godbolt.org/z/dhrGGqrjo
233 lines
4.4 KiB
JSON
Generated
233 lines
4.4 KiB
JSON
Generated
{
|
|
"asm": [
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": "some_namespace::function():",
|
|
},
|
|
{
|
|
"labels": [
|
|
{
|
|
"name": ".Lfunc_begin0",
|
|
"range": {
|
|
"endCol": 30,
|
|
"startCol": 17,
|
|
},
|
|
},
|
|
],
|
|
"source": null,
|
|
"text": " .quad .Lfunc_begin0",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " .quad .TOC.@tocbase",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " .quad 0",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": ".Lfunc_begin0:",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " blr",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": "",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": "main:",
|
|
},
|
|
{
|
|
"labels": [
|
|
{
|
|
"name": ".Lfunc_begin1",
|
|
"range": {
|
|
"endCol": 30,
|
|
"startCol": 17,
|
|
},
|
|
},
|
|
],
|
|
"source": null,
|
|
"text": " .quad .Lfunc_begin1",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " .quad .TOC.@tocbase",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " .quad 0",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": ".Lfunc_begin1:",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " mflr 0",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " std 31, -8(1)",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " stdu 1, -144(1)",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " std 0, 160(1)",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " mr 31, 1",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " stw 3, 132(31)",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " std 4, 120(31)",
|
|
},
|
|
{
|
|
"labels": [
|
|
{
|
|
"name": ".L.str@toc@ha",
|
|
"range": {
|
|
"endCol": 34,
|
|
"startCol": 21,
|
|
},
|
|
"target": ".L.str",
|
|
},
|
|
],
|
|
"source": null,
|
|
"text": " addis 3, 2, .L.str@toc@ha",
|
|
},
|
|
{
|
|
"labels": [
|
|
{
|
|
"name": ".L.str@toc@l",
|
|
"range": {
|
|
"endCol": 32,
|
|
"startCol": 20,
|
|
},
|
|
"target": ".L.str",
|
|
},
|
|
],
|
|
"source": null,
|
|
"text": " addi 3, 3, .L.str@toc@l",
|
|
},
|
|
{
|
|
"labels": [
|
|
{
|
|
"name": "some_namespace::function()@toc@ha",
|
|
"range": {
|
|
"endCol": 54,
|
|
"startCol": 21,
|
|
},
|
|
"target": "some_namespace::function()",
|
|
},
|
|
],
|
|
"source": null,
|
|
"text": " addis 4, 2, some_namespace::function()@toc@ha",
|
|
},
|
|
{
|
|
"labels": [
|
|
{
|
|
"name": "some_namespace::function()@toc@l",
|
|
"range": {
|
|
"endCol": 52,
|
|
"startCol": 20,
|
|
},
|
|
"target": "some_namespace::function()",
|
|
},
|
|
],
|
|
"source": null,
|
|
"text": " addi 4, 4, some_namespace::function()@toc@l",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " bl std::printf(char const*, ...)",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " nop",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " li 3, 0",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " addi 1, 1, 144",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " ld 0, 16(1)",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " ld 31, -8(1)",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " mtlr 0",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " blr",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": "",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": ".L.str:",
|
|
},
|
|
{
|
|
"labels": [],
|
|
"source": null,
|
|
"text": " .asciz "%zu\n"",
|
|
},
|
|
],
|
|
"labelDefinitions": {
|
|
".L.str": 33,
|
|
".Lfunc_begin0": 5,
|
|
".Lfunc_begin1": 12,
|
|
"main": 8,
|
|
"some_namespace::function()": 1,
|
|
},
|
|
} |