blob: e396633e5701a9baa6801a2da4088252130f621d [file] [log] [blame] [raw]
{
"asm": [
{
"labels": [],
"source": null,
"text": " .file \"example.cpp\""
},
{
"labels": [],
"source": null,
"text": ".text"
},
{
"labels": [],
"source": null,
"text": ".Ltext0:"
},
{
"labels": [],
"source": null,
"text": " .balign 2"
},
{
"labels": [],
"source": null,
"text": " .global foo()"
},
{
"labels": [],
"source": null,
"text": " .type foo(), @function"
},
{
"labels": [],
"source": null,
"text": "foo():"
},
{
"labels": [],
"source": null,
"text": ".LFB0:"
},
{
"labels": [],
"source": null,
"text": " .file 1 \"/tmp/compiler-explorer-compiler118016-63-en7728.30nfm/example.cpp\""
},
{
"labels": [],
"source": null,
"text": " .loc 1 1 0"
},
{
"labels": [],
"source": null,
"text": "; start of function"
},
{
"labels": [],
"source": null,
"text": "; framesize_regs: 2"
},
{
"labels": [],
"source": null,
"text": "; framesize_locals: 0"
},
{
"labels": [],
"source": null,
"text": "; framesize_outgoing: 0"
},
{
"labels": [],
"source": null,
"text": "; framesize: 2"
},
{
"labels": [],
"source": null,
"text": "; elim ap -> fp 4"
},
{
"labels": [],
"source": null,
"text": "; elim fp -> sp 0"
},
{
"labels": [],
"source": null,
"text": "; saved regs: R4"
},
{
"labels": [],
"source": null,
"text": " ; start of prologue"
},
{
"labels": [],
"source": {
"file": null,
"line": 1
},
"text": " PUSHM.W #1, R4"
},
{
"labels": [],
"source": null,
"text": ".LCFI0:"
},
{
"labels": [],
"source": {
"file": null,
"line": 1
},
"text": " MOV.W R1, R4"
},
{
"labels": [],
"source": null,
"text": ".LCFI1:"
},
{
"labels": [],
"source": null,
"text": " ; end of prologue"
},
{
"labels": [],
"source": null,
"text": " .loc 1 2 0"
},
{
"labels": [],
"source": {
"file": null,
"line": 2
},
"text": " MOV.B #3, R12"
},
{
"labels": [],
"source": null,
"text": " .loc 1 3 0"
},
{
"labels": [],
"source": null,
"text": " ; start of epilogue"
},
{
"labels": [],
"source": {
"file": null,
"line": 3
},
"text": " POPM.W #1, r4"
},
{
"labels": [],
"source": {
"file": null,
"line": 3
},
"text": " RET"
},
{
"labels": [],
"source": null,
"text": ".LFE0:"
},
{
"labels": [],
"source": null,
"text": " .size foo(), .-foo()"
},
{
"labels": [],
"source": null,
"text": " .section .debug_frame,\"\",@progbits"
},
{
"labels": [],
"source": null,
"text": ".Lframe0:"
},
{
"labels": [
{
"name": ".LECIE0",
"range": {
"endCol": 24,
"startCol": 17
}
},
{
"name": ".LSCIE0",
"range": {
"endCol": 32,
"startCol": 25
}
}
],
"source": null,
"text": " .4byte .LECIE0-.LSCIE0"
},
{
"labels": [],
"source": null,
"text": ".LSCIE0:"
},
{
"labels": [],
"source": null,
"text": " .4byte 0xffffffff"
},
{
"labels": [],
"source": null,
"text": " .byte 0x3"
},
{
"labels": [],
"source": null,
"text": " .string \"\""
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x1"
},
{
"labels": [],
"source": null,
"text": " .sleb128 -2"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0"
},
{
"labels": [],
"source": null,
"text": " .byte 0xc"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x1"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x2"
},
{
"labels": [],
"source": null,
"text": " .byte 0x80"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x1"
},
{
"labels": [],
"source": null,
"text": " .balign 4"
},
{
"labels": [],
"source": null,
"text": ".LECIE0:"
},
{
"labels": [],
"source": null,
"text": ".LSFDE0:"
},
{
"labels": [
{
"name": ".LEFDE0",
"range": {
"endCol": 24,
"startCol": 17
}
},
{
"name": ".LASFDE0",
"range": {
"endCol": 33,
"startCol": 25
}
}
],
"source": null,
"text": " .4byte .LEFDE0-.LASFDE0"
},
{
"labels": [],
"source": null,
"text": ".LASFDE0:"
},
{
"labels": [
{
"name": ".Lframe0",
"range": {
"endCol": 25,
"startCol": 17
}
}
],
"source": null,
"text": " .4byte .Lframe0"
},
{
"labels": [
{
"name": ".LFB0",
"range": {
"endCol": 22,
"startCol": 17
}
}
],
"source": null,
"text": " .4byte .LFB0"
},
{
"labels": [
{
"name": ".LFE0",
"range": {
"endCol": 22,
"startCol": 17
}
},
{
"name": ".LFB0",
"range": {
"endCol": 28,
"startCol": 23
}
}
],
"source": null,
"text": " .4byte .LFE0-.LFB0"
},
{
"labels": [],
"source": null,
"text": " .byte 0x4"
},
{
"labels": [
{
"name": ".LCFI0",
"range": {
"endCol": 23,
"startCol": 17
}
},
{
"name": ".LFB0",
"range": {
"endCol": 29,
"startCol": 24
}
}
],
"source": null,
"text": " .4byte .LCFI0-.LFB0"
},
{
"labels": [],
"source": null,
"text": " .byte 0xe"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x4"
},
{
"labels": [],
"source": null,
"text": " .byte 0x84"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x2"
},
{
"labels": [],
"source": null,
"text": " .byte 0x4"
},
{
"labels": [
{
"name": ".LCFI1",
"range": {
"endCol": 23,
"startCol": 17
}
},
{
"name": ".LCFI0",
"range": {
"endCol": 30,
"startCol": 24
}
}
],
"source": null,
"text": " .4byte .LCFI1-.LCFI0"
},
{
"labels": [],
"source": null,
"text": " .byte 0xd"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x4"
},
{
"labels": [],
"source": null,
"text": " .balign 4"
},
{
"labels": [],
"source": null,
"text": ".LEFDE0:"
},
{
"labels": [],
"source": null,
"text": ".text"
},
{
"labels": [],
"source": null,
"text": ".Letext0:"
},
{
"labels": [],
"source": null,
"text": " .section .debug_info,\"\",@progbits"
},
{
"labels": [],
"source": null,
"text": ".Ldebug_info0:"
},
{
"labels": [],
"source": null,
"text": " .4byte 0x3e"
},
{
"labels": [],
"source": null,
"text": " .2byte 0x4"
},
{
"labels": [
{
"name": ".Ldebug_abbrev0",
"range": {
"endCol": 32,
"startCol": 17
}
}
],
"source": null,
"text": " .4byte .Ldebug_abbrev0"
},
{
"labels": [],
"source": null,
"text": " .byte 0x4"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x1"
},
{
"labels": [
{
"name": ".LASF0",
"range": {
"endCol": 23,
"startCol": 17
}
}
],
"source": null,
"text": " .4byte .LASF0"
},
{
"labels": [],
"source": null,
"text": " .byte 0x4"
},
{
"labels": [
{
"name": ".LASF1",
"range": {
"endCol": 23,
"startCol": 17
}
}
],
"source": null,
"text": " .4byte .LASF1"
},
{
"labels": [
{
"name": ".Ltext0",
"range": {
"endCol": 24,
"startCol": 17
}
}
],
"source": null,
"text": " .4byte .Ltext0"
},
{
"labels": [
{
"name": ".Letext0",
"range": {
"endCol": 25,
"startCol": 17
}
},
{
"name": ".Ltext0",
"range": {
"endCol": 33,
"startCol": 26
}
}
],
"source": null,
"text": " .4byte .Letext0-.Ltext0"
},
{
"labels": [
{
"name": ".Ldebug_line0",
"range": {
"endCol": 30,
"startCol": 17
}
}
],
"source": null,
"text": " .4byte .Ldebug_line0"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x2"
},
{
"labels": [],
"source": null,
"text": " .string \"foo\""
},
{
"labels": [],
"source": null,
"text": " .byte 0x1"
},
{
"labels": [],
"source": null,
"text": " .byte 0x1"
},
{
"labels": [
{
"name": ".LASF2",
"range": {
"endCol": 23,
"startCol": 17
}
}
],
"source": null,
"text": " .4byte .LASF2"
},
{
"labels": [],
"source": null,
"text": " .4byte 0x3a"
},
{
"labels": [
{
"name": ".LFB0",
"range": {
"endCol": 22,
"startCol": 17
}
}
],
"source": null,
"text": " .4byte .LFB0"
},
{
"labels": [
{
"name": ".LFE0",
"range": {
"endCol": 22,
"startCol": 17
}
},
{
"name": ".LFB0",
"range": {
"endCol": 28,
"startCol": 23
}
}
],
"source": null,
"text": " .4byte .LFE0-.LFB0"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x1"
},
{
"labels": [],
"source": null,
"text": " .byte 0x9c"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x3"
},
{
"labels": [],
"source": null,
"text": " .byte 0x2"
},
{
"labels": [],
"source": null,
"text": " .byte 0x5"
},
{
"labels": [],
"source": null,
"text": " .string \"int\""
},
{
"labels": [],
"source": null,
"text": " .byte 0"
},
{
"labels": [],
"source": null,
"text": " .section .debug_abbrev,\"\",@progbits"
},
{
"labels": [],
"source": null,
"text": ".Ldebug_abbrev0:"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x1"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x11"
},
{
"labels": [],
"source": null,
"text": " .byte 0x1"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x25"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0xe"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x13"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0xb"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x3"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0xe"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x11"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x1"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x12"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x6"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x10"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x17"
},
{
"labels": [],
"source": null,
"text": " .byte 0"
},
{
"labels": [],
"source": null,
"text": " .byte 0"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x2"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x2e"
},
{
"labels": [],
"source": null,
"text": " .byte 0"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x3f"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x19"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x3"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x8"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x3a"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0xb"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x3b"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0xb"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x6e"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0xe"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x49"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x13"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x11"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x1"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x12"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x6"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x40"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x18"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x2117"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x19"
},
{
"labels": [],
"source": null,
"text": " .byte 0"
},
{
"labels": [],
"source": null,
"text": " .byte 0"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x3"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x24"
},
{
"labels": [],
"source": null,
"text": " .byte 0"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0xb"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0xb"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x3e"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0xb"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x3"
},
{
"labels": [],
"source": null,
"text": " .uleb128 0x8"
},
{
"labels": [],
"source": null,
"text": " .byte 0"
},
{
"labels": [],
"source": null,
"text": " .byte 0"
},
{
"labels": [],
"source": null,
"text": " .byte 0"
},
{
"labels": [],
"source": null,
"text": " .section .debug_aranges,\"\",@progbits"
},
{
"labels": [],
"source": null,
"text": " .4byte 0x1c"
},
{
"labels": [],
"source": null,
"text": " .2byte 0x2"
},
{
"labels": [
{
"name": ".Ldebug_info0",
"range": {
"endCol": 30,
"startCol": 17
}
}
],
"source": null,
"text": " .4byte .Ldebug_info0"
},
{
"labels": [],
"source": null,
"text": " .byte 0x4"
},
{
"labels": [],
"source": null,
"text": " .byte 0"
},
{
"labels": [],
"source": null,
"text": " .2byte 0"
},
{
"labels": [],
"source": null,
"text": " .2byte 0"
},
{
"labels": [
{
"name": ".Ltext0",
"range": {
"endCol": 24,
"startCol": 17
}
}
],
"source": null,
"text": " .4byte .Ltext0"
},
{
"labels": [
{
"name": ".Letext0",
"range": {
"endCol": 25,
"startCol": 17
}
},
{
"name": ".Ltext0",
"range": {
"endCol": 33,
"startCol": 26
}
}
],
"source": null,
"text": " .4byte .Letext0-.Ltext0"
},
{
"labels": [],
"source": null,
"text": " .4byte 0"
},
{
"labels": [],
"source": null,
"text": " .4byte 0"
},
{
"labels": [],
"source": null,
"text": " .section .debug_line,\"\",@progbits"
},
{
"labels": [],
"source": null,
"text": ".Ldebug_line0:"
},
{
"labels": [],
"source": null,
"text": " .section .debug_str,\"MS\",@progbits,1"
},
{
"labels": [],
"source": null,
"text": ".LASF2:"
},
{
"labels": [],
"source": null,
"text": " .string \"foo()\""
},
{
"labels": [],
"source": null,
"text": ".LASF0:"
},
{
"labels": [],
"source": null,
"text": " .string \"GNU C++14 6.2.1 20161212 -g -std=c++1z\""
},
{
"labels": [],
"source": null,
"text": ".LASF1:"
},
{
"labels": [],
"source": null,
"text": " .string \"/tmp/compiler-explorer-compiler118016-63-en7728.30nfm/example.cpp\""
},
{
"labels": [],
"source": null,
"text": " .ident \"GCC: (SOMNIUM Technologies Limited - msp430-gcc 6.2.1.16) 6.2.1 20161212\""
}
],
"labelDefinitions": {
".LASF0": 171,
".LASF1": 173,
".LASF2": 169,
".LASFDE0": 52,
".LCFI0": 21,
".LCFI1": 23,
".LECIE0": 49,
".LEFDE0": 67,
".LFB0": 8,
".LFE0": 31,
".LSCIE0": 36,
".Ldebug_abbrev0": 99,
".Ldebug_info0": 71,
".Ldebug_line0": 167,
".Letext0": 69,
".Lframe0": 34,
".Ltext0": 3
}
}