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