|  | { | 
|  | "asm": [ | 
|  | { | 
|  | "source": null, | 
|  | "text": "; Listing generated by Microsoft (R) Optimizing Compiler Version 19.14.26433.0 " | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "include listing.inc" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "INCLUDELIB LIBCMT" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "INCLUDELIB OLDNAMES" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "PUBLIC  main" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "PUBLIC  ??A?$array@H$0L@@std@@QEBAAEBH_K@Z      ; std::array<int,11>::operator[]" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "EXTRN   __GSHandlerCheck:PROC" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "EXTRN   __security_check_cookie:PROC" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "EXTRN   __security_cookie:QWORD" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "pdata   SEGMENT" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "$pdata$main DD  imagerel $LN3" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "        DD      imagerel $LN3+142" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "        DD      imagerel $unwind$main" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "pdata   ENDS" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "xdata   SEGMENT" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "$unwind$main DD 011319H" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "        DD      0c204H" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "        DD      imagerel __GSHandlerCheck" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "        DD      050H" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "xdata   ENDS" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "; Function compile flags: /Odtp" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "_TEXT   SEGMENT" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "a$ = 32" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "__$ArrayPad$ = 80" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "main    PROC" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "; File c:\\source\\compiler-explorer\\test\\cases\\vc-main-opt-out-example.cpp" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "; Line 10" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "$LN3:" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 10 | 
|  | }, | 
|  | "text": "        sub     rsp, 104                      ; 00000068H" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 10 | 
|  | }, | 
|  | "text": "        mov     rax, QWORD PTR __security_cookie" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 10 | 
|  | }, | 
|  | "text": "        xor     rax, rsp" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 10 | 
|  | }, | 
|  | "text": "        mov     QWORD PTR __$ArrayPad$[rsp], rax" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "; Line 11" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 11 | 
|  | }, | 
|  | "text": "        mov     DWORD PTR a$[rsp], 1" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 11 | 
|  | }, | 
|  | "text": "        mov     DWORD PTR a$[rsp+4], 3" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 11 | 
|  | }, | 
|  | "text": "        mov     DWORD PTR a$[rsp+8], 4" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 11 | 
|  | }, | 
|  | "text": "        mov     DWORD PTR a$[rsp+12], 2" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 11 | 
|  | }, | 
|  | "text": "        mov     DWORD PTR a$[rsp+16], 3" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 11 | 
|  | }, | 
|  | "text": "        mov     DWORD PTR a$[rsp+20], 5" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 11 | 
|  | }, | 
|  | "text": "        mov     DWORD PTR a$[rsp+24], 6" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 11 | 
|  | }, | 
|  | "text": "        mov     DWORD PTR a$[rsp+28], 4" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 11 | 
|  | }, | 
|  | "text": "        mov     DWORD PTR a$[rsp+32], 8" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 11 | 
|  | }, | 
|  | "text": "        mov     DWORD PTR a$[rsp+36], 9" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 11 | 
|  | }, | 
|  | "text": "        mov     DWORD PTR a$[rsp+40], 2" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "; Line 13" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 13 | 
|  | }, | 
|  | "text": "        mov     edx, 2" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 13 | 
|  | }, | 
|  | "text": "        lea     rcx, QWORD PTR a$[rsp]" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 13 | 
|  | }, | 
|  | "text": "        call    ??A?$array@H$0L@@std@@QEBAAEBH_K@Z      ; std::array<int,11>::operator[]" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 13 | 
|  | }, | 
|  | "text": "        mov     eax, DWORD PTR [rax]" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "; Line 14" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 14 | 
|  | }, | 
|  | "text": "        mov     rcx, QWORD PTR __$ArrayPad$[rsp]" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 14 | 
|  | }, | 
|  | "text": "        xor     rcx, rsp" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 14 | 
|  | }, | 
|  | "text": "        call    __security_check_cookie" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 14 | 
|  | }, | 
|  | "text": "        add     rsp, 104                      ; 00000068H" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": null, | 
|  | "line": 14 | 
|  | }, | 
|  | "text": "        ret     0" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "main    ENDP" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "_TEXT   ENDS" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "; Function compile flags: /Odtp" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": ";       COMDAT ??A?$array@H$0L@@std@@QEBAAEBH_K@Z" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "_TEXT   SEGMENT" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "this$ = 8" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "_Pos$ = 16" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "??A?$array@H$0L@@std@@QEBAAEBH_K@Z PROC       ; std::array<int,11>::operator[], COMDAT" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "; File std\\array" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "; Line 187" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": "std\\array", | 
|  | "line": 187 | 
|  | }, | 
|  | "text": "        mov     QWORD PTR [rsp+16], rdx" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": "std\\array", | 
|  | "line": 187 | 
|  | }, | 
|  | "text": "        mov     QWORD PTR [rsp+8], rcx" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "; Line 197" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": "std\\array", | 
|  | "line": 197 | 
|  | }, | 
|  | "text": "        mov     rax, QWORD PTR this$[rsp]" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": "std\\array", | 
|  | "line": 197 | 
|  | }, | 
|  | "text": "        mov     rcx, QWORD PTR _Pos$[rsp]" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": "std\\array", | 
|  | "line": 197 | 
|  | }, | 
|  | "text": "        lea     rax, QWORD PTR [rax+rcx*4]" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "; Line 198" | 
|  | }, | 
|  | { | 
|  | "source": { | 
|  | "file": "std\\array", | 
|  | "line": 198 | 
|  | }, | 
|  | "text": "        ret     0" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "??A?$array@H$0L@@std@@QEBAAEBH_K@Z ENDP       ; std::array<int,11>::operator[]" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "_TEXT   ENDS" | 
|  | }, | 
|  | { | 
|  | "source": null, | 
|  | "text": "END" | 
|  | } | 
|  | ] | 
|  | } |