{
  "asm": [
    {
      "labels": [],
      "source": null,
      "text": "__SP_H__ = 0x3e"
    },
    {
      "labels": [],
      "source": null,
      "text": "__SP_L__ = 0x3d"
    },
    {
      "labels": [],
      "source": null,
      "text": "__tmp_reg__ = 0"
    },
    {
      "labels": [],
      "source": null,
      "text": "__zero_reg__ = 1"
    },
    {
      "labels": [],
      "source": null,
      "text": "foo():"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 2
      },
      "text": "        push r29"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 2
      },
      "text": "        push r28"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 2
      },
      "text": "        rcall ."
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 2
      },
      "text": "        rcall ."
    },
    {
      "labels": [
        {
          "name": "__SP_L__",
          "range": {
            "endCol": 24,
            "startCol": 16
          }
        }
      ],
      "source": {
        "file": null,
        "line": 2
      },
      "text": "        in r28,__SP_L__"
    },
    {
      "labels": [
        {
          "name": "__SP_H__",
          "range": {
            "endCol": 24,
            "startCol": 16
          }
        }
      ],
      "source": {
        "file": null,
        "line": 2
      },
      "text": "        in r29,__SP_H__"
    },
    {
      "labels": [],
      "source": null,
      "text": "/* prologue: function */"
    },
    {
      "labels": [],
      "source": null,
      "text": "/* frame size = 4 */"
    },
    {
      "labels": [],
      "source": null,
      "text": "/* stack size = 6 */"
    },
    {
      "labels": [
        {
          "name": "__zero_reg__",
          "range": {
            "endCol": 29,
            "startCol": 17
          }
        }
      ],
      "source": {
        "file": null,
        "line": 3
      },
      "text": "        std Y+2,__zero_reg__"
    },
    {
      "labels": [
        {
          "name": "__zero_reg__",
          "range": {
            "endCol": 29,
            "startCol": 17
          }
        }
      ],
      "source": {
        "file": null,
        "line": 3
      },
      "text": "        std Y+1,__zero_reg__"
    },
    {
      "labels": [
        {
          "name": "__zero_reg__",
          "range": {
            "endCol": 29,
            "startCol": 17
          }
        }
      ],
      "source": {
        "file": null,
        "line": 4
      },
      "text": "        std Y+4,__zero_reg__"
    },
    {
      "labels": [
        {
          "name": "__zero_reg__",
          "range": {
            "endCol": 29,
            "startCol": 17
          }
        }
      ],
      "source": {
        "file": null,
        "line": 4
      },
      "text": "        std Y+3,__zero_reg__"
    },
    {
      "labels": [
        {
          "name": ".L2",
          "range": {
            "endCol": 17,
            "startCol": 14
          }
        }
      ],
      "source": {
        "file": null,
        "line": 4
      },
      "text": "        rjmp .L2"
    },
    {
      "labels": [],
      "source": null,
      "text": ".L4:"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 5
      },
      "text": "        rcall bar()"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 5
      },
      "text": "        ldd r18,Y+1"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 5
      },
      "text": "        ldd r19,Y+2"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 5
      },
      "text": "        add r24,r18"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 5
      },
      "text": "        adc r25,r19"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 5
      },
      "text": "        std Y+2,r25"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 5
      },
      "text": "        std Y+1,r24"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 4
      },
      "text": "        ldd r24,Y+3"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 4
      },
      "text": "        ldd r25,Y+4"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 4
      },
      "text": "        adiw r24,1"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 4
      },
      "text": "        std Y+4,r25"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 4
      },
      "text": "        std Y+3,r24"
    },
    {
      "labels": [],
      "source": null,
      "text": ".L2:"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 4
      },
      "text": "        ldi r18,lo8(1)"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 4
      },
      "text": "        ldd r24,Y+3"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 4
      },
      "text": "        ldd r25,Y+4"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 4
      },
      "text": "        cpi r24,100"
    },
    {
      "labels": [
        {
          "name": "__zero_reg__",
          "range": {
            "endCol": 29,
            "startCol": 17
          }
        }
      ],
      "source": {
        "file": null,
        "line": 4
      },
      "text": "        cpc r25,__zero_reg__"
    },
    {
      "labels": [
        {
          "name": ".L3",
          "range": {
            "endCol": 17,
            "startCol": 14
          }
        }
      ],
      "source": {
        "file": null,
        "line": 4
      },
      "text": "        brlt .L3"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 4
      },
      "text": "        ldi r18,lo8(0)"
    },
    {
      "labels": [],
      "source": null,
      "text": ".L3:"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 4
      },
      "text": "        tst r18"
    },
    {
      "labels": [
        {
          "name": ".L4",
          "range": {
            "endCol": 17,
            "startCol": 14
          }
        }
      ],
      "source": {
        "file": null,
        "line": 4
      },
      "text": "        brne .L4"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 7
      },
      "text": "        ldd r24,Y+1"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 7
      },
      "text": "        ldd r25,Y+2"
    },
    {
      "labels": [],
      "source": null,
      "text": "/* epilogue start */"
    },
    {
      "labels": [
        {
          "name": "__tmp_reg__",
          "range": {
            "endCol": 24,
            "startCol": 13
          }
        }
      ],
      "source": {
        "file": null,
        "line": 8
      },
      "text": "        pop __tmp_reg__"
    },
    {
      "labels": [
        {
          "name": "__tmp_reg__",
          "range": {
            "endCol": 24,
            "startCol": 13
          }
        }
      ],
      "source": {
        "file": null,
        "line": 8
      },
      "text": "        pop __tmp_reg__"
    },
    {
      "labels": [
        {
          "name": "__tmp_reg__",
          "range": {
            "endCol": 24,
            "startCol": 13
          }
        }
      ],
      "source": {
        "file": null,
        "line": 8
      },
      "text": "        pop __tmp_reg__"
    },
    {
      "labels": [
        {
          "name": "__tmp_reg__",
          "range": {
            "endCol": 24,
            "startCol": 13
          }
        }
      ],
      "source": {
        "file": null,
        "line": 8
      },
      "text": "        pop __tmp_reg__"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 8
      },
      "text": "        pop r28"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 8
      },
      "text": "        pop r29"
    },
    {
      "labels": [],
      "source": {
        "file": null,
        "line": 8
      },
      "text": "        ret"
    }
  ],
  "labelDefinitions": {
    ".L2": 33,
    ".L3": 41,
    ".L4": 20,
    "__SP_H__": 1,
    "__SP_L__": 2,
    "__tmp_reg__": 3,
    "__zero_reg__": 4
  }
}
