{
  "asm": [
    {
      "labels": [],
      "source": null,
      "text": "_ZN1C8SetValueEN4absl8optionalINS0_11string_viewEEE: # @_ZN1C8SetValueEN4absl8optionalINS0_11string_viewEEE"
    },
    {
      "labels": [],
      "source": {
        "file": "example.cpp",
        "line": 50,
        "mainsource": true
      },
      "text": "        push    rbx"
    },
    {
      "labels": [],
      "source": {
        "file": "example.cpp",
        "line": 50,
        "mainsource": true
      },
      "text": "        mov     rbx, rdi"
    },
    {
      "labels": [],
      "source": {
        "column": 68,
        "file": "/opt/compiler-explorer/libs/abseil/absl/types/optional.h",
        "line": 447,
        "mainsource": false
      },
      "text": "        cmp     byte ptr [rsp + 16], 0"
    },
    {
      "labels": [],
      "source": {
        "file": "example.cpp",
        "line": 0,
        "mainsource": true
      },
      "text": "        mov     al, byte ptr [rdi]"
    },
    {
      "labels": [
        {
          "name": ".LBB0_4",
          "range": {
            "endCol": 24,
            "startCol": 17
          }
        }
      ],
      "source": {
        "column": 7,
        "file": "example.cpp",
        "line": 54,
        "mainsource": true
      },
      "text": "        je      .LBB0_4"
    },
    {
      "labels": [],
      "source": {
        "column": 7,
        "file": "example.cpp",
        "line": 0,
        "mainsource": true
      },
      "text": "        lea     rcx, [rsp + 16]"
    },
    {
      "labels": [],
      "source": {
        "column": 7,
        "file": "example.cpp",
        "line": 0,
        "mainsource": true
      },
      "text": "        lea     rdi, [rbx + 8]"
    },
    {
      "labels": [],
      "source": {
        "column": 7,
        "file": "example.cpp",
        "line": 0,
        "mainsource": true
      },
      "text": "        mov     rsi, qword ptr [rcx + 8]"
    },
    {
      "labels": [],
      "source": {
        "column": 7,
        "file": "example.cpp",
        "line": 0,
        "mainsource": true
      },
      "text": "        mov     rdx, qword ptr [rcx + 16]"
    },
    {
      "labels": [],
      "source": {
        "column": 7,
        "file": "example.cpp",
        "line": 0,
        "mainsource": true
      },
      "text": "        test    al, al"
    },
    {
      "labels": [
        {
          "name": ".LBB0_3",
          "range": {
            "endCol": 24,
            "startCol": 17
          }
        }
      ],
      "source": {
        "column": 9,
        "file": "example.cpp",
        "line": 55,
        "mainsource": true
      },
      "text": "        je      .LBB0_3"
    },
    {
      "labels": [],
      "source": {
        "column": 15,
        "file": "example.cpp",
        "line": 56,
        "mainsource": true
      },
      "text": "        call    _ZN6string6assignEPKcm"
    },
    {
      "labels": [],
      "source": {
        "column": 1,
        "file": "example.cpp",
        "line": 64,
        "mainsource": true
      },
      "text": "        pop     rbx"
    },
    {
      "labels": [],
      "source": {
        "column": 1,
        "file": "example.cpp",
        "line": 64,
        "mainsource": true
      },
      "text": "        ret"
    },
    {
      "labels": [],
      "source": null,
      "text": ".LBB0_4:"
    },
    {
      "labels": [],
      "source": {
        "file": "example.cpp",
        "line": 0,
        "mainsource": true
      },
      "text": "        test    al, al"
    },
    {
      "labels": [
        {
          "name": ".LBB0_6",
          "range": {
            "endCol": 24,
            "startCol": 17
          }
        }
      ],
      "source": {
        "column": 9,
        "file": "/opt/compiler-explorer/libs/abseil/absl/types/internal/optional.h",
        "line": 92,
        "mainsource": false
      },
      "text": "        je      .LBB0_6"
    },
    {
      "labels": [],
      "source": {
        "column": 7,
        "file": "/opt/compiler-explorer/libs/abseil/absl/types/internal/optional.h",
        "line": 93,
        "mainsource": false
      },
      "text": "        lea     rdi, [rbx + 8]"
    },
    {
      "labels": [],
      "source": {
        "column": 14,
        "file": "/opt/compiler-explorer/libs/abseil/absl/types/internal/optional.h",
        "line": 93,
        "mainsource": false
      },
      "text": "        call    _ZN6stringD1Ev"
    },
    {
      "labels": [],
      "source": {
        "column": 16,
        "file": "/opt/compiler-explorer/libs/abseil/absl/types/internal/optional.h",
        "line": 94,
        "mainsource": false
      },
      "text": "        mov     byte ptr [rbx], 0"
    },
    {
      "labels": [],
      "source": null,
      "text": ".LBB0_6:"
    },
    {
      "labels": [],
      "source": {
        "column": 1,
        "file": "example.cpp",
        "line": 64,
        "mainsource": true
      },
      "text": "        pop     rbx"
    },
    {
      "labels": [],
      "source": {
        "column": 1,
        "file": "example.cpp",
        "line": 64,
        "mainsource": true
      },
      "text": "        ret"
    },
    {
      "labels": [],
      "source": null,
      "text": ".LBB0_3:"
    },
    {
      "labels": [],
      "source": {
        "column": 47,
        "file": "/opt/compiler-explorer/libs/abseil/absl/types/internal/optional.h",
        "line": 152,
        "mainsource": false
      },
      "text": "        call    _ZN6stringC1EN4absl11string_viewE"
    },
    {
      "labels": [],
      "source": {
        "column": 20,
        "file": "/opt/compiler-explorer/libs/abseil/absl/types/internal/optional.h",
        "line": 153,
        "mainsource": false
      },
      "text": "        mov     byte ptr [rbx], 1"
    },
    {
      "labels": [],
      "source": {
        "column": 1,
        "file": "example.cpp",
        "line": 64,
        "mainsource": true
      },
      "text": "        pop     rbx"
    },
    {
      "labels": [],
      "source": {
        "column": 1,
        "file": "example.cpp",
        "line": 64,
        "mainsource": true
      },
      "text": "        ret"
    },
    {
      "labels": [],
      "source": null,
      "text": ""
    }
  ],
  "labelDefinitions": {
    ".LBB0_3": 25,
    ".LBB0_4": 16,
    ".LBB0_6": 22,
    "_ZN1C8SetValueEN4absl8optionalINS0_11string_viewEEE": 1
  }
}
