blob: 58712bb55b569e8c00c4df6a3deb58d048bf3e82 [file] [log] [blame] [raw]
{
"asm": [
{
"labels": [],
"source": null,
"text": "_Z6myfuncv: # @_Z6myfuncv"
},
{
"labels": [],
"source": {
"file": null,
"line": 9
},
"text": " sub rsp, 88"
},
{
"labels": [],
"source": {
"column": 12,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/return_type.hpp",
"line": 18
},
"text": " mov byte ptr [rsp + 32], 0"
},
{
"labels": [],
"source": {
"column": 12,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/return_type.hpp",
"line": 18
},
"text": " mov qword ptr [rsp + 24], 0"
},
{
"labels": [],
"source": {
"column": 55,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 64
},
"text": " mov qword ptr [rsp + 40], offset .L.str"
},
{
"labels": [],
"source": {
"column": 55,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 64
},
"text": " mov rax, qword ptr [rsp + 24]"
},
{
"labels": [],
"source": {
"column": 55,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 64
},
"text": " mov qword ptr [rsp + 48], rax"
},
{
"labels": [],
"source": {
"column": 55,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 64
},
"text": " mov al, byte ptr [rsp + 32]"
},
{
"labels": [],
"source": {
"column": 55,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 64
},
"text": " mov byte ptr [rsp + 56], al"
},
{
"labels": [],
"source": {
"column": 55,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 64
},
"text": " mov eax, dword ptr [rsp + 33]"
},
{
"labels": [],
"source": {
"column": 55,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 64
},
"text": " mov dword ptr [rsp + 57], eax"
},
{
"labels": [],
"source": {
"column": 55,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 64
},
"text": " movzx eax, word ptr [rsp + 37]"
},
{
"labels": [],
"source": {
"column": 55,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 64
},
"text": " mov word ptr [rsp + 61], ax"
},
{
"labels": [],
"source": {
"column": 55,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 64
},
"text": " mov al, byte ptr [rsp + 39]"
},
{
"labels": [],
"source": {
"column": 55,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 64
},
"text": " mov byte ptr [rsp + 63], al"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 267
},
"text": " mov rax, qword ptr [rsp + 56]"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 267
},
"text": " mov qword ptr [rsp + 16], rax"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 267
},
"text": " movups xmm0, xmmword ptr [rsp + 40]"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 267
},
"text": " movups xmmword ptr [rsp], xmm0"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 267
},
"text": " lea rdi, [rsp + 64]"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 267
},
"text": " xor esi, esi"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 267
},
"text": " mov edx, offset .L.str"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 267
},
"text": " mov ecx, offset .L.str+1"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 267
},
"text": " mov r8d, offset .L.str+5"
},
{
"labels": [
{
"name": "_ZN4ctre18evaluate_recursiveINS_13regex_resultsIPKcJEEES3_S3_Lm0ELm0EJNS_3anyEEJNS_10assert_endENS_8end_markENS_6acceptEEEET_mT0_SA_T1_S9_N4ctll4listIJNS_6repeatIXT2_EXT3_EJDpT4_EEEDpT5_EEE",
"range": {
"endCol": 206,
"startCol": 17
}
}
],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 267
},
"text": " call _ZN4ctre18evaluate_recursiveINS_13regex_resultsIPKcJEEES3_S3_Lm0ELm0EJNS_3anyEEJNS_10assert_endENS_8end_markENS_6acceptEEEET_mT0_SA_T1_S9_N4ctll4listIJNS_6repeatIXT2_EXT3_EJDpT4_EEEDpT5_EEE"
},
{
"labels": [],
"source": {
"column": 1,
"file": null,
"line": 11
},
"text": " add rsp, 88"
},
{
"labels": [],
"source": {
"column": 1,
"file": null,
"line": 11
},
"text": " ret"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 298
},
"text": " mov rdi, rax"
},
{
"labels": [
{
"name": "__clang_call_terminate",
"range": {
"endCol": 39,
"startCol": 17
}
}
],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 298
},
"text": " call __clang_call_terminate"
},
{
"labels": [],
"source": null,
"text": "__clang_call_terminate: # @__clang_call_terminate"
},
{
"labels": [],
"source": null,
"text": " push rax"
},
{
"labels": [],
"source": null,
"text": " call __cxa_begin_catch"
},
{
"labels": [],
"source": null,
"text": " call _ZSt9terminatev"
},
{
"labels": [],
"source": null,
"text": "_ZN4ctre18evaluate_recursiveINS_13regex_resultsIPKcJEEES3_S3_Lm0ELm0EJNS_3anyEEJNS_10assert_endENS_8end_markENS_6acceptEEEET_mT0_SA_T1_S9_N4ctll4listIJNS_6repeatIXT2_EXT3_EJDpT4_EEEDpT5_EEE: # @_ZN4ctre18evaluate_recursiveINS_13regex_resultsIPKcJEEES3_S3_Lm0ELm0EJNS_3anyEEJNS_10assert_endENS_8end_markENS_6acceptEEEET_mT0_SA_T1_S9_N4ctll4listIJNS_6repeatIXT2_EXT3_EJDpT4_EEEDpT5_EEE"
},
{
"labels": [],
"source": {
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 235
},
"text": " push rbx"
},
{
"labels": [],
"source": {
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 235
},
"text": " sub rsp, 80"
},
{
"labels": [],
"source": {
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 235
},
"text": " mov rbx, rdi"
},
{
"labels": [],
"source": {
"column": 57,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 241
},
"text": " mov rdi, qword ptr [rsp + 96]"
},
{
"labels": [],
"source": {
"column": 55,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 64
},
"text": " movups xmm0, xmmword ptr [rsp + 104]"
},
{
"labels": [],
"source": {
"column": 55,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 64
},
"text": " movaps xmmword ptr [rsp + 64], xmm0"
},
{
"labels": [],
"source": {
"column": 10,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 65
},
"text": " cmp r8, rcx"
},
{
"labels": [
{
"name": ".LBB2_3",
"range": {
"endCol": 24,
"startCol": 17
}
}
],
"source": {
"column": 6,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 65
},
"text": " je .LBB2_3"
},
{
"labels": [],
"source": {
"column": 32,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 67
},
"text": " add rcx, 1"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 57
},
"text": " mov al, byte ptr [rsp + 79]"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 57
},
"text": " mov byte ptr [rsp + 38], al"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 57
},
"text": " movzx eax, word ptr [rsp + 77]"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 57
},
"text": " mov word ptr [rsp + 36], ax"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 57
},
"text": " mov eax, dword ptr [rsp + 73]"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 57
},
"text": " mov dword ptr [rsp + 32], eax"
},
{
"labels": [],
"source": {
"column": 46,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 246
},
"text": " add rsi, 1"
},
{
"labels": [],
"source": {
"column": 95,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 246
},
"text": " mov qword ptr [rsp + 40], rdi"
},
{
"labels": [],
"source": {
"column": 95,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 246
},
"text": " mov qword ptr [rsp + 48], rcx"
},
{
"labels": [],
"source": {
"column": 95,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 246
},
"text": " mov byte ptr [rsp + 56], 0"
},
{
"labels": [],
"source": {
"column": 95,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 246
},
"text": " mov eax, dword ptr [rsp + 32]"
},
{
"labels": [],
"source": {
"column": 95,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 246
},
"text": " mov dword ptr [rsp + 57], eax"
},
{
"labels": [],
"source": {
"column": 95,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 246
},
"text": " movzx eax, word ptr [rsp + 36]"
},
{
"labels": [],
"source": {
"column": 95,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 246
},
"text": " mov word ptr [rsp + 61], ax"
},
{
"labels": [],
"source": {
"column": 95,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 246
},
"text": " mov al, byte ptr [rsp + 38]"
},
{
"labels": [],
"source": {
"column": 95,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 246
},
"text": " mov byte ptr [rsp + 63], al"
},
{
"labels": [],
"source": {
"column": 26,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 246
},
"text": " mov rax, qword ptr [rsp + 56]"
},
{
"labels": [],
"source": {
"column": 26,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 246
},
"text": " mov qword ptr [rsp + 16], rax"
},
{
"labels": [],
"source": {
"column": 26,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 246
},
"text": " movups xmm0, xmmword ptr [rsp + 40]"
},
{
"labels": [],
"source": {
"column": 26,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 246
},
"text": " movups xmmword ptr [rsp], xmm0"
},
{
"labels": [],
"source": {
"column": 26,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 246
},
"text": " mov rdi, rbx"
},
{
"labels": [
{
"name": "_ZN4ctre18evaluate_recursiveINS_13regex_resultsIPKcJEEES3_S3_Lm0ELm0EJNS_3anyEEJNS_10assert_endENS_8end_markENS_6acceptEEEET_mT0_SA_T1_S9_N4ctll4listIJNS_6repeatIXT2_EXT3_EJDpT4_EEEDpT5_EEE",
"range": {
"endCol": 206,
"startCol": 17
}
}
],
"source": {
"column": 26,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 246
},
"text": " call _ZN4ctre18evaluate_recursiveINS_13regex_resultsIPKcJEEES3_S3_Lm0ELm0EJNS_3anyEEJNS_10assert_endENS_8end_markENS_6acceptEEEET_mT0_SA_T1_S9_N4ctll4listIJNS_6repeatIXT2_EXT3_EJDpT4_EEEDpT5_EEE"
},
{
"labels": [],
"source": {
"column": 11,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/return_type.hpp",
"line": 54
},
"text": " cmp byte ptr [rbx + 16], 0"
},
{
"labels": [
{
"name": ".LBB2_2",
"range": {
"endCol": 24,
"startCol": 17
}
}
],
"source": {
"column": 13,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 246
},
"text": " je .LBB2_2"
},
{
"labels": [],
"source": {
"column": 1,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 252
},
"text": " mov rax, rbx"
},
{
"labels": [],
"source": {
"column": 1,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 252
},
"text": " add rsp, 80"
},
{
"labels": [],
"source": {
"column": 1,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 252
},
"text": " pop rbx"
},
{
"labels": [],
"source": {
"column": 1,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 252
},
"text": " ret"
},
{
"labels": [],
"source": null,
"text": ".LBB2_3:"
},
{
"labels": [],
"source": {
"column": 1,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 0
},
"text": " lea rax, [rsp + 96]"
},
{
"labels": [],
"source": {
"column": 39,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 251
},
"text": " mov rax, qword ptr [rax + 16]"
},
{
"labels": [],
"source": {
"column": 54,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 38
},
"text": " mov qword ptr [rbx], rdi"
},
{
"labels": [],
"source": {
"column": 54,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 38
},
"text": " mov qword ptr [rbx + 8], r8"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 39
},
"text": " mov byte ptr [rbx + 16], 1"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 39
},
"text": " mov rcx, rax"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 39
},
"text": " shr rcx, 8"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 39
},
"text": " mov rdx, rax"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 39
},
"text": " shr rdx, 56"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 39
},
"text": " mov byte ptr [rbx + 23], dl"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 39
},
"text": " shr rax, 40"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 39
},
"text": " mov word ptr [rbx + 21], ax"
},
{
"labels": [],
"source": {
"column": 9,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 39
},
"text": " mov dword ptr [rbx + 17], ecx"
},
{
"labels": [],
"source": {
"column": 1,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 252
},
"text": " mov rax, rbx"
},
{
"labels": [],
"source": {
"column": 1,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 252
},
"text": " add rsp, 80"
},
{
"labels": [],
"source": {
"column": 1,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 252
},
"text": " pop rbx"
},
{
"labels": [],
"source": {
"column": 1,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 252
},
"text": " ret"
},
{
"labels": [],
"source": null,
"text": ".LBB2_2:"
},
{
"labels": [],
"source": {
"column": 12,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/return_type.hpp",
"line": 18
},
"text": " xorps xmm0, xmm0"
},
{
"labels": [],
"source": {
"column": 12,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/return_type.hpp",
"line": 18
},
"text": " movups xmmword ptr [rbx], xmm0"
},
{
"labels": [],
"source": {
"column": 12,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/return_type.hpp",
"line": 18
},
"text": " mov byte ptr [rbx + 16], 0"
},
{
"labels": [],
"source": {
"column": 1,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 252
},
"text": " mov rax, rbx"
},
{
"labels": [],
"source": {
"column": 1,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 252
},
"text": " add rsp, 80"
},
{
"labels": [],
"source": {
"column": 1,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 252
},
"text": " pop rbx"
},
{
"labels": [],
"source": {
"column": 1,
"file": "/opt/compiler-explorer/libs/ctre/master/include/ctre/evaluation.hpp",
"line": 252
},
"text": " ret"
},
{
"labels": [],
"source": null,
"text": ".L.str:"
},
{
"labels": [],
"source": null,
"text": " .asciz \"hello\""
},
{
"labels": [],
"source": null,
"text": ""
}
],
"labelDefinitions": {
".L.str": 98,
".LBB2_2": 90,
".LBB2_3": 72,
"_Z6myfuncv": 1,
"_ZN4ctre18evaluate_recursiveINS_13regex_resultsIPKcJEEES3_S3_Lm0ELm0EJNS_3anyEEJNS_10assert_endENS_8end_markENS_6acceptEEEET_mT0_SA_T1_S9_N4ctll4listIJNS_6repeatIXT2_EXT3_EJDpT4_EEEDpT5_EEE": 34,
"__clang_call_terminate": 30
}
}