-
-
Save modocache/670bc38e5a5ea2e0a3d6bafe8ea9c693 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <cstdio> | |
#include <experimental/coroutine> | |
using namespace std::experimental; | |
struct coro { | |
struct promise_type { | |
coro get_return_object() { | |
auto handle = coroutine_handle<promise_type>::from_promise(*this); | |
return coro(handle); | |
} | |
suspend_never initial_suspend() { return {}; } | |
suspend_never final_suspend() { return {}; } | |
void return_void() {} | |
void unhandled_exception() {} | |
}; | |
coroutine_handle<promise_type> handle; | |
coro(coroutine_handle<promise_type> handle) | |
: handle(handle) {} | |
}; | |
coro foo() { | |
int i = 0; | |
++i; | |
printf("%d\n", i); // 1 | |
// Breakpoint 1: | |
// (lldb) frame variable i | |
// (int) i = 1 | |
co_await suspend_always(); | |
int j = 0; | |
++i; | |
++j; | |
printf("%d, %d\n", i, j); // 2, 1 | |
// Breakpoint 2: | |
// (lldb) frame variable i | |
// (int) i = <variable not available> | |
// (lldb) frame variable j | |
// (int) j = 1 | |
co_await suspend_always(); | |
++i; | |
++j; | |
printf("%d, %d\n", j, i); // 3, 2 | |
// Breakpoint 3: | |
// (lldb) frame variable i | |
// (int) i = <variable not available> | |
// (lldb) frame variable j | |
// (int) j = 2 | |
} | |
int main() { | |
auto c = foo(); | |
c.handle.resume(); | |
c.handle.resume(); | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
test: file format ELF64-x86-64 | |
.debug_info contents: | |
0x00000000: Compile Unit: length = 0x000018e0 version = 0x0004 abbr_offset = 0x0000 addr_size = 0x08 (next unit at 0x000018e4) | |
0x0000000b: DW_TAG_compile_unit | |
DW_AT_producer ("clang version 11.0.0 (https://github.com/llvm/llvm-project.git baafe82b07ade3fff4f2685199870b67083a17d5)") | |
DW_AT_language (DW_LANG_C_plus_plus_14) | |
DW_AT_name ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_stmt_list (0x00000000) | |
DW_AT_comp_dir ("/home/modocache/Source/tmp/corodebug") | |
DW_AT_low_pc (0x0000000000000000) | |
DW_AT_ranges (0x00000000 | |
[0x0000000000401150, 0x00000000004016bb) | |
[0x00000000004016c0, 0x00000000004016f1) | |
[0x0000000000401710, 0x00000000004022f8) | |
[0x0000000000402300, 0x0000000000402338) | |
[0x0000000000402340, 0x000000000040234a) | |
[0x0000000000402350, 0x0000000000402361) | |
[0x0000000000402370, 0x000000000040237e) | |
[0x0000000000402380, 0x00000000004023a7) | |
[0x00000000004023b0, 0x00000000004023ba) | |
[0x00000000004023c0, 0x00000000004023d1) | |
[0x00000000004023e0, 0x00000000004023ee) | |
[0x00000000004023f0, 0x00000000004023fa) | |
[0x0000000000402400, 0x000000000040240a) | |
[0x0000000000402410, 0x000000000040241a) | |
[0x0000000000402420, 0x000000000040243e) | |
[0x0000000000402440, 0x0000000000402472) | |
[0x0000000000402480, 0x0000000000402499) | |
[0x00000000004024a0, 0x00000000004024be) | |
[0x00000000004024c0, 0x00000000004024ce) | |
[0x00000000004024d0, 0x00000000004024e5)) | |
0x0000002a: DW_TAG_structure_type | |
DW_AT_calling_convention (DW_CC_pass_by_value) | |
DW_AT_name ("coro") | |
DW_AT_byte_size (0x08) | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (6) | |
0x00000033: DW_TAG_member | |
DW_AT_name ("handle") | |
DW_AT_type (0x000000cc "coroutine_handle<coro::promise_type>") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (18) | |
DW_AT_data_member_location (0x00) | |
0x0000003f: DW_TAG_structure_type | |
DW_AT_calling_convention (DW_CC_pass_by_value) | |
DW_AT_name ("promise_type") | |
DW_AT_byte_size (0x01) | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (7) | |
0x00000048: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZN4coro12promise_type17get_return_objectEv") | |
DW_AT_name ("get_return_object") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (8) | |
DW_AT_type (0x0000002a "coro") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000057: DW_TAG_formal_parameter | |
DW_AT_type (0x0000079a "promise_type*") | |
DW_AT_artificial (true) | |
0x0000005c: NULL | |
0x0000005d: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZN4coro12promise_type15initial_suspendEv") | |
DW_AT_name ("initial_suspend") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (12) | |
DW_AT_type (0x00000275 "suspend_never") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x0000006c: DW_TAG_formal_parameter | |
DW_AT_type (0x0000079a "promise_type*") | |
DW_AT_artificial (true) | |
0x00000071: NULL | |
0x00000072: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZN4coro12promise_type13final_suspendEv") | |
DW_AT_name ("final_suspend") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (13) | |
DW_AT_type (0x00000275 "suspend_never") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000081: DW_TAG_formal_parameter | |
DW_AT_type (0x0000079a "promise_type*") | |
DW_AT_artificial (true) | |
0x00000086: NULL | |
0x00000087: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZN4coro12promise_type11return_voidEv") | |
DW_AT_name ("return_void") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (14) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000092: DW_TAG_formal_parameter | |
DW_AT_type (0x0000079a "promise_type*") | |
DW_AT_artificial (true) | |
0x00000097: NULL | |
0x00000098: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZN4coro12promise_type19unhandled_exceptionEv") | |
DW_AT_name ("unhandled_exception") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (15) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000000a3: DW_TAG_formal_parameter | |
DW_AT_type (0x0000079a "promise_type*") | |
DW_AT_artificial (true) | |
0x000000a8: NULL | |
0x000000a9: NULL | |
0x000000aa: DW_TAG_subprogram | |
DW_AT_name ("coro") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (19) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000000b1: DW_TAG_formal_parameter | |
DW_AT_type (0x000007b3 "coro*") | |
DW_AT_artificial (true) | |
0x000000b6: DW_TAG_formal_parameter | |
DW_AT_type (0x000000cc "coroutine_handle<coro::promise_type>") | |
0x000000bb: NULL | |
0x000000bc: NULL | |
0x000000bd: DW_TAG_namespace | |
DW_AT_name ("std") | |
0x000000c2: DW_TAG_namespace | |
DW_AT_name ("experimental") | |
0x000000c7: DW_TAG_namespace | |
DW_AT_name ("coroutines_v1") | |
DW_AT_export_symbols (true) | |
0x000000cc: DW_TAG_class_type | |
DW_AT_calling_convention (DW_CC_pass_by_value) | |
DW_AT_name ("coroutine_handle<coro::promise_type>") | |
DW_AT_byte_size (0x08) | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (196) | |
0x000000d5: DW_TAG_inheritance | |
DW_AT_type (0x00000165 "coroutine_handle<void>") | |
DW_AT_data_member_location (0x00) | |
DW_AT_accessibility (DW_ACCESS_public) | |
0x000000dc: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEEaSEDn") | |
DW_AT_name ("operator=") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (207) | |
DW_AT_type (0x0000078b "coroutine_handle<coro::promise_type>&") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_accessibility (DW_ACCESS_public) | |
0x000000ec: DW_TAG_formal_parameter | |
DW_AT_type (0x00000790 "coroutine_handle<coro::promise_type>*") | |
DW_AT_artificial (true) | |
0x000000f1: DW_TAG_formal_parameter | |
DW_AT_type (0x0000032a "nullptr_t") | |
0x000000f6: NULL | |
0x000000f7: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNKSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE7promiseEv") | |
DW_AT_name ("promise") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (213) | |
DW_AT_type (0x00000795 "promise_type&") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_accessibility (DW_ACCESS_public) | |
0x00000107: DW_TAG_formal_parameter | |
DW_AT_type (0x000007a9 "const coroutine_handle<coro::promise_type>*") | |
DW_AT_artificial (true) | |
0x0000010c: NULL | |
0x0000010d: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv") | |
DW_AT_name ("from_address") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (220) | |
DW_AT_type (0x000000cc "coroutine_handle<coro::promise_type>") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_accessibility (DW_ACCESS_public) | |
0x0000011d: DW_TAG_formal_parameter | |
DW_AT_type (0x0000076a "*") | |
0x00000122: NULL | |
0x00000123: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEDn") | |
DW_AT_name ("from_address") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (231) | |
DW_AT_type (0x000000cc "coroutine_handle<coro::promise_type>") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_accessibility (DW_ACCESS_public) | |
0x00000133: DW_TAG_formal_parameter | |
DW_AT_type (0x0000032a "nullptr_t") | |
0x00000138: NULL | |
0x00000139: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_promiseERS3_") | |
DW_AT_name ("from_promise") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (250) | |
DW_AT_type (0x000000cc "coroutine_handle<coro::promise_type>") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_accessibility (DW_ACCESS_public) | |
0x00000149: DW_TAG_formal_parameter | |
DW_AT_type (0x00000795 "promise_type&") | |
0x0000014e: NULL | |
0x0000014f: DW_TAG_template_type_parameter | |
DW_AT_type (0x0000003f "promise_type") | |
DW_AT_name ("_Promise") | |
0x00000158: DW_TAG_subprogram | |
DW_AT_name ("coroutine_handle") | |
DW_AT_declaration (true) | |
DW_AT_artificial (true) | |
DW_AT_external (true) | |
DW_AT_accessibility (DW_ACCESS_public) | |
0x0000015e: DW_TAG_formal_parameter | |
DW_AT_type (0x00000790 "coroutine_handle<coro::promise_type>*") | |
DW_AT_artificial (true) | |
0x00000163: NULL | |
0x00000164: NULL | |
0x00000165: DW_TAG_class_type | |
DW_AT_calling_convention (DW_CC_pass_by_value) | |
DW_AT_name ("coroutine_handle<void>") | |
DW_AT_byte_size (0x08) | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (92) | |
0x0000016e: DW_TAG_member | |
DW_AT_name ("__handle_") | |
DW_AT_type (0x0000076a "*") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (166) | |
DW_AT_data_member_location (0x00) | |
0x0000017a: DW_TAG_subprogram | |
DW_AT_name ("coroutine_handle") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (95) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_accessibility (DW_ACCESS_public) | |
0x00000182: DW_TAG_formal_parameter | |
DW_AT_type (0x0000076b "coroutine_handle<void>*") | |
DW_AT_artificial (true) | |
0x00000187: NULL | |
0x00000188: DW_TAG_subprogram | |
DW_AT_name ("coroutine_handle") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (98) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_accessibility (DW_ACCESS_public) | |
0x00000190: DW_TAG_formal_parameter | |
DW_AT_type (0x0000076b "coroutine_handle<void>*") | |
DW_AT_artificial (true) | |
0x00000195: DW_TAG_formal_parameter | |
DW_AT_type (0x0000032a "nullptr_t") | |
0x0000019a: NULL | |
0x0000019b: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNSt12experimental13coroutines_v116coroutine_handleIvEaSEDn") | |
DW_AT_name ("operator=") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (101) | |
DW_AT_type (0x00000775 "coroutine_handle<void>&") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_accessibility (DW_ACCESS_public) | |
0x000001ab: DW_TAG_formal_parameter | |
DW_AT_type (0x0000076b "coroutine_handle<void>*") | |
DW_AT_artificial (true) | |
0x000001b0: DW_TAG_formal_parameter | |
DW_AT_type (0x0000032a "nullptr_t") | |
0x000001b5: NULL | |
0x000001b6: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNKSt12experimental13coroutines_v116coroutine_handleIvE7addressEv") | |
DW_AT_name ("address") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (107) | |
DW_AT_type (0x0000076a "*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_accessibility (DW_ACCESS_public) | |
0x000001c6: DW_TAG_formal_parameter | |
DW_AT_type (0x0000077a "const coroutine_handle<void>*") | |
DW_AT_artificial (true) | |
0x000001cb: NULL | |
0x000001cc: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNKSt12experimental13coroutines_v116coroutine_handleIvEcvbEv") | |
DW_AT_name ("operator bool") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (110) | |
DW_AT_type (0x00000784 "bool") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_accessibility (DW_ACCESS_public) | |
DW_AT_explicit (true) | |
0x000001dc: DW_TAG_formal_parameter | |
DW_AT_type (0x0000077a "const coroutine_handle<void>*") | |
DW_AT_artificial (true) | |
0x000001e1: NULL | |
0x000001e2: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNSt12experimental13coroutines_v116coroutine_handleIvEclEv") | |
DW_AT_name ("operator()") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (113) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_accessibility (DW_ACCESS_public) | |
0x000001ee: DW_TAG_formal_parameter | |
DW_AT_type (0x0000076b "coroutine_handle<void>*") | |
DW_AT_artificial (true) | |
0x000001f3: NULL | |
0x000001f4: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNSt12experimental13coroutines_v116coroutine_handleIvE6resumeEv") | |
DW_AT_name ("resume") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (116) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_accessibility (DW_ACCESS_public) | |
0x00000200: DW_TAG_formal_parameter | |
DW_AT_type (0x0000076b "coroutine_handle<void>*") | |
DW_AT_artificial (true) | |
0x00000205: NULL | |
0x00000206: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNSt12experimental13coroutines_v116coroutine_handleIvE7destroyEv") | |
DW_AT_name ("destroy") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (125) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_accessibility (DW_ACCESS_public) | |
0x00000212: DW_TAG_formal_parameter | |
DW_AT_type (0x0000076b "coroutine_handle<void>*") | |
DW_AT_artificial (true) | |
0x00000217: NULL | |
0x00000218: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNKSt12experimental13coroutines_v116coroutine_handleIvE4doneEv") | |
DW_AT_name ("done") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (132) | |
DW_AT_type (0x00000784 "bool") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_accessibility (DW_ACCESS_public) | |
0x00000228: DW_TAG_formal_parameter | |
DW_AT_type (0x0000077a "const coroutine_handle<void>*") | |
DW_AT_artificial (true) | |
0x0000022d: NULL | |
0x0000022e: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNSt12experimental13coroutines_v116coroutine_handleIvE12from_addressEPv") | |
DW_AT_name ("from_address") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (140) | |
DW_AT_type (0x00000165 "coroutine_handle<void>") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_accessibility (DW_ACCESS_public) | |
0x0000023e: DW_TAG_formal_parameter | |
DW_AT_type (0x0000076a "*") | |
0x00000243: NULL | |
0x00000244: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNSt12experimental13coroutines_v116coroutine_handleIvE12from_addressEDn") | |
DW_AT_name ("from_address") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (148) | |
DW_AT_type (0x00000165 "coroutine_handle<void>") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_accessibility (DW_ACCESS_public) | |
0x00000254: DW_TAG_formal_parameter | |
DW_AT_type (0x0000032a "nullptr_t") | |
0x00000259: NULL | |
0x0000025a: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNKSt12experimental13coroutines_v116coroutine_handleIvE14__is_suspendedEv") | |
DW_AT_name ("__is_suspended") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (160) | |
DW_AT_type (0x00000784 "bool") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000269: DW_TAG_formal_parameter | |
DW_AT_type (0x0000077a "const coroutine_handle<void>*") | |
DW_AT_artificial (true) | |
0x0000026e: NULL | |
0x0000026f: DW_TAG_template_type_parameter | |
DW_AT_name ("_Promise") | |
0x00000274: NULL | |
0x00000275: DW_TAG_structure_type | |
DW_AT_calling_convention (DW_CC_pass_by_value) | |
DW_AT_name ("suspend_never") | |
DW_AT_byte_size (0x01) | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (300) | |
0x0000027f: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNKSt12experimental13coroutines_v113suspend_never11await_readyEv") | |
DW_AT_name ("await_ready") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (302) | |
DW_AT_type (0x00000784 "bool") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x0000028f: DW_TAG_formal_parameter | |
DW_AT_type (0x0000079f "const suspend_never*") | |
DW_AT_artificial (true) | |
0x00000294: NULL | |
0x00000295: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNKSt12experimental13coroutines_v113suspend_never13await_suspendENS0_16coroutine_handleIvEE") | |
DW_AT_name ("await_suspend") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (304) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000002a1: DW_TAG_formal_parameter | |
DW_AT_type (0x0000079f "const suspend_never*") | |
DW_AT_artificial (true) | |
0x000002a6: DW_TAG_formal_parameter | |
DW_AT_type (0x00000165 "coroutine_handle<void>") | |
0x000002ab: NULL | |
0x000002ac: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNKSt12experimental13coroutines_v113suspend_never12await_resumeEv") | |
DW_AT_name ("await_resume") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (306) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000002b8: DW_TAG_formal_parameter | |
DW_AT_type (0x0000079f "const suspend_never*") | |
DW_AT_artificial (true) | |
0x000002bd: NULL | |
0x000002be: NULL | |
0x000002bf: DW_TAG_structure_type | |
DW_AT_calling_convention (DW_CC_pass_by_value) | |
DW_AT_name ("suspend_always") | |
DW_AT_byte_size (0x01) | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (309) | |
0x000002c9: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNKSt12experimental13coroutines_v114suspend_always11await_readyEv") | |
DW_AT_name ("await_ready") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (311) | |
DW_AT_type (0x00000784 "bool") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000002d9: DW_TAG_formal_parameter | |
DW_AT_type (0x0000161a "const suspend_always*") | |
DW_AT_artificial (true) | |
0x000002de: NULL | |
0x000002df: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNKSt12experimental13coroutines_v114suspend_always13await_suspendENS0_16coroutine_handleIvEE") | |
DW_AT_name ("await_suspend") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (313) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000002eb: DW_TAG_formal_parameter | |
DW_AT_type (0x0000161a "const suspend_always*") | |
DW_AT_artificial (true) | |
0x000002f0: DW_TAG_formal_parameter | |
DW_AT_type (0x00000165 "coroutine_handle<void>") | |
0x000002f5: NULL | |
0x000002f6: DW_TAG_subprogram | |
DW_AT_linkage_name ("_ZNKSt12experimental13coroutines_v114suspend_always12await_resumeEv") | |
DW_AT_name ("await_resume") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (315) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000302: DW_TAG_formal_parameter | |
DW_AT_type (0x0000161a "const suspend_always*") | |
DW_AT_artificial (true) | |
0x00000307: NULL | |
0x00000308: NULL | |
0x00000309: DW_TAG_structure_type | |
DW_AT_calling_convention (DW_CC_pass_by_value) | |
DW_AT_name ("__coroutine_traits_sfinae<coro, void>") | |
DW_AT_byte_size (0x01) | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (76) | |
0x00000312: DW_TAG_template_type_parameter | |
DW_AT_type (0x0000002a "coro") | |
DW_AT_name ("_Tp") | |
0x0000031b: DW_TAG_template_type_parameter | |
0x0000031c: DW_TAG_typedef | |
DW_AT_type (0x0000003f "promise_type") | |
DW_AT_name ("promise_type") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (79) | |
0x00000327: NULL | |
0x00000328: NULL | |
0x00000329: NULL | |
0x0000032a: DW_TAG_typedef | |
DW_AT_type (0x00000770 "decltype(nullptr)") | |
DW_AT_name ("nullptr_t") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/__nullptr") | |
DW_AT_decl_line (56) | |
0x00000335: DW_TAG_namespace | |
DW_AT_name ("__1") | |
DW_AT_export_symbols (true) | |
0x0000033a: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (107) | |
DW_AT_import (0x000007b8) | |
0x00000341: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (108) | |
DW_AT_import (0x000007c8) | |
0x00000348: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (109) | |
DW_AT_import (0x000007e3) | |
0x0000034f: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (111) | |
DW_AT_import (0x000007f5) | |
0x00000356: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (112) | |
DW_AT_import (0x00000812) | |
0x0000035d: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (113) | |
DW_AT_import (0x00000823) | |
0x00000364: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (114) | |
DW_AT_import (0x0000084c) | |
0x0000036b: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (115) | |
DW_AT_import (0x0000086d) | |
0x00000372: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (116) | |
DW_AT_import (0x00000894) | |
0x00000379: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (117) | |
DW_AT_import (0x000008b0) | |
0x00000380: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (118) | |
DW_AT_import (0x000008cd) | |
0x00000387: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (119) | |
DW_AT_import (0x000008e5) | |
0x0000038e: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (120) | |
DW_AT_import (0x00000901) | |
0x00000395: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (121) | |
DW_AT_import (0x00000927) | |
0x0000039c: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (122) | |
DW_AT_import (0x00000947) | |
0x000003a3: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (123) | |
DW_AT_import (0x00000967) | |
0x000003aa: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (124) | |
DW_AT_import (0x00000988) | |
0x000003b1: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (125) | |
DW_AT_import (0x000009a4) | |
0x000003b8: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (126) | |
DW_AT_import (0x000009b6) | |
0x000003bf: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (127) | |
DW_AT_import (0x000009d2) | |
0x000003c6: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (128) | |
DW_AT_import (0x000009e9) | |
0x000003cd: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (129) | |
DW_AT_import (0x00000a00) | |
0x000003d4: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (130) | |
DW_AT_import (0x00000a12) | |
0x000003db: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (131) | |
DW_AT_import (0x00000a29) | |
0x000003e2: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (132) | |
DW_AT_import (0x00000a40) | |
0x000003e9: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (133) | |
DW_AT_import (0x00000a66) | |
0x000003f0: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (134) | |
DW_AT_import (0x00000a92) | |
0x000003f7: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (135) | |
DW_AT_import (0x00000ab3) | |
0x000003fe: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (136) | |
DW_AT_import (0x00000ad6) | |
0x00000405: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (137) | |
DW_AT_import (0x00000af7) | |
0x0000040c: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (138) | |
DW_AT_import (0x00000b09) | |
0x00000413: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (139) | |
DW_AT_import (0x00000b17) | |
0x0000041a: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (140) | |
DW_AT_import (0x00000b25) | |
0x00000421: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (141) | |
DW_AT_import (0x00000b37) | |
0x00000428: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (142) | |
DW_AT_import (0x00000b49) | |
0x0000042f: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (145) | |
DW_AT_import (0x00000b57) | |
0x00000436: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (146) | |
DW_AT_import (0x00000b6d) | |
0x0000043d: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (147) | |
DW_AT_import (0x00000b88) | |
0x00000444: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (148) | |
DW_AT_import (0x00000b99) | |
0x0000044b: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (149) | |
DW_AT_import (0x00000baf) | |
0x00000452: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (150) | |
DW_AT_import (0x00000bba) | |
0x00000459: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (154) | |
DW_AT_import (0x00000bcb) | |
0x00000460: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (158) | |
DW_AT_import (0x00000bd7) | |
0x00000467: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (159) | |
DW_AT_import (0x00000bee) | |
0x0000046e: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (163) | |
DW_AT_import (0x00000c09) | |
0x00000475: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (164) | |
DW_AT_import (0x00000c1c) | |
0x0000047c: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (165) | |
DW_AT_import (0x00000c2e) | |
0x00000483: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio") | |
DW_AT_decl_line (166) | |
DW_AT_import (0x00000c40) | |
0x0000048a: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstddef") | |
DW_AT_decl_line (49) | |
DW_AT_import (0x00000c57) | |
0x00000491: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstddef") | |
DW_AT_decl_line (50) | |
DW_AT_import (0x000007e3) | |
0x00000498: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstddef") | |
DW_AT_decl_line (55) | |
DW_AT_import (0x00000c62) | |
0x0000049f: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (99) | |
DW_AT_import (0x000007e3) | |
0x000004a6: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (100) | |
DW_AT_import (0x00000c6e) | |
0x000004ad: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (101) | |
DW_AT_import (0x00000c7a) | |
0x000004b4: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (103) | |
DW_AT_import (0x00000ca3) | |
0x000004bb: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (105) | |
DW_AT_import (0x00000cd3) | |
0x000004c2: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (106) | |
DW_AT_import (0x00000ceb) | |
0x000004c9: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (107) | |
DW_AT_import (0x00000cfc) | |
0x000004d0: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (109) | |
DW_AT_import (0x00000d0d) | |
0x000004d7: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (111) | |
DW_AT_import (0x00000d1e) | |
0x000004de: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (112) | |
DW_AT_import (0x00000d3e) | |
0x000004e5: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (113) | |
DW_AT_import (0x00000d5b) | |
0x000004ec: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (114) | |
DW_AT_import (0x00000d78) | |
0x000004f3: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (116) | |
DW_AT_import (0x00000d93) | |
0x000004fa: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (118) | |
DW_AT_import (0x00000dae) | |
0x00000501: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (120) | |
DW_AT_import (0x00000dc9) | |
0x00000508: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (122) | |
DW_AT_import (0x00000deb) | |
0x0000050f: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (123) | |
DW_AT_import (0x00000df7) | |
0x00000516: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (124) | |
DW_AT_import (0x00000e0c) | |
0x0000051d: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (125) | |
DW_AT_import (0x00000e23) | |
0x00000524: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (126) | |
DW_AT_import (0x00000e31) | |
0x0000052b: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (127) | |
DW_AT_import (0x00000e43) | |
0x00000532: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (128) | |
DW_AT_import (0x00000e5a) | |
0x00000539: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (129) | |
DW_AT_import (0x00000e62) | |
0x00000540: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (130) | |
DW_AT_import (0x00000e7a) | |
0x00000547: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (131) | |
DW_AT_import (0x00000e88) | |
0x0000054e: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (133) | |
DW_AT_import (0x00000e96) | |
0x00000555: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (134) | |
DW_AT_import (0x00000ea8) | |
0x0000055c: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (136) | |
DW_AT_import (0x00000eba) | |
0x00000563: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (137) | |
DW_AT_import (0x00000f01) | |
0x0000056a: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (138) | |
DW_AT_import (0x00000f1e) | |
0x00000571: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (139) | |
DW_AT_import (0x00000f34) | |
0x00000578: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (141) | |
DW_AT_import (0x00000f46) | |
0x0000057f: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (143) | |
DW_AT_import (0x00000f58) | |
0x00000586: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (144) | |
DW_AT_import (0x00000f73) | |
0x0000058d: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (146) | |
DW_AT_import (0x00000f8a) | |
0x00000594: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (148) | |
DW_AT_import (0x00000fa1) | |
0x0000059b: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (149) | |
DW_AT_import (0x00000fb8) | |
0x000005a2: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (150) | |
DW_AT_import (0x00000fe5) | |
0x000005a9: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (151) | |
DW_AT_import (0x00000ffc) | |
0x000005b0: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (152) | |
DW_AT_import (0x00001018) | |
0x000005b7: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (154) | |
DW_AT_import (0x00001043) | |
0x000005be: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (155) | |
DW_AT_import (0x00001055) | |
0x000005c5: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib") | |
DW_AT_decl_line (158) | |
DW_AT_import (0x00001063) | |
0x000005cc: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (152) | |
DW_AT_import (0x0000107a) | |
0x000005d3: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (153) | |
DW_AT_import (0x00001097) | |
0x000005da: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (154) | |
DW_AT_import (0x000010b4) | |
0x000005e1: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (155) | |
DW_AT_import (0x000010ca) | |
0x000005e8: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (157) | |
DW_AT_import (0x000010e0) | |
0x000005ef: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (158) | |
DW_AT_import (0x000010fd) | |
0x000005f6: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (159) | |
DW_AT_import (0x0000111a) | |
0x000005fd: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (160) | |
DW_AT_import (0x00001130) | |
0x00000604: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (162) | |
DW_AT_import (0x00001146) | |
0x0000060b: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (163) | |
DW_AT_import (0x0000115c) | |
0x00000612: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (164) | |
DW_AT_import (0x00001172) | |
0x00000619: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (165) | |
DW_AT_import (0x00001188) | |
0x00000620: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (167) | |
DW_AT_import (0x0000119e) | |
0x00000627: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (168) | |
DW_AT_import (0x000011b4) | |
0x0000062e: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (169) | |
DW_AT_import (0x000011ca) | |
0x00000635: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (170) | |
DW_AT_import (0x000011e0) | |
0x0000063c: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (172) | |
DW_AT_import (0x000011f6) | |
0x00000643: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (173) | |
DW_AT_import (0x00001201) | |
0x0000064a: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (174) | |
DW_AT_import (0x0000120c) | |
0x00000651: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (175) | |
DW_AT_import (0x00001217) | |
0x00000658: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (177) | |
DW_AT_import (0x00001222) | |
0x0000065f: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (178) | |
DW_AT_import (0x0000122d) | |
0x00000666: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (179) | |
DW_AT_import (0x00001238) | |
0x0000066d: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (180) | |
DW_AT_import (0x00001243) | |
0x00000674: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (182) | |
DW_AT_import (0x0000124e) | |
0x0000067b: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (183) | |
DW_AT_import (0x00001259) | |
0x00000682: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (185) | |
DW_AT_import (0x00001264) | |
0x00000689: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint") | |
DW_AT_decl_line (186) | |
DW_AT_import (0x0000127a) | |
0x00000690: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (68) | |
DW_AT_import (0x000007e3) | |
0x00000697: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (69) | |
DW_AT_import (0x00001290) | |
0x0000069e: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (70) | |
DW_AT_import (0x000012ab) | |
0x000006a5: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (71) | |
DW_AT_import (0x000012c6) | |
0x000006ac: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (72) | |
DW_AT_import (0x000012dc) | |
0x000006b3: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (73) | |
DW_AT_import (0x000012f7) | |
0x000006ba: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (74) | |
DW_AT_import (0x0000130d) | |
0x000006c1: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (75) | |
DW_AT_import (0x00001328) | |
0x000006c8: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (76) | |
DW_AT_import (0x00001343) | |
0x000006cf: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (77) | |
DW_AT_import (0x00001359) | |
0x000006d6: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (78) | |
DW_AT_import (0x00001374) | |
0x000006dd: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (79) | |
DW_AT_import (0x0000138a) | |
0x000006e4: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (80) | |
DW_AT_import (0x000013a5) | |
0x000006eb: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (81) | |
DW_AT_import (0x000013c4) | |
0x000006f2: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (82) | |
DW_AT_import (0x000013de) | |
0x000006f9: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (83) | |
DW_AT_import (0x000013f5) | |
0x00000700: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (84) | |
DW_AT_import (0x0000140f) | |
0x00000707: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (85) | |
DW_AT_import (0x00001429) | |
0x0000070e: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (86) | |
DW_AT_import (0x00001440) | |
0x00000715: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (88) | |
DW_AT_import (0x0000145a) | |
0x0000071c: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (90) | |
DW_AT_import (0x00001471) | |
0x00000723: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (91) | |
DW_AT_import (0x0000148c) | |
0x0000072a: DW_TAG_imported_declaration | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring") | |
DW_AT_decl_line (92) | |
DW_AT_import (0x0000149e) | |
0x00000731: DW_TAG_subprogram | |
DW_AT_low_pc (0x00000000004024c0) | |
DW_AT_high_pc (0x00000000004024ce) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_linkage_name ("_ZNSt3__19addressofIN4coro12promise_typeEEEPT_RS3_") | |
DW_AT_name ("addressof<coro::promise_type>") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/type_traits") | |
DW_AT_decl_line (591) | |
DW_AT_type (0x000018c5 "promise_type*") | |
DW_AT_external (true) | |
0x0000074f: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_name ("__x") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/type_traits") | |
DW_AT_decl_line (591) | |
DW_AT_type (0x00000795 "promise_type&") | |
0x0000075e: DW_TAG_template_type_parameter | |
DW_AT_type (0x0000003f "promise_type") | |
DW_AT_name ("_Tp") | |
0x00000767: NULL | |
0x00000768: NULL | |
0x00000769: NULL | |
0x0000076a: DW_TAG_pointer_type | |
0x0000076b: DW_TAG_pointer_type | |
DW_AT_type (0x00000165 "coroutine_handle<void>") | |
0x00000770: DW_TAG_unspecified_type | |
DW_AT_name ("decltype(nullptr)") | |
0x00000775: DW_TAG_reference_type | |
DW_AT_type (0x00000165 "coroutine_handle<void>") | |
0x0000077a: DW_TAG_pointer_type | |
DW_AT_type (0x0000077f "const coroutine_handle<void>") | |
0x0000077f: DW_TAG_const_type | |
DW_AT_type (0x00000165 "coroutine_handle<void>") | |
0x00000784: DW_TAG_base_type | |
DW_AT_name ("bool") | |
DW_AT_encoding (DW_ATE_boolean) | |
DW_AT_byte_size (0x01) | |
0x0000078b: DW_TAG_reference_type | |
DW_AT_type (0x000000cc "coroutine_handle<coro::promise_type>") | |
0x00000790: DW_TAG_pointer_type | |
DW_AT_type (0x000000cc "coroutine_handle<coro::promise_type>") | |
0x00000795: DW_TAG_reference_type | |
DW_AT_type (0x0000003f "promise_type") | |
0x0000079a: DW_TAG_pointer_type | |
DW_AT_type (0x0000003f "promise_type") | |
0x0000079f: DW_TAG_pointer_type | |
DW_AT_type (0x000007a4 "const suspend_never") | |
0x000007a4: DW_TAG_const_type | |
DW_AT_type (0x00000275 "suspend_never") | |
0x000007a9: DW_TAG_pointer_type | |
DW_AT_type (0x000007ae "const coroutine_handle<coro::promise_type>") | |
0x000007ae: DW_TAG_const_type | |
DW_AT_type (0x000000cc "coroutine_handle<coro::promise_type>") | |
0x000007b3: DW_TAG_pointer_type | |
DW_AT_type (0x0000002a "coro") | |
0x000007b8: DW_TAG_typedef | |
DW_AT_type (0x000007c3 "_IO_FILE") | |
DW_AT_name ("FILE") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types/FILE.h") | |
DW_AT_decl_line (7) | |
0x000007c3: DW_TAG_structure_type | |
DW_AT_name ("_IO_FILE") | |
DW_AT_declaration (true) | |
0x000007c8: DW_TAG_typedef | |
DW_AT_type (0x000007d3 "__fpos_t") | |
DW_AT_name ("fpos_t") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (84) | |
0x000007d3: DW_TAG_typedef | |
DW_AT_type (0x000007de "_G_fpos_t") | |
DW_AT_name ("__fpos_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h") | |
DW_AT_decl_line (14) | |
0x000007de: DW_TAG_structure_type | |
DW_AT_name ("_G_fpos_t") | |
DW_AT_declaration (true) | |
0x000007e3: DW_TAG_typedef | |
DW_AT_type (0x000007ee "long unsigned int") | |
DW_AT_name ("size_t") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/lib/clang/11.0.0/include/stddef.h") | |
DW_AT_decl_line (46) | |
0x000007ee: DW_TAG_base_type | |
DW_AT_name ("long unsigned int") | |
DW_AT_encoding (DW_ATE_unsigned) | |
DW_AT_byte_size (0x08) | |
0x000007f5: DW_TAG_subprogram | |
DW_AT_name ("fclose") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (213) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000800: DW_TAG_formal_parameter | |
DW_AT_type (0x0000080d "FILE*") | |
0x00000805: NULL | |
0x00000806: DW_TAG_base_type | |
DW_AT_name ("int") | |
DW_AT_encoding (DW_ATE_signed) | |
DW_AT_byte_size (0x04) | |
0x0000080d: DW_TAG_pointer_type | |
DW_AT_type (0x000007b8 "FILE") | |
0x00000812: DW_TAG_subprogram | |
DW_AT_name ("fflush") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (218) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x0000081d: DW_TAG_formal_parameter | |
DW_AT_type (0x0000080d "FILE*") | |
0x00000822: NULL | |
0x00000823: DW_TAG_subprogram | |
DW_AT_name ("setbuf") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (304) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x0000082b: DW_TAG_formal_parameter | |
DW_AT_type (0x00000836 "restrict FILE*") | |
0x00000830: DW_TAG_formal_parameter | |
DW_AT_type (0x0000083b "restrict char*") | |
0x00000835: NULL | |
0x00000836: DW_TAG_restrict_type | |
DW_AT_type (0x0000080d "FILE*") | |
0x0000083b: DW_TAG_restrict_type | |
DW_AT_type (0x00000840 "char*") | |
0x00000840: DW_TAG_pointer_type | |
DW_AT_type (0x00000845 "char") | |
0x00000845: DW_TAG_base_type | |
DW_AT_name ("char") | |
DW_AT_encoding (DW_ATE_signed_char) | |
DW_AT_byte_size (0x01) | |
0x0000084c: DW_TAG_subprogram | |
DW_AT_name ("setvbuf") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (308) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000858: DW_TAG_formal_parameter | |
DW_AT_type (0x00000836 "restrict FILE*") | |
0x0000085d: DW_TAG_formal_parameter | |
DW_AT_type (0x0000083b "restrict char*") | |
0x00000862: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x00000867: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x0000086c: NULL | |
0x0000086d: DW_TAG_subprogram | |
DW_AT_name ("fprintf") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (326) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000879: DW_TAG_formal_parameter | |
DW_AT_type (0x00000836 "restrict FILE*") | |
0x0000087e: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000883: DW_TAG_unspecified_parameters | |
0x00000884: NULL | |
0x00000885: DW_TAG_restrict_type | |
DW_AT_type (0x0000088a "const char*") | |
0x0000088a: DW_TAG_pointer_type | |
DW_AT_type (0x0000088f "const char") | |
0x0000088f: DW_TAG_const_type | |
DW_AT_type (0x00000845 "char") | |
0x00000894: DW_TAG_subprogram | |
DW_AT_linkage_name ("__isoc99_fscanf") | |
DW_AT_name ("fscanf") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (407) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000008a4: DW_TAG_formal_parameter | |
DW_AT_type (0x00000836 "restrict FILE*") | |
0x000008a9: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x000008ae: DW_TAG_unspecified_parameters | |
0x000008af: NULL | |
0x000008b0: DW_TAG_subprogram | |
DW_AT_name ("snprintf") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (354) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000008bc: DW_TAG_formal_parameter | |
DW_AT_type (0x0000083b "restrict char*") | |
0x000008c1: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x000008c6: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x000008cb: DW_TAG_unspecified_parameters | |
0x000008cc: NULL | |
0x000008cd: DW_TAG_subprogram | |
DW_AT_name ("sprintf") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (334) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000008d9: DW_TAG_formal_parameter | |
DW_AT_type (0x0000083b "restrict char*") | |
0x000008de: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x000008e3: DW_TAG_unspecified_parameters | |
0x000008e4: NULL | |
0x000008e5: DW_TAG_subprogram | |
DW_AT_linkage_name ("__isoc99_sscanf") | |
DW_AT_name ("sscanf") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (412) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000008f5: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x000008fa: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x000008ff: DW_TAG_unspecified_parameters | |
0x00000900: NULL | |
0x00000901: DW_TAG_subprogram | |
DW_AT_name ("vfprintf") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (341) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x0000090d: DW_TAG_formal_parameter | |
DW_AT_type (0x00000836 "restrict FILE*") | |
0x00000912: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000917: DW_TAG_formal_parameter | |
DW_AT_type (0x0000091d "__va_list_tag*") | |
0x0000091c: NULL | |
0x0000091d: DW_TAG_pointer_type | |
DW_AT_type (0x00000922 "__va_list_tag") | |
0x00000922: DW_TAG_structure_type | |
DW_AT_name ("__va_list_tag") | |
DW_AT_declaration (true) | |
0x00000927: DW_TAG_subprogram | |
DW_AT_linkage_name ("__isoc99_vfscanf") | |
DW_AT_name ("vfscanf") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (451) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000937: DW_TAG_formal_parameter | |
DW_AT_type (0x00000836 "restrict FILE*") | |
0x0000093c: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000941: DW_TAG_formal_parameter | |
DW_AT_type (0x0000091d "__va_list_tag*") | |
0x00000946: NULL | |
0x00000947: DW_TAG_subprogram | |
DW_AT_linkage_name ("__isoc99_vsscanf") | |
DW_AT_name ("vsscanf") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (459) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000957: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x0000095c: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000961: DW_TAG_formal_parameter | |
DW_AT_type (0x0000091d "__va_list_tag*") | |
0x00000966: NULL | |
0x00000967: DW_TAG_subprogram | |
DW_AT_name ("vsnprintf") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (358) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000973: DW_TAG_formal_parameter | |
DW_AT_type (0x0000083b "restrict char*") | |
0x00000978: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x0000097d: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000982: DW_TAG_formal_parameter | |
DW_AT_type (0x0000091d "__va_list_tag*") | |
0x00000987: NULL | |
0x00000988: DW_TAG_subprogram | |
DW_AT_name ("vsprintf") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (349) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000994: DW_TAG_formal_parameter | |
DW_AT_type (0x0000083b "restrict char*") | |
0x00000999: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x0000099e: DW_TAG_formal_parameter | |
DW_AT_type (0x0000091d "__va_list_tag*") | |
0x000009a3: NULL | |
0x000009a4: DW_TAG_subprogram | |
DW_AT_name ("fgetc") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (485) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000009b0: DW_TAG_formal_parameter | |
DW_AT_type (0x0000080d "FILE*") | |
0x000009b5: NULL | |
0x000009b6: DW_TAG_subprogram | |
DW_AT_name ("fgets") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (564) | |
DW_AT_type (0x00000840 "char*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000009c2: DW_TAG_formal_parameter | |
DW_AT_type (0x0000083b "restrict char*") | |
0x000009c7: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x000009cc: DW_TAG_formal_parameter | |
DW_AT_type (0x00000836 "restrict FILE*") | |
0x000009d1: NULL | |
0x000009d2: DW_TAG_subprogram | |
DW_AT_name ("fputc") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (521) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000009de: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x000009e3: DW_TAG_formal_parameter | |
DW_AT_type (0x0000080d "FILE*") | |
0x000009e8: NULL | |
0x000009e9: DW_TAG_subprogram | |
DW_AT_name ("fputs") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (626) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000009f5: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x000009fa: DW_TAG_formal_parameter | |
DW_AT_type (0x00000836 "restrict FILE*") | |
0x000009ff: NULL | |
0x00000a00: DW_TAG_subprogram | |
DW_AT_name ("getc") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (486) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000a0c: DW_TAG_formal_parameter | |
DW_AT_type (0x0000080d "FILE*") | |
0x00000a11: NULL | |
0x00000a12: DW_TAG_subprogram | |
DW_AT_name ("putc") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (522) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000a1e: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x00000a23: DW_TAG_formal_parameter | |
DW_AT_type (0x0000080d "FILE*") | |
0x00000a28: NULL | |
0x00000a29: DW_TAG_subprogram | |
DW_AT_name ("ungetc") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (639) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000a35: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x00000a3a: DW_TAG_formal_parameter | |
DW_AT_type (0x0000080d "FILE*") | |
0x00000a3f: NULL | |
0x00000a40: DW_TAG_subprogram | |
DW_AT_name ("fread") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (646) | |
DW_AT_type (0x000007e3 "size_t") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000a4c: DW_TAG_formal_parameter | |
DW_AT_type (0x00000a61 "restrict *") | |
0x00000a51: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00000a56: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00000a5b: DW_TAG_formal_parameter | |
DW_AT_type (0x00000836 "restrict FILE*") | |
0x00000a60: NULL | |
0x00000a61: DW_TAG_restrict_type | |
DW_AT_type (0x0000076a "*") | |
0x00000a66: DW_TAG_subprogram | |
DW_AT_name ("fwrite") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (652) | |
DW_AT_type (0x000007e3 "size_t") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000a72: DW_TAG_formal_parameter | |
DW_AT_type (0x00000a87 "restrict const *") | |
0x00000a77: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00000a7c: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00000a81: DW_TAG_formal_parameter | |
DW_AT_type (0x00000836 "restrict FILE*") | |
0x00000a86: NULL | |
0x00000a87: DW_TAG_restrict_type | |
DW_AT_type (0x00000a8c "const *") | |
0x00000a8c: DW_TAG_pointer_type | |
DW_AT_type (0x00000a91 "const ") | |
0x00000a91: DW_TAG_const_type | |
0x00000a92: DW_TAG_subprogram | |
DW_AT_name ("fgetpos") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (731) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000a9e: DW_TAG_formal_parameter | |
DW_AT_type (0x00000836 "restrict FILE*") | |
0x00000aa3: DW_TAG_formal_parameter | |
DW_AT_type (0x00000aa9 "restrict fpos_t*") | |
0x00000aa8: NULL | |
0x00000aa9: DW_TAG_restrict_type | |
DW_AT_type (0x00000aae "fpos_t*") | |
0x00000aae: DW_TAG_pointer_type | |
DW_AT_type (0x000007c8 "fpos_t") | |
0x00000ab3: DW_TAG_subprogram | |
DW_AT_name ("fseek") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (684) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000abf: DW_TAG_formal_parameter | |
DW_AT_type (0x0000080d "FILE*") | |
0x00000ac4: DW_TAG_formal_parameter | |
DW_AT_type (0x00000acf "long int") | |
0x00000ac9: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x00000ace: NULL | |
0x00000acf: DW_TAG_base_type | |
DW_AT_name ("long int") | |
DW_AT_encoding (DW_ATE_signed) | |
DW_AT_byte_size (0x08) | |
0x00000ad6: DW_TAG_subprogram | |
DW_AT_name ("fsetpos") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (736) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000ae2: DW_TAG_formal_parameter | |
DW_AT_type (0x0000080d "FILE*") | |
0x00000ae7: DW_TAG_formal_parameter | |
DW_AT_type (0x00000aed "const fpos_t*") | |
0x00000aec: NULL | |
0x00000aed: DW_TAG_pointer_type | |
DW_AT_type (0x00000af2 "const fpos_t") | |
0x00000af2: DW_TAG_const_type | |
DW_AT_type (0x000007c8 "fpos_t") | |
0x00000af7: DW_TAG_subprogram | |
DW_AT_name ("ftell") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (689) | |
DW_AT_type (0x00000acf "long int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000b03: DW_TAG_formal_parameter | |
DW_AT_type (0x0000080d "FILE*") | |
0x00000b08: NULL | |
0x00000b09: DW_TAG_subprogram | |
DW_AT_name ("rewind") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (694) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000b11: DW_TAG_formal_parameter | |
DW_AT_type (0x0000080d "FILE*") | |
0x00000b16: NULL | |
0x00000b17: DW_TAG_subprogram | |
DW_AT_name ("clearerr") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (757) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000b1f: DW_TAG_formal_parameter | |
DW_AT_type (0x0000080d "FILE*") | |
0x00000b24: NULL | |
0x00000b25: DW_TAG_subprogram | |
DW_AT_name ("feof") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (759) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000b31: DW_TAG_formal_parameter | |
DW_AT_type (0x0000080d "FILE*") | |
0x00000b36: NULL | |
0x00000b37: DW_TAG_subprogram | |
DW_AT_name ("ferror") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (761) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000b43: DW_TAG_formal_parameter | |
DW_AT_type (0x0000080d "FILE*") | |
0x00000b48: NULL | |
0x00000b49: DW_TAG_subprogram | |
DW_AT_name ("perror") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (775) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000b51: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00000b56: NULL | |
0x00000b57: DW_TAG_subprogram | |
DW_AT_name ("fopen") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (246) | |
DW_AT_type (0x0000080d "FILE*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000b62: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000b67: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000b6c: NULL | |
0x00000b6d: DW_TAG_subprogram | |
DW_AT_name ("freopen") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (252) | |
DW_AT_type (0x0000080d "FILE*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000b78: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000b7d: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000b82: DW_TAG_formal_parameter | |
DW_AT_type (0x00000836 "restrict FILE*") | |
0x00000b87: NULL | |
0x00000b88: DW_TAG_subprogram | |
DW_AT_name ("remove") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (146) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000b93: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00000b98: NULL | |
0x00000b99: DW_TAG_subprogram | |
DW_AT_name ("rename") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (148) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000ba4: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00000ba9: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00000bae: NULL | |
0x00000baf: DW_TAG_subprogram | |
DW_AT_name ("tmpfile") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (173) | |
DW_AT_type (0x0000080d "FILE*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000bba: DW_TAG_subprogram | |
DW_AT_name ("tmpnam") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (187) | |
DW_AT_type (0x00000840 "char*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000bc5: DW_TAG_formal_parameter | |
DW_AT_type (0x00000840 "char*") | |
0x00000bca: NULL | |
0x00000bcb: DW_TAG_subprogram | |
DW_AT_name ("getchar") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (492) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000bd7: DW_TAG_subprogram | |
DW_AT_linkage_name ("__isoc99_scanf") | |
DW_AT_name ("scanf") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (410) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000be7: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000bec: DW_TAG_unspecified_parameters | |
0x00000bed: NULL | |
0x00000bee: DW_TAG_subprogram | |
DW_AT_linkage_name ("__isoc99_vscanf") | |
DW_AT_name ("vscanf") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (456) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000bfe: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000c03: DW_TAG_formal_parameter | |
DW_AT_type (0x0000091d "__va_list_tag*") | |
0x00000c08: NULL | |
0x00000c09: DW_TAG_subprogram | |
DW_AT_name ("printf") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (332) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000c15: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000c1a: DW_TAG_unspecified_parameters | |
0x00000c1b: NULL | |
0x00000c1c: DW_TAG_subprogram | |
DW_AT_name ("putchar") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (528) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000c28: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x00000c2d: NULL | |
0x00000c2e: DW_TAG_subprogram | |
DW_AT_name ("puts") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (632) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000c3a: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00000c3f: NULL | |
0x00000c40: DW_TAG_subprogram | |
DW_AT_name ("vprintf") | |
DW_AT_decl_file ("/usr/include/stdio.h") | |
DW_AT_decl_line (347) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000c4c: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000c51: DW_TAG_formal_parameter | |
DW_AT_type (0x0000091d "__va_list_tag*") | |
0x00000c56: NULL | |
0x00000c57: DW_TAG_typedef | |
DW_AT_type (0x00000acf "long int") | |
DW_AT_name ("ptrdiff_t") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/lib/clang/11.0.0/include/stddef.h") | |
DW_AT_decl_line (35) | |
0x00000c62: DW_TAG_typedef | |
DW_AT_type (0x00000c6d "structure ") | |
DW_AT_name ("max_align_t") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/lib/clang/11.0.0/include/__stddef_max_align_t.h") | |
DW_AT_decl_line (24) | |
0x00000c6d: DW_TAG_structure_type | |
DW_AT_declaration (true) | |
0x00000c6e: DW_TAG_typedef | |
DW_AT_type (0x00000c79 "structure ") | |
DW_AT_name ("div_t") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (62) | |
0x00000c79: DW_TAG_structure_type | |
DW_AT_declaration (true) | |
0x00000c7a: DW_TAG_typedef | |
DW_AT_type (0x00000c85 "structure ") | |
DW_AT_name ("ldiv_t") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (70) | |
0x00000c85: DW_TAG_structure_type | |
DW_AT_calling_convention (DW_CC_pass_by_value) | |
DW_AT_byte_size (0x10) | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (66) | |
0x00000c8a: DW_TAG_member | |
DW_AT_name ("quot") | |
DW_AT_type (0x00000acf "long int") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (68) | |
DW_AT_data_member_location (0x00) | |
0x00000c96: DW_TAG_member | |
DW_AT_name ("rem") | |
DW_AT_type (0x00000acf "long int") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (69) | |
DW_AT_data_member_location (0x08) | |
0x00000ca2: NULL | |
0x00000ca3: DW_TAG_typedef | |
DW_AT_type (0x00000cae "structure ") | |
DW_AT_name ("lldiv_t") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (80) | |
0x00000cae: DW_TAG_structure_type | |
DW_AT_calling_convention (DW_CC_pass_by_value) | |
DW_AT_byte_size (0x10) | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (76) | |
0x00000cb3: DW_TAG_member | |
DW_AT_name ("quot") | |
DW_AT_type (0x00000ccc "long long int") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (78) | |
DW_AT_data_member_location (0x00) | |
0x00000cbf: DW_TAG_member | |
DW_AT_name ("rem") | |
DW_AT_type (0x00000ccc "long long int") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (79) | |
DW_AT_data_member_location (0x08) | |
0x00000ccb: NULL | |
0x00000ccc: DW_TAG_base_type | |
DW_AT_name ("long long int") | |
DW_AT_encoding (DW_ATE_signed) | |
DW_AT_byte_size (0x08) | |
0x00000cd3: DW_TAG_subprogram | |
DW_AT_name ("atof") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (101) | |
DW_AT_type (0x00000ce4 "double") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000cde: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00000ce3: NULL | |
0x00000ce4: DW_TAG_base_type | |
DW_AT_name ("double") | |
DW_AT_encoding (DW_ATE_float) | |
DW_AT_byte_size (0x08) | |
0x00000ceb: DW_TAG_subprogram | |
DW_AT_name ("atoi") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (104) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000cf6: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00000cfb: NULL | |
0x00000cfc: DW_TAG_subprogram | |
DW_AT_name ("atol") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (107) | |
DW_AT_type (0x00000acf "long int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000d07: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00000d0c: NULL | |
0x00000d0d: DW_TAG_subprogram | |
DW_AT_name ("atoll") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (112) | |
DW_AT_type (0x00000ccc "long long int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000d18: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00000d1d: NULL | |
0x00000d1e: DW_TAG_subprogram | |
DW_AT_name ("strtod") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (117) | |
DW_AT_type (0x00000ce4 "double") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000d29: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000d2e: DW_TAG_formal_parameter | |
DW_AT_type (0x00000d34 "restrict char**") | |
0x00000d33: NULL | |
0x00000d34: DW_TAG_restrict_type | |
DW_AT_type (0x00000d39 "char**") | |
0x00000d39: DW_TAG_pointer_type | |
DW_AT_type (0x00000840 "char*") | |
0x00000d3e: DW_TAG_subprogram | |
DW_AT_name ("strtof") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (123) | |
DW_AT_type (0x00000d54 "float") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000d49: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000d4e: DW_TAG_formal_parameter | |
DW_AT_type (0x00000d34 "restrict char**") | |
0x00000d53: NULL | |
0x00000d54: DW_TAG_base_type | |
DW_AT_name ("float") | |
DW_AT_encoding (DW_ATE_float) | |
DW_AT_byte_size (0x04) | |
0x00000d5b: DW_TAG_subprogram | |
DW_AT_name ("strtold") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (126) | |
DW_AT_type (0x00000d71 "long double") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000d66: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000d6b: DW_TAG_formal_parameter | |
DW_AT_type (0x00000d34 "restrict char**") | |
0x00000d70: NULL | |
0x00000d71: DW_TAG_base_type | |
DW_AT_name ("long double") | |
DW_AT_encoding (DW_ATE_float) | |
DW_AT_byte_size (0x10) | |
0x00000d78: DW_TAG_subprogram | |
DW_AT_name ("strtol") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (176) | |
DW_AT_type (0x00000acf "long int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000d83: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000d88: DW_TAG_formal_parameter | |
DW_AT_type (0x00000d34 "restrict char**") | |
0x00000d8d: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x00000d92: NULL | |
0x00000d93: DW_TAG_subprogram | |
DW_AT_name ("strtoll") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (200) | |
DW_AT_type (0x00000ccc "long long int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000d9e: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000da3: DW_TAG_formal_parameter | |
DW_AT_type (0x00000d34 "restrict char**") | |
0x00000da8: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x00000dad: NULL | |
0x00000dae: DW_TAG_subprogram | |
DW_AT_name ("strtoul") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (180) | |
DW_AT_type (0x000007ee "long unsigned int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000db9: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000dbe: DW_TAG_formal_parameter | |
DW_AT_type (0x00000d34 "restrict char**") | |
0x00000dc3: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x00000dc8: NULL | |
0x00000dc9: DW_TAG_subprogram | |
DW_AT_name ("strtoull") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (205) | |
DW_AT_type (0x00000de4 "long long unsigned int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000dd4: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000dd9: DW_TAG_formal_parameter | |
DW_AT_type (0x00000d34 "restrict char**") | |
0x00000dde: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x00000de3: NULL | |
0x00000de4: DW_TAG_base_type | |
DW_AT_name ("long long unsigned int") | |
DW_AT_encoding (DW_ATE_unsigned) | |
DW_AT_byte_size (0x08) | |
0x00000deb: DW_TAG_subprogram | |
DW_AT_name ("rand") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (453) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000df7: DW_TAG_subprogram | |
DW_AT_name ("srand") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (455) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000dff: DW_TAG_formal_parameter | |
DW_AT_type (0x00000e05 "unsigned int") | |
0x00000e04: NULL | |
0x00000e05: DW_TAG_base_type | |
DW_AT_name ("unsigned int") | |
DW_AT_encoding (DW_ATE_unsigned) | |
DW_AT_byte_size (0x04) | |
0x00000e0c: DW_TAG_subprogram | |
DW_AT_name ("calloc") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (542) | |
DW_AT_type (0x0000076a "*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000e18: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00000e1d: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00000e22: NULL | |
0x00000e23: DW_TAG_subprogram | |
DW_AT_name ("free") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (565) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000e2b: DW_TAG_formal_parameter | |
DW_AT_type (0x0000076a "*") | |
0x00000e30: NULL | |
0x00000e31: DW_TAG_subprogram | |
DW_AT_name ("malloc") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (539) | |
DW_AT_type (0x0000076a "*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000e3d: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00000e42: NULL | |
0x00000e43: DW_TAG_subprogram | |
DW_AT_name ("realloc") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (550) | |
DW_AT_type (0x0000076a "*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000e4f: DW_TAG_formal_parameter | |
DW_AT_type (0x0000076a "*") | |
0x00000e54: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00000e59: NULL | |
0x00000e5a: DW_TAG_subprogram | |
DW_AT_name ("abort") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (591) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_noreturn (true) | |
0x00000e62: DW_TAG_subprogram | |
DW_AT_name ("atexit") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (595) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000e6e: DW_TAG_formal_parameter | |
DW_AT_type (0x00000e74 "void()*") | |
0x00000e73: NULL | |
0x00000e74: DW_TAG_pointer_type | |
DW_AT_type (0x00000e79 "void()") | |
0x00000e79: DW_TAG_subroutine_type | |
0x00000e7a: DW_TAG_subprogram | |
DW_AT_name ("exit") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (617) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_noreturn (true) | |
0x00000e82: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x00000e87: NULL | |
0x00000e88: DW_TAG_subprogram | |
DW_AT_name ("_Exit") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (629) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_noreturn (true) | |
0x00000e90: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x00000e95: NULL | |
0x00000e96: DW_TAG_subprogram | |
DW_AT_name ("getenv") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (634) | |
DW_AT_type (0x00000840 "char*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000ea2: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00000ea7: NULL | |
0x00000ea8: DW_TAG_subprogram | |
DW_AT_name ("system") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (784) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000eb4: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00000eb9: NULL | |
0x00000eba: DW_TAG_subprogram | |
DW_AT_name ("bsearch") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (820) | |
DW_AT_type (0x0000076a "*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000ec6: DW_TAG_formal_parameter | |
DW_AT_type (0x00000a8c "const *") | |
0x00000ecb: DW_TAG_formal_parameter | |
DW_AT_type (0x00000a8c "const *") | |
0x00000ed0: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00000ed5: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00000eda: DW_TAG_formal_parameter | |
DW_AT_type (0x00000ee0 "__compar_fn_t") | |
0x00000edf: NULL | |
0x00000ee0: DW_TAG_typedef | |
DW_AT_type (0x00000eec "int(const *, const *)*") | |
DW_AT_name ("__compar_fn_t") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (808) | |
0x00000eec: DW_TAG_pointer_type | |
DW_AT_type (0x00000ef1 "int(const *, const *)") | |
0x00000ef1: DW_TAG_subroutine_type | |
DW_AT_type (0x00000806 "int") | |
0x00000ef6: DW_TAG_formal_parameter | |
DW_AT_type (0x00000a8c "const *") | |
0x00000efb: DW_TAG_formal_parameter | |
DW_AT_type (0x00000a8c "const *") | |
0x00000f00: NULL | |
0x00000f01: DW_TAG_subprogram | |
DW_AT_name ("qsort") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (830) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000f09: DW_TAG_formal_parameter | |
DW_AT_type (0x0000076a "*") | |
0x00000f0e: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00000f13: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00000f18: DW_TAG_formal_parameter | |
DW_AT_type (0x00000ee0 "__compar_fn_t") | |
0x00000f1d: NULL | |
0x00000f1e: DW_TAG_subprogram | |
DW_AT_linkage_name ("_Z3abse") | |
DW_AT_name ("abs") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/math.h") | |
DW_AT_decl_line (793) | |
DW_AT_type (0x00000d71 "long double") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000f2e: DW_TAG_formal_parameter | |
DW_AT_type (0x00000d71 "long double") | |
0x00000f33: NULL | |
0x00000f34: DW_TAG_subprogram | |
DW_AT_name ("labs") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (841) | |
DW_AT_type (0x00000acf "long int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000f40: DW_TAG_formal_parameter | |
DW_AT_type (0x00000acf "long int") | |
0x00000f45: NULL | |
0x00000f46: DW_TAG_subprogram | |
DW_AT_name ("llabs") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (844) | |
DW_AT_type (0x00000ccc "long long int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000f52: DW_TAG_formal_parameter | |
DW_AT_type (0x00000ccc "long long int") | |
0x00000f57: NULL | |
0x00000f58: DW_TAG_subprogram | |
DW_AT_linkage_name ("_Z3divxx") | |
DW_AT_name ("div") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/math.h") | |
DW_AT_decl_line (812) | |
DW_AT_type (0x00000ca3 "lldiv_t") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000f68: DW_TAG_formal_parameter | |
DW_AT_type (0x00000ccc "long long int") | |
0x00000f6d: DW_TAG_formal_parameter | |
DW_AT_type (0x00000ccc "long long int") | |
0x00000f72: NULL | |
0x00000f73: DW_TAG_subprogram | |
DW_AT_name ("ldiv") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (854) | |
DW_AT_type (0x00000c7a "ldiv_t") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000f7f: DW_TAG_formal_parameter | |
DW_AT_type (0x00000acf "long int") | |
0x00000f84: DW_TAG_formal_parameter | |
DW_AT_type (0x00000acf "long int") | |
0x00000f89: NULL | |
0x00000f8a: DW_TAG_subprogram | |
DW_AT_name ("lldiv") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (858) | |
DW_AT_type (0x00000ca3 "lldiv_t") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000f96: DW_TAG_formal_parameter | |
DW_AT_type (0x00000ccc "long long int") | |
0x00000f9b: DW_TAG_formal_parameter | |
DW_AT_type (0x00000ccc "long long int") | |
0x00000fa0: NULL | |
0x00000fa1: DW_TAG_subprogram | |
DW_AT_name ("mblen") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (922) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000fad: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00000fb2: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00000fb7: NULL | |
0x00000fb8: DW_TAG_subprogram | |
DW_AT_name ("mbtowc") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (925) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000fc4: DW_TAG_formal_parameter | |
DW_AT_type (0x00000fd4 "restrict wchar_t*") | |
0x00000fc9: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00000fce: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00000fd3: NULL | |
0x00000fd4: DW_TAG_restrict_type | |
DW_AT_type (0x00000fd9 "wchar_t*") | |
0x00000fd9: DW_TAG_pointer_type | |
DW_AT_type (0x00000fde "wchar_t") | |
0x00000fde: DW_TAG_base_type | |
DW_AT_name ("wchar_t") | |
DW_AT_encoding (DW_ATE_signed) | |
DW_AT_byte_size (0x04) | |
0x00000fe5: DW_TAG_subprogram | |
DW_AT_name ("wctomb") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (929) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00000ff1: DW_TAG_formal_parameter | |
DW_AT_type (0x00000840 "char*") | |
0x00000ff6: DW_TAG_formal_parameter | |
DW_AT_type (0x00000fde "wchar_t") | |
0x00000ffb: NULL | |
0x00000ffc: DW_TAG_subprogram | |
DW_AT_name ("mbstowcs") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (933) | |
DW_AT_type (0x000007e3 "size_t") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00001008: DW_TAG_formal_parameter | |
DW_AT_type (0x00000fd4 "restrict wchar_t*") | |
0x0000100d: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00001012: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00001017: NULL | |
0x00001018: DW_TAG_subprogram | |
DW_AT_name ("wcstombs") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (936) | |
DW_AT_type (0x000007e3 "size_t") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00001024: DW_TAG_formal_parameter | |
DW_AT_type (0x0000083b "restrict char*") | |
0x00001029: DW_TAG_formal_parameter | |
DW_AT_type (0x00001034 "restrict const wchar_t*") | |
0x0000102e: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00001033: NULL | |
0x00001034: DW_TAG_restrict_type | |
DW_AT_type (0x00001039 "const wchar_t*") | |
0x00001039: DW_TAG_pointer_type | |
DW_AT_type (0x0000103e "const wchar_t") | |
0x0000103e: DW_TAG_const_type | |
DW_AT_type (0x00000fde "wchar_t") | |
0x00001043: DW_TAG_subprogram | |
DW_AT_name ("at_quick_exit") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (600) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x0000104f: DW_TAG_formal_parameter | |
DW_AT_type (0x00000e74 "void()*") | |
0x00001054: NULL | |
0x00001055: DW_TAG_subprogram | |
DW_AT_name ("quick_exit") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (623) | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
DW_AT_noreturn (true) | |
0x0000105d: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x00001062: NULL | |
0x00001063: DW_TAG_subprogram | |
DW_AT_name ("aligned_alloc") | |
DW_AT_decl_file ("/usr/include/stdlib.h") | |
DW_AT_decl_line (586) | |
DW_AT_type (0x0000076a "*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x0000106f: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00001074: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00001079: NULL | |
0x0000107a: DW_TAG_typedef | |
DW_AT_type (0x00001085 "__int8_t") | |
DW_AT_name ("int8_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/stdint-intn.h") | |
DW_AT_decl_line (24) | |
0x00001085: DW_TAG_typedef | |
DW_AT_type (0x00001090 "signed char") | |
DW_AT_name ("__int8_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (37) | |
0x00001090: DW_TAG_base_type | |
DW_AT_name ("signed char") | |
DW_AT_encoding (DW_ATE_signed_char) | |
DW_AT_byte_size (0x01) | |
0x00001097: DW_TAG_typedef | |
DW_AT_type (0x000010a2 "__int16_t") | |
DW_AT_name ("int16_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/stdint-intn.h") | |
DW_AT_decl_line (25) | |
0x000010a2: DW_TAG_typedef | |
DW_AT_type (0x000010ad "short") | |
DW_AT_name ("__int16_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (39) | |
0x000010ad: DW_TAG_base_type | |
DW_AT_name ("short") | |
DW_AT_encoding (DW_ATE_signed) | |
DW_AT_byte_size (0x02) | |
0x000010b4: DW_TAG_typedef | |
DW_AT_type (0x000010bf "__int32_t") | |
DW_AT_name ("int32_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/stdint-intn.h") | |
DW_AT_decl_line (26) | |
0x000010bf: DW_TAG_typedef | |
DW_AT_type (0x00000806 "int") | |
DW_AT_name ("__int32_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (41) | |
0x000010ca: DW_TAG_typedef | |
DW_AT_type (0x000010d5 "__int64_t") | |
DW_AT_name ("int64_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/stdint-intn.h") | |
DW_AT_decl_line (27) | |
0x000010d5: DW_TAG_typedef | |
DW_AT_type (0x00000acf "long int") | |
DW_AT_name ("__int64_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (44) | |
0x000010e0: DW_TAG_typedef | |
DW_AT_type (0x000010eb "__uint8_t") | |
DW_AT_name ("uint8_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h") | |
DW_AT_decl_line (24) | |
0x000010eb: DW_TAG_typedef | |
DW_AT_type (0x000010f6 "unsigned char") | |
DW_AT_name ("__uint8_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (38) | |
0x000010f6: DW_TAG_base_type | |
DW_AT_name ("unsigned char") | |
DW_AT_encoding (DW_ATE_unsigned_char) | |
DW_AT_byte_size (0x01) | |
0x000010fd: DW_TAG_typedef | |
DW_AT_type (0x00001108 "__uint16_t") | |
DW_AT_name ("uint16_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h") | |
DW_AT_decl_line (25) | |
0x00001108: DW_TAG_typedef | |
DW_AT_type (0x00001113 "unsigned short") | |
DW_AT_name ("__uint16_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (40) | |
0x00001113: DW_TAG_base_type | |
DW_AT_name ("unsigned short") | |
DW_AT_encoding (DW_ATE_unsigned) | |
DW_AT_byte_size (0x02) | |
0x0000111a: DW_TAG_typedef | |
DW_AT_type (0x00001125 "__uint32_t") | |
DW_AT_name ("uint32_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h") | |
DW_AT_decl_line (26) | |
0x00001125: DW_TAG_typedef | |
DW_AT_type (0x00000e05 "unsigned int") | |
DW_AT_name ("__uint32_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (42) | |
0x00001130: DW_TAG_typedef | |
DW_AT_type (0x0000113b "__uint64_t") | |
DW_AT_name ("uint64_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h") | |
DW_AT_decl_line (27) | |
0x0000113b: DW_TAG_typedef | |
DW_AT_type (0x000007ee "long unsigned int") | |
DW_AT_name ("__uint64_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (45) | |
0x00001146: DW_TAG_typedef | |
DW_AT_type (0x00001151 "__int_least8_t") | |
DW_AT_name ("int_least8_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (43) | |
0x00001151: DW_TAG_typedef | |
DW_AT_type (0x00001085 "__int8_t") | |
DW_AT_name ("__int_least8_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (52) | |
0x0000115c: DW_TAG_typedef | |
DW_AT_type (0x00001167 "__int_least16_t") | |
DW_AT_name ("int_least16_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (44) | |
0x00001167: DW_TAG_typedef | |
DW_AT_type (0x000010a2 "__int16_t") | |
DW_AT_name ("__int_least16_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (54) | |
0x00001172: DW_TAG_typedef | |
DW_AT_type (0x0000117d "__int_least32_t") | |
DW_AT_name ("int_least32_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (45) | |
0x0000117d: DW_TAG_typedef | |
DW_AT_type (0x000010bf "__int32_t") | |
DW_AT_name ("__int_least32_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (56) | |
0x00001188: DW_TAG_typedef | |
DW_AT_type (0x00001193 "__int_least64_t") | |
DW_AT_name ("int_least64_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (46) | |
0x00001193: DW_TAG_typedef | |
DW_AT_type (0x000010d5 "__int64_t") | |
DW_AT_name ("__int_least64_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (58) | |
0x0000119e: DW_TAG_typedef | |
DW_AT_type (0x000011a9 "__uint_least8_t") | |
DW_AT_name ("uint_least8_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (49) | |
0x000011a9: DW_TAG_typedef | |
DW_AT_type (0x000010eb "__uint8_t") | |
DW_AT_name ("__uint_least8_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (53) | |
0x000011b4: DW_TAG_typedef | |
DW_AT_type (0x000011bf "__uint_least16_t") | |
DW_AT_name ("uint_least16_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (50) | |
0x000011bf: DW_TAG_typedef | |
DW_AT_type (0x00001108 "__uint16_t") | |
DW_AT_name ("__uint_least16_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (55) | |
0x000011ca: DW_TAG_typedef | |
DW_AT_type (0x000011d5 "__uint_least32_t") | |
DW_AT_name ("uint_least32_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (51) | |
0x000011d5: DW_TAG_typedef | |
DW_AT_type (0x00001125 "__uint32_t") | |
DW_AT_name ("__uint_least32_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (57) | |
0x000011e0: DW_TAG_typedef | |
DW_AT_type (0x000011eb "__uint_least64_t") | |
DW_AT_name ("uint_least64_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (52) | |
0x000011eb: DW_TAG_typedef | |
DW_AT_type (0x0000113b "__uint64_t") | |
DW_AT_name ("__uint_least64_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (59) | |
0x000011f6: DW_TAG_typedef | |
DW_AT_type (0x00001090 "signed char") | |
DW_AT_name ("int_fast8_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (58) | |
0x00001201: DW_TAG_typedef | |
DW_AT_type (0x00000acf "long int") | |
DW_AT_name ("int_fast16_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (60) | |
0x0000120c: DW_TAG_typedef | |
DW_AT_type (0x00000acf "long int") | |
DW_AT_name ("int_fast32_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (61) | |
0x00001217: DW_TAG_typedef | |
DW_AT_type (0x00000acf "long int") | |
DW_AT_name ("int_fast64_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (62) | |
0x00001222: DW_TAG_typedef | |
DW_AT_type (0x000010f6 "unsigned char") | |
DW_AT_name ("uint_fast8_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (71) | |
0x0000122d: DW_TAG_typedef | |
DW_AT_type (0x000007ee "long unsigned int") | |
DW_AT_name ("uint_fast16_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (73) | |
0x00001238: DW_TAG_typedef | |
DW_AT_type (0x000007ee "long unsigned int") | |
DW_AT_name ("uint_fast32_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (74) | |
0x00001243: DW_TAG_typedef | |
DW_AT_type (0x000007ee "long unsigned int") | |
DW_AT_name ("uint_fast64_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (75) | |
0x0000124e: DW_TAG_typedef | |
DW_AT_type (0x00000acf "long int") | |
DW_AT_name ("intptr_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (87) | |
0x00001259: DW_TAG_typedef | |
DW_AT_type (0x000007ee "long unsigned int") | |
DW_AT_name ("uintptr_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (90) | |
0x00001264: DW_TAG_typedef | |
DW_AT_type (0x0000126f "__intmax_t") | |
DW_AT_name ("intmax_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (101) | |
0x0000126f: DW_TAG_typedef | |
DW_AT_type (0x00000acf "long int") | |
DW_AT_name ("__intmax_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (72) | |
0x0000127a: DW_TAG_typedef | |
DW_AT_type (0x00001285 "__uintmax_t") | |
DW_AT_name ("uintmax_t") | |
DW_AT_decl_file ("/usr/include/stdint.h") | |
DW_AT_decl_line (102) | |
0x00001285: DW_TAG_typedef | |
DW_AT_type (0x000007ee "long unsigned int") | |
DW_AT_name ("__uintmax_t") | |
DW_AT_decl_file ("/usr/include/x86_64-linux-gnu/bits/types.h") | |
DW_AT_decl_line (73) | |
0x00001290: DW_TAG_subprogram | |
DW_AT_name ("memcpy") | |
DW_AT_decl_file ("/usr/include/string.h") | |
DW_AT_decl_line (42) | |
DW_AT_type (0x0000076a "*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x0000129b: DW_TAG_formal_parameter | |
DW_AT_type (0x00000a61 "restrict *") | |
0x000012a0: DW_TAG_formal_parameter | |
DW_AT_type (0x00000a87 "restrict const *") | |
0x000012a5: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x000012aa: NULL | |
0x000012ab: DW_TAG_subprogram | |
DW_AT_name ("memmove") | |
DW_AT_decl_file ("/usr/include/string.h") | |
DW_AT_decl_line (46) | |
DW_AT_type (0x0000076a "*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000012b6: DW_TAG_formal_parameter | |
DW_AT_type (0x0000076a "*") | |
0x000012bb: DW_TAG_formal_parameter | |
DW_AT_type (0x00000a8c "const *") | |
0x000012c0: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x000012c5: NULL | |
0x000012c6: DW_TAG_subprogram | |
DW_AT_name ("strcpy") | |
DW_AT_decl_file ("/usr/include/string.h") | |
DW_AT_decl_line (121) | |
DW_AT_type (0x00000840 "char*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000012d1: DW_TAG_formal_parameter | |
DW_AT_type (0x0000083b "restrict char*") | |
0x000012d6: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x000012db: NULL | |
0x000012dc: DW_TAG_subprogram | |
DW_AT_name ("strncpy") | |
DW_AT_decl_file ("/usr/include/string.h") | |
DW_AT_decl_line (124) | |
DW_AT_type (0x00000840 "char*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000012e7: DW_TAG_formal_parameter | |
DW_AT_type (0x0000083b "restrict char*") | |
0x000012ec: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x000012f1: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x000012f6: NULL | |
0x000012f7: DW_TAG_subprogram | |
DW_AT_name ("strcat") | |
DW_AT_decl_file ("/usr/include/string.h") | |
DW_AT_decl_line (129) | |
DW_AT_type (0x00000840 "char*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00001302: DW_TAG_formal_parameter | |
DW_AT_type (0x0000083b "restrict char*") | |
0x00001307: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x0000130c: NULL | |
0x0000130d: DW_TAG_subprogram | |
DW_AT_name ("strncat") | |
DW_AT_decl_file ("/usr/include/string.h") | |
DW_AT_decl_line (132) | |
DW_AT_type (0x00000840 "char*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00001318: DW_TAG_formal_parameter | |
DW_AT_type (0x0000083b "restrict char*") | |
0x0000131d: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00001322: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00001327: NULL | |
0x00001328: DW_TAG_subprogram | |
DW_AT_name ("memcmp") | |
DW_AT_decl_file ("/usr/include/string.h") | |
DW_AT_decl_line (63) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00001333: DW_TAG_formal_parameter | |
DW_AT_type (0x00000a8c "const *") | |
0x00001338: DW_TAG_formal_parameter | |
DW_AT_type (0x00000a8c "const *") | |
0x0000133d: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00001342: NULL | |
0x00001343: DW_TAG_subprogram | |
DW_AT_name ("strcmp") | |
DW_AT_decl_file ("/usr/include/string.h") | |
DW_AT_decl_line (136) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x0000134e: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00001353: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00001358: NULL | |
0x00001359: DW_TAG_subprogram | |
DW_AT_name ("strncmp") | |
DW_AT_decl_file ("/usr/include/string.h") | |
DW_AT_decl_line (139) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00001364: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00001369: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x0000136e: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x00001373: NULL | |
0x00001374: DW_TAG_subprogram | |
DW_AT_name ("strcoll") | |
DW_AT_decl_file ("/usr/include/string.h") | |
DW_AT_decl_line (143) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x0000137f: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00001384: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00001389: NULL | |
0x0000138a: DW_TAG_subprogram | |
DW_AT_name ("strxfrm") | |
DW_AT_decl_file ("/usr/include/string.h") | |
DW_AT_decl_line (146) | |
DW_AT_type (0x000007e3 "size_t") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00001395: DW_TAG_formal_parameter | |
DW_AT_type (0x0000083b "restrict char*") | |
0x0000139a: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x0000139f: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x000013a4: NULL | |
0x000013a5: DW_TAG_subprogram | |
DW_AT_linkage_name ("_Z6memchrUa9enable_ifIXLb1EEEPvim") | |
DW_AT_name ("memchr") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/string.h") | |
DW_AT_decl_line (98) | |
DW_AT_type (0x0000076a "*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000013b4: DW_TAG_formal_parameter | |
DW_AT_type (0x0000076a "*") | |
0x000013b9: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x000013be: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x000013c3: NULL | |
0x000013c4: DW_TAG_subprogram | |
DW_AT_linkage_name ("_Z6strchrUa9enable_ifIXLb1EEEPci") | |
DW_AT_name ("strchr") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/string.h") | |
DW_AT_decl_line (77) | |
DW_AT_type (0x00000840 "char*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000013d3: DW_TAG_formal_parameter | |
DW_AT_type (0x00000840 "char*") | |
0x000013d8: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x000013dd: NULL | |
0x000013de: DW_TAG_subprogram | |
DW_AT_name ("strcspn") | |
DW_AT_decl_file ("/usr/include/string.h") | |
DW_AT_decl_line (272) | |
DW_AT_type (0x000007e3 "size_t") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000013ea: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x000013ef: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x000013f4: NULL | |
0x000013f5: DW_TAG_subprogram | |
DW_AT_linkage_name ("_Z7strpbrkUa9enable_ifIXLb1EEEPcPKc") | |
DW_AT_name ("strpbrk") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/string.h") | |
DW_AT_decl_line (84) | |
DW_AT_type (0x00000840 "char*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00001404: DW_TAG_formal_parameter | |
DW_AT_type (0x00000840 "char*") | |
0x00001409: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x0000140e: NULL | |
0x0000140f: DW_TAG_subprogram | |
DW_AT_linkage_name ("_Z7strrchrUa9enable_ifIXLb1EEEPci") | |
DW_AT_name ("strrchr") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/string.h") | |
DW_AT_decl_line (91) | |
DW_AT_type (0x00000840 "char*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x0000141e: DW_TAG_formal_parameter | |
DW_AT_type (0x00000840 "char*") | |
0x00001423: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x00001428: NULL | |
0x00001429: DW_TAG_subprogram | |
DW_AT_name ("strspn") | |
DW_AT_decl_file ("/usr/include/string.h") | |
DW_AT_decl_line (276) | |
DW_AT_type (0x000007e3 "size_t") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00001435: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x0000143a: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x0000143f: NULL | |
0x00001440: DW_TAG_subprogram | |
DW_AT_linkage_name ("_Z6strstrUa9enable_ifIXLb1EEEPcPKc") | |
DW_AT_name ("strstr") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/string.h") | |
DW_AT_decl_line (105) | |
DW_AT_type (0x00000840 "char*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x0000144f: DW_TAG_formal_parameter | |
DW_AT_type (0x00000840 "char*") | |
0x00001454: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x00001459: NULL | |
0x0000145a: DW_TAG_subprogram | |
DW_AT_name ("strtok") | |
DW_AT_decl_file ("/usr/include/string.h") | |
DW_AT_decl_line (335) | |
DW_AT_type (0x00000840 "char*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00001466: DW_TAG_formal_parameter | |
DW_AT_type (0x0000083b "restrict char*") | |
0x0000146b: DW_TAG_formal_parameter | |
DW_AT_type (0x00000885 "restrict const char*") | |
0x00001470: NULL | |
0x00001471: DW_TAG_subprogram | |
DW_AT_name ("memset") | |
DW_AT_decl_file ("/usr/include/string.h") | |
DW_AT_decl_line (60) | |
DW_AT_type (0x0000076a "*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x0000147c: DW_TAG_formal_parameter | |
DW_AT_type (0x0000076a "*") | |
0x00001481: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x00001486: DW_TAG_formal_parameter | |
DW_AT_type (0x000007e3 "size_t") | |
0x0000148b: NULL | |
0x0000148c: DW_TAG_subprogram | |
DW_AT_name ("strerror") | |
DW_AT_decl_file ("/usr/include/string.h") | |
DW_AT_decl_line (396) | |
DW_AT_type (0x00000840 "char*") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x00001498: DW_TAG_formal_parameter | |
DW_AT_type (0x00000806 "int") | |
0x0000149d: NULL | |
0x0000149e: DW_TAG_subprogram | |
DW_AT_name ("strlen") | |
DW_AT_decl_file ("/usr/include/string.h") | |
DW_AT_decl_line (384) | |
DW_AT_type (0x000007e3 "size_t") | |
DW_AT_declaration (true) | |
DW_AT_external (true) | |
0x000014aa: DW_TAG_formal_parameter | |
DW_AT_type (0x0000088a "const char*") | |
0x000014af: NULL | |
0x000014b0: DW_TAG_imported_module | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (4) | |
DW_AT_import (0x000000c2) | |
0x000014b7: DW_TAG_subprogram | |
DW_AT_low_pc (0x0000000000401150) | |
DW_AT_high_pc (0x00000000004016bb) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_linkage_name ("_Z3foov") | |
DW_AT_name ("foo") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (23) | |
DW_AT_type (0x0000002a "coro") | |
DW_AT_external (true) | |
0x000014d4: DW_TAG_variable | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_name ("__coro_gro") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (23) | |
DW_AT_type (0x0000002a "coro") | |
0x000014e2: DW_TAG_variable | |
DW_AT_location (DW_OP_fbreg -16) | |
DW_AT_name ("__promise") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (23) | |
DW_AT_type (0x0000031c "promise_type") | |
0x000014f0: DW_TAG_lexical_block | |
DW_AT_low_pc (0x0000000000401329) | |
DW_AT_high_pc (0x0000000000401562) | |
0x000014fd: DW_TAG_variable | |
DW_AT_location (0x00000000: | |
[0x0000000000401322, 0x0000000000401333): DW_OP_consts +0, DW_OP_stack_value | |
[0x0000000000401333, 0x000000000040133c): DW_OP_reg1 RDX | |
[0x000000000040133c, 0x000000000040134d): DW_OP_reg4 RSI | |
[0x0000000000401439, 0x0000000000401442): DW_OP_reg1 RDX | |
[0x000000000040144b, 0x000000000040145f): DW_OP_reg4 RSI | |
[0x000000000040152f, 0x0000000000401538): DW_OP_reg2 RCX | |
[0x0000000000401544, 0x0000000000401555): DW_OP_reg1 RDX) | |
DW_AT_name ("i") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (24) | |
DW_AT_type (0x00000806 "int") | |
0x0000150c: DW_TAG_variable | |
DW_AT_location (0x000000a7: | |
[0x0000000000401428, 0x0000000000401442): DW_OP_consts +0, DW_OP_stack_value | |
[0x0000000000401442, 0x000000000040145f): DW_OP_reg1 RDX | |
[0x0000000000401538, 0x0000000000401541): DW_OP_reg2 RCX | |
[0x0000000000401541, 0x0000000000401555): DW_OP_reg4 RSI) | |
DW_AT_name ("j") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (32) | |
DW_AT_type (0x00000806 "int") | |
0x0000151b: NULL | |
0x0000151c: NULL | |
0x0000151d: DW_TAG_subprogram | |
DW_AT_low_pc (0x0000000000402300) | |
DW_AT_high_pc (0x0000000000402338) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_object_pointer (0x00001534) | |
DW_AT_specification (0x00000048 "_ZN4coro12promise_type17get_return_objectEv") | |
0x00001534: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -16) | |
DW_AT_name ("this") | |
DW_AT_type (0x000018c5 "promise_type*") | |
DW_AT_artificial (true) | |
0x00001540: DW_TAG_variable | |
DW_AT_location (DW_OP_fbreg -24) | |
DW_AT_name ("handle") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (9) | |
DW_AT_type (0x000000cc "coroutine_handle<coro::promise_type>") | |
0x0000154e: NULL | |
0x0000154f: DW_TAG_subprogram | |
DW_AT_low_pc (0x0000000000402340) | |
DW_AT_high_pc (0x000000000040234a) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_object_pointer (0x00001566) | |
DW_AT_specification (0x0000005d "_ZN4coro12promise_type15initial_suspendEv") | |
0x00001566: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_name ("this") | |
DW_AT_type (0x000018c5 "promise_type*") | |
DW_AT_artificial (true) | |
0x00001572: NULL | |
0x00001573: DW_TAG_subprogram | |
DW_AT_low_pc (0x0000000000402350) | |
DW_AT_high_pc (0x0000000000402361) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_object_pointer (0x0000158a) | |
DW_AT_specification (0x0000027f "_ZNKSt12experimental13coroutines_v113suspend_never11await_readyEv") | |
0x0000158a: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_name ("this") | |
DW_AT_type (0x000018ca "const suspend_never*") | |
DW_AT_artificial (true) | |
0x00001596: NULL | |
0x00001597: DW_TAG_subprogram | |
DW_AT_low_pc (0x0000000000402370) | |
DW_AT_high_pc (0x000000000040237e) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_object_pointer (0x000015ae) | |
DW_AT_specification (0x00000295 "_ZNKSt12experimental13coroutines_v113suspend_never13await_suspendENS0_16coroutine_handleIvEE") | |
0x000015ae: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -16) | |
DW_AT_name ("this") | |
DW_AT_type (0x000018ca "const suspend_never*") | |
DW_AT_artificial (true) | |
0x000015ba: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (304) | |
DW_AT_type (0x00000165 "coroutine_handle<void>") | |
0x000015c5: NULL | |
0x000015c6: DW_TAG_subprogram | |
DW_AT_low_pc (0x0000000000402380) | |
DW_AT_high_pc (0x00000000004023a7) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_specification (0x0000010d "_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv") | |
0x000015d9: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -16) | |
DW_AT_name ("__addr") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (220) | |
DW_AT_type (0x0000076a "*") | |
0x000015e7: DW_TAG_variable | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_name ("__tmp") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (221) | |
DW_AT_type (0x000000cc "coroutine_handle<coro::promise_type>") | |
0x000015f5: NULL | |
0x000015f6: DW_TAG_subprogram | |
DW_AT_low_pc (0x00000000004023b0) | |
DW_AT_high_pc (0x00000000004023ba) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_object_pointer (0x0000160d) | |
DW_AT_specification (0x000002ac "_ZNKSt12experimental13coroutines_v113suspend_never12await_resumeEv") | |
0x0000160d: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_name ("this") | |
DW_AT_type (0x000018ca "const suspend_never*") | |
DW_AT_artificial (true) | |
0x00001619: NULL | |
0x0000161a: DW_TAG_pointer_type | |
DW_AT_type (0x0000161f "const suspend_always") | |
0x0000161f: DW_TAG_const_type | |
DW_AT_type (0x000002bf "suspend_always") | |
0x00001624: DW_TAG_subprogram | |
DW_AT_low_pc (0x00000000004023c0) | |
DW_AT_high_pc (0x00000000004023d1) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_object_pointer (0x0000163b) | |
DW_AT_specification (0x000002c9 "_ZNKSt12experimental13coroutines_v114suspend_always11await_readyEv") | |
0x0000163b: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_name ("this") | |
DW_AT_type (0x000018cf "const suspend_always*") | |
DW_AT_artificial (true) | |
0x00001647: NULL | |
0x00001648: DW_TAG_subprogram | |
DW_AT_low_pc (0x00000000004023e0) | |
DW_AT_high_pc (0x00000000004023ee) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_object_pointer (0x0000165f) | |
DW_AT_specification (0x000002df "_ZNKSt12experimental13coroutines_v114suspend_always13await_suspendENS0_16coroutine_handleIvEE") | |
0x0000165f: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -16) | |
DW_AT_name ("this") | |
DW_AT_type (0x000018cf "const suspend_always*") | |
DW_AT_artificial (true) | |
0x0000166b: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (313) | |
DW_AT_type (0x00000165 "coroutine_handle<void>") | |
0x00001676: NULL | |
0x00001677: DW_TAG_subprogram | |
DW_AT_low_pc (0x00000000004023f0) | |
DW_AT_high_pc (0x00000000004023fa) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_object_pointer (0x0000168e) | |
DW_AT_specification (0x000002f6 "_ZNKSt12experimental13coroutines_v114suspend_always12await_resumeEv") | |
0x0000168e: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_name ("this") | |
DW_AT_type (0x000018cf "const suspend_always*") | |
DW_AT_artificial (true) | |
0x0000169a: NULL | |
0x0000169b: DW_TAG_subprogram | |
DW_AT_low_pc (0x0000000000402400) | |
DW_AT_high_pc (0x000000000040240a) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_object_pointer (0x000016b2) | |
DW_AT_specification (0x00000087 "_ZN4coro12promise_type11return_voidEv") | |
0x000016b2: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_name ("this") | |
DW_AT_type (0x000018c5 "promise_type*") | |
DW_AT_artificial (true) | |
0x000016be: NULL | |
0x000016bf: DW_TAG_subprogram | |
DW_AT_low_pc (0x0000000000402410) | |
DW_AT_high_pc (0x000000000040241a) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_object_pointer (0x000016d6) | |
DW_AT_specification (0x00000072 "_ZN4coro12promise_type13final_suspendEv") | |
0x000016d6: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_name ("this") | |
DW_AT_type (0x000018c5 "promise_type*") | |
DW_AT_artificial (true) | |
0x000016e2: NULL | |
0x000016e3: DW_TAG_subprogram | |
DW_AT_low_pc (0x00000000004016c0) | |
DW_AT_high_pc (0x00000000004016f1) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_name ("main") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (53) | |
DW_AT_type (0x00000806 "int") | |
DW_AT_external (true) | |
0x000016fc: DW_TAG_variable | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_name ("c") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (54) | |
DW_AT_type (0x0000002a "coro") | |
0x0000170a: NULL | |
0x0000170b: DW_TAG_subprogram | |
DW_AT_low_pc (0x0000000000402420) | |
DW_AT_high_pc (0x000000000040243e) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_object_pointer (0x00001722) | |
DW_AT_specification (0x000001f4 "_ZNSt12experimental13coroutines_v116coroutine_handleIvE6resumeEv") | |
0x00001722: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_name ("this") | |
DW_AT_type (0x000018d4 "coroutine_handle<void>*") | |
DW_AT_artificial (true) | |
0x0000172e: NULL | |
0x0000172f: DW_TAG_subprogram | |
DW_AT_low_pc (0x0000000000402440) | |
DW_AT_high_pc (0x0000000000402472) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_specification (0x00000139 "_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_promiseERS3_") | |
0x00001742: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -16) | |
DW_AT_name ("__promise") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (250) | |
DW_AT_type (0x00000795 "promise_type&") | |
0x00001750: DW_TAG_variable | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_name ("__tmp") | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (252) | |
DW_AT_type (0x000000cc "coroutine_handle<coro::promise_type>") | |
0x0000175e: NULL | |
0x0000175f: DW_TAG_subprogram | |
DW_AT_low_pc (0x0000000000402480) | |
DW_AT_high_pc (0x0000000000402499) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_object_pointer (0x0000177a) | |
DW_AT_linkage_name ("_ZN4coroC2ENSt12experimental13coroutines_v116coroutine_handleINS_12promise_typeEEE") | |
DW_AT_specification (0x000000aa "coro") | |
0x0000177a: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -16) | |
DW_AT_name ("this") | |
DW_AT_type (0x000018d9 "coro*") | |
DW_AT_artificial (true) | |
0x00001786: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_name ("handle") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (19) | |
DW_AT_type (0x000000cc "coroutine_handle<coro::promise_type>") | |
0x00001794: NULL | |
0x00001795: DW_TAG_subprogram | |
DW_AT_low_pc (0x00000000004024a0) | |
DW_AT_high_pc (0x00000000004024be) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_object_pointer (0x000017b2) | |
DW_AT_decl_file ("/home/modocache/Source/llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine") | |
DW_AT_decl_line (196) | |
DW_AT_linkage_name ("_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEEC2Ev") | |
DW_AT_specification (0x00000158 "coroutine_handle") | |
0x000017b2: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_name ("this") | |
DW_AT_type (0x000018de "coroutine_handle<coro::promise_type>*") | |
DW_AT_artificial (true) | |
0x000017be: NULL | |
0x000017bf: DW_TAG_subprogram | |
DW_AT_low_pc (0x00000000004024d0) | |
DW_AT_high_pc (0x00000000004024e5) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_object_pointer (0x000017da) | |
DW_AT_linkage_name ("_ZNSt12experimental13coroutines_v116coroutine_handleIvEC2Ev") | |
DW_AT_specification (0x0000017a "coroutine_handle") | |
0x000017da: DW_TAG_formal_parameter | |
DW_AT_location (DW_OP_fbreg -8) | |
DW_AT_name ("this") | |
DW_AT_type (0x000018d4 "coroutine_handle<void>*") | |
DW_AT_artificial (true) | |
0x000017e6: NULL | |
0x000017e7: DW_TAG_subprogram | |
DW_AT_low_pc (0x0000000000401710) | |
DW_AT_high_pc (0x0000000000401aea) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_linkage_name ("_Z3foov") | |
DW_AT_name ("foo") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (23) | |
DW_AT_type (0x0000002a "coro") | |
DW_AT_external (true) | |
0x00001804: DW_TAG_lexical_block | |
DW_AT_low_pc (0x000000000040179e) | |
DW_AT_high_pc (0x00000000004019a1) | |
0x00001811: DW_TAG_variable | |
DW_AT_location (0x00000115: | |
[0x000000000040179a, 0x00000000004017a8): DW_OP_consts +0, DW_OP_stack_value | |
[0x00000000004017a8, 0x00000000004017b1): DW_OP_reg1 RDX | |
[0x00000000004017b1, 0x00000000004017c2): DW_OP_reg4 RSI | |
[0x0000000000401893, 0x000000000040189c): DW_OP_reg1 RDX | |
[0x00000000004018a5, 0x00000000004018b9): DW_OP_reg4 RSI | |
[0x0000000000401974, 0x000000000040197d): DW_OP_reg2 RCX | |
[0x0000000000401989, 0x000000000040199a): DW_OP_reg1 RDX) | |
DW_AT_name ("i") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (24) | |
DW_AT_type (0x00000806 "int") | |
0x00001820: DW_TAG_variable | |
DW_AT_location (0x000001bc: | |
[0x0000000000401885, 0x000000000040189c): DW_OP_consts +0, DW_OP_stack_value | |
[0x000000000040189c, 0x00000000004018b9): DW_OP_reg1 RDX | |
[0x000000000040197d, 0x0000000000401986): DW_OP_reg2 RCX | |
[0x0000000000401986, 0x000000000040199a): DW_OP_reg4 RSI) | |
DW_AT_name ("j") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (32) | |
DW_AT_type (0x00000806 "int") | |
0x0000182f: NULL | |
0x00001830: NULL | |
0x00001831: DW_TAG_subprogram | |
DW_AT_low_pc (0x0000000000401af0) | |
DW_AT_high_pc (0x0000000000401ef1) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_linkage_name ("_Z3foov") | |
DW_AT_name ("foo") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (23) | |
DW_AT_type (0x0000002a "coro") | |
DW_AT_external (true) | |
0x0000184e: DW_TAG_lexical_block | |
DW_AT_low_pc (0x0000000000401b7e) | |
DW_AT_high_pc (0x0000000000401d81) | |
0x0000185b: DW_TAG_variable | |
DW_AT_location (0x0000022a: | |
[0x0000000000401b7a, 0x0000000000401b88): DW_OP_consts +0, DW_OP_stack_value | |
[0x0000000000401b88, 0x0000000000401b91): DW_OP_reg1 RDX | |
[0x0000000000401b91, 0x0000000000401ba2): DW_OP_reg4 RSI | |
[0x0000000000401c73, 0x0000000000401c7c): DW_OP_reg1 RDX | |
[0x0000000000401c85, 0x0000000000401c99): DW_OP_reg4 RSI | |
[0x0000000000401d54, 0x0000000000401d5d): DW_OP_reg2 RCX | |
[0x0000000000401d69, 0x0000000000401d7a): DW_OP_reg1 RDX) | |
DW_AT_name ("i") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (24) | |
DW_AT_type (0x00000806 "int") | |
0x0000186a: DW_TAG_variable | |
DW_AT_location (0x000002d1: | |
[0x0000000000401c65, 0x0000000000401c7c): DW_OP_consts +0, DW_OP_stack_value | |
[0x0000000000401c7c, 0x0000000000401c99): DW_OP_reg1 RDX | |
[0x0000000000401d5d, 0x0000000000401d66): DW_OP_reg2 RCX | |
[0x0000000000401d66, 0x0000000000401d7a): DW_OP_reg4 RSI) | |
DW_AT_name ("j") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (32) | |
DW_AT_type (0x00000806 "int") | |
0x00001879: NULL | |
0x0000187a: NULL | |
0x0000187b: DW_TAG_subprogram | |
DW_AT_low_pc (0x0000000000401f00) | |
DW_AT_high_pc (0x00000000004022f8) | |
DW_AT_frame_base (DW_OP_reg6 RBP) | |
DW_AT_linkage_name ("_Z3foov") | |
DW_AT_name ("foo") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (23) | |
DW_AT_type (0x0000002a "coro") | |
DW_AT_external (true) | |
0x00001898: DW_TAG_lexical_block | |
DW_AT_low_pc (0x0000000000401f8e) | |
DW_AT_high_pc (0x0000000000402191) | |
0x000018a5: DW_TAG_variable | |
DW_AT_location (0x0000033f: | |
[0x0000000000401f8a, 0x0000000000401f98): DW_OP_consts +0, DW_OP_stack_value | |
[0x0000000000401f98, 0x0000000000401fa1): DW_OP_reg1 RDX | |
[0x0000000000401fa1, 0x0000000000401fb2): DW_OP_reg4 RSI | |
[0x0000000000402083, 0x000000000040208c): DW_OP_reg1 RDX | |
[0x0000000000402095, 0x00000000004020a9): DW_OP_reg4 RSI | |
[0x0000000000402164, 0x000000000040216d): DW_OP_reg2 RCX | |
[0x0000000000402179, 0x000000000040218a): DW_OP_reg1 RDX) | |
DW_AT_name ("i") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (24) | |
DW_AT_type (0x00000806 "int") | |
0x000018b4: DW_TAG_variable | |
DW_AT_location (0x000003e6: | |
[0x0000000000402075, 0x000000000040208c): DW_OP_consts +0, DW_OP_stack_value | |
[0x000000000040208c, 0x00000000004020a9): DW_OP_reg1 RDX | |
[0x000000000040216d, 0x0000000000402176): DW_OP_reg2 RCX | |
[0x0000000000402176, 0x000000000040218a): DW_OP_reg4 RSI) | |
DW_AT_name ("j") | |
DW_AT_decl_file ("/home/modocache/Source/tmp/corodebug/test.cpp") | |
DW_AT_decl_line (32) | |
DW_AT_type (0x00000806 "int") | |
0x000018c3: NULL | |
0x000018c4: NULL | |
0x000018c5: DW_TAG_pointer_type | |
DW_AT_type (0x0000003f "promise_type") | |
0x000018ca: DW_TAG_pointer_type | |
DW_AT_type (0x000007a4 "const suspend_never") | |
0x000018cf: DW_TAG_pointer_type | |
DW_AT_type (0x0000161f "const suspend_always") | |
0x000018d4: DW_TAG_pointer_type | |
DW_AT_type (0x00000165 "coroutine_handle<void>") | |
0x000018d9: DW_TAG_pointer_type | |
DW_AT_type (0x0000002a "coro") | |
0x000018de: DW_TAG_pointer_type | |
DW_AT_type (0x000000cc "coroutine_handle<coro::promise_type>") | |
0x000018e3: NULL |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
; ModuleID = '/home/modocache/Source/tmp/corodebug/test.cpp' | |
source_filename = "/home/modocache/Source/tmp/corodebug/test.cpp" | |
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" | |
target triple = "x86_64-unknown-linux-gnu" | |
%"struct.coro::promise_type" = type { i8 } | |
%_Z3foov.Frame = type { void (%_Z3foov.Frame*)*, void (%_Z3foov.Frame*)*, %"struct.coro::promise_type", i2, %"struct.std::experimental::coroutines_v1::suspend_never", %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle", i32, %"struct.std::experimental::coroutines_v1::suspend_always", %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle", i32, %"struct.std::experimental::coroutines_v1::suspend_always", %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle", %"struct.std::experimental::coroutines_v1::suspend_never", %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle" } | |
%"struct.std::experimental::coroutines_v1::suspend_always" = type { i8 } | |
%"struct.std::experimental::coroutines_v1::suspend_never" = type { i8 } | |
%"class.std::experimental::coroutines_v1::coroutine_handle.0" = type { i8* } | |
%"class.std::experimental::coroutines_v1::coroutine_handle" = type { %"class.std::experimental::coroutines_v1::coroutine_handle.0" } | |
%struct.coro = type { %"class.std::experimental::coroutines_v1::coroutine_handle" } | |
$_ZN4coro12promise_type17get_return_objectEv = comdat any | |
$_ZN4coro12promise_type15initial_suspendEv = comdat any | |
$_ZNKSt12experimental13coroutines_v113suspend_never11await_readyEv = comdat any | |
$_ZNKSt12experimental13coroutines_v113suspend_never13await_suspendENS0_16coroutine_handleIvEE = comdat any | |
$_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv = comdat any | |
$_ZNKSt12experimental13coroutines_v113suspend_never12await_resumeEv = comdat any | |
$_ZNKSt12experimental13coroutines_v114suspend_always11await_readyEv = comdat any | |
$_ZNKSt12experimental13coroutines_v114suspend_always13await_suspendENS0_16coroutine_handleIvEE = comdat any | |
$_ZNKSt12experimental13coroutines_v114suspend_always12await_resumeEv = comdat any | |
$_ZN4coro12promise_type11return_voidEv = comdat any | |
$_ZN4coro12promise_type13final_suspendEv = comdat any | |
$_ZNSt12experimental13coroutines_v116coroutine_handleIvE6resumeEv = comdat any | |
$_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_promiseERS3_ = comdat any | |
$_ZN4coroC2ENSt12experimental13coroutines_v116coroutine_handleINS_12promise_typeEEE = comdat any | |
$_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEEC2Ev = comdat any | |
$_ZNSt3__19addressofIN4coro12promise_typeEEEPT_RS3_ = comdat any | |
$_ZNSt12experimental13coroutines_v116coroutine_handleIvEC2Ev = comdat any | |
@__const._Z3foov.__promise = private unnamed_addr constant %"struct.coro::promise_type" undef, align 1 | |
@.str = private unnamed_addr constant [4 x i8] c"%d\0A\00", align 1 | |
@.str.1 = private unnamed_addr constant [8 x i8] c"%d, %d\0A\00", align 1 | |
@_Z3foov.resumers = private constant [3 x void (%_Z3foov.Frame*)*] [void (%_Z3foov.Frame*)* @_Z3foov.resume, void (%_Z3foov.Frame*)* @_Z3foov.destroy, void (%_Z3foov.Frame*)* @_Z3foov.cleanup] | |
; Function Attrs: noinline nounwind optnone uwtable | |
define dso_local i8* @_Z3foov() #0 !dbg !648 { | |
entry: | |
%retval = alloca %struct.coro, align 8 | |
%gro.active = alloca i1, align 1 | |
%0 = alloca %"struct.coro::promise_type", align 1 | |
%1 = alloca %"struct.std::experimental::coroutines_v1::suspend_never", align 1 | |
%undef.agg.tmp = alloca %"struct.std::experimental::coroutines_v1::suspend_never", align 1 | |
%agg.tmp = alloca %"class.std::experimental::coroutines_v1::coroutine_handle.0", align 8 | |
%ref.tmp5 = alloca %"class.std::experimental::coroutines_v1::coroutine_handle", align 8 | |
%i = alloca i32, align 4 | |
%ref.tmp11 = alloca %"struct.std::experimental::coroutines_v1::suspend_always", align 1 | |
%agg.tmp13 = alloca %"class.std::experimental::coroutines_v1::coroutine_handle.0", align 8 | |
%ref.tmp14 = alloca %"class.std::experimental::coroutines_v1::coroutine_handle", align 8 | |
%j = alloca i32, align 4 | |
%ref.tmp22 = alloca %"struct.std::experimental::coroutines_v1::suspend_always", align 1 | |
%agg.tmp24 = alloca %"class.std::experimental::coroutines_v1::coroutine_handle.0", align 8 | |
%ref.tmp25 = alloca %"class.std::experimental::coroutines_v1::coroutine_handle", align 8 | |
%ref.tmp33 = alloca %"struct.std::experimental::coroutines_v1::suspend_never", align 1 | |
%undef.agg.tmp34 = alloca %"struct.std::experimental::coroutines_v1::suspend_never", align 1 | |
%agg.tmp36 = alloca %"class.std::experimental::coroutines_v1::coroutine_handle.0", align 8 | |
%ref.tmp37 = alloca %"class.std::experimental::coroutines_v1::coroutine_handle", align 8 | |
call void @coro.devirt.trigger(i8* null) | |
br i1 true, label %coro.alloc, label %coro.init.from.entry, !dbg !650 | |
coro.init.from.entry: ; preds = %entry | |
%.coro.init = phi i8* [ null, %entry ] | |
br label %coro.init, !dbg !650 | |
coro.alloc: ; preds = %entry | |
%call = call i8* @_Znwm(i64 112), !dbg !651 | |
br label %coro.init.from.coro.alloc, !dbg !650 | |
coro.init.from.coro.alloc: ; preds = %coro.alloc | |
%call.coro.init = phi i8* [ %call, %coro.alloc ] | |
br label %coro.init, !dbg !650 | |
coro.init: ; preds = %coro.init.from.entry, %coro.init.from.coro.alloc | |
%2 = phi i8* [ %.coro.init, %coro.init.from.entry ], [ %call.coro.init, %coro.init.from.coro.alloc ], !dbg !650 | |
%FramePtr = bitcast i8* %2 to %_Z3foov.Frame*, !dbg !650 | |
%resume.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 0, !dbg !650 | |
store void (%_Z3foov.Frame*)* @_Z3foov.resume, void (%_Z3foov.Frame*)** %resume.addr, !dbg !650 | |
%3 = select i1 true, void (%_Z3foov.Frame*)* @_Z3foov.destroy, void (%_Z3foov.Frame*)* @_Z3foov.cleanup, !dbg !650 | |
%destroy.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 1, !dbg !650 | |
store void (%_Z3foov.Frame*)* %3, void (%_Z3foov.Frame*)** %destroy.addr, !dbg !650 | |
br label %AllocaSpillBB, !dbg !650 | |
AllocaSpillBB: ; preds = %coro.init | |
%__promise = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 2, !dbg !650 | |
%ref.tmp = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 4, !dbg !650 | |
br label %PostSpill, !dbg !650 | |
PostSpill: ; preds = %AllocaSpillBB | |
store i1 false, i1* %gro.active, align 1, !dbg !650 | |
call void @llvm.dbg.declare(metadata %struct.coro* %retval, metadata !652, metadata !DIExpression()), !dbg !651 | |
call void @llvm.dbg.declare(metadata %"struct.coro::promise_type"* %0, metadata !653, metadata !DIExpression()), !dbg !651 | |
%4 = bitcast %"struct.coro::promise_type"* %__promise to i8*, !dbg !651 | |
call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 1 %4, i8* align 1 getelementptr inbounds (%"struct.coro::promise_type", %"struct.coro::promise_type"* @__const._Z3foov.__promise, i32 0, i32 0), i64 1, i1 false), !dbg !651 | |
%call1 = call i8* @_ZN4coro12promise_type17get_return_objectEv(%"struct.coro::promise_type"* %__promise), !dbg !651 | |
%coerce.dive = getelementptr inbounds %struct.coro, %struct.coro* %retval, i32 0, i32 0, !dbg !651 | |
%coerce.dive2 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %coerce.dive, i32 0, i32 0, !dbg !651 | |
%coerce.dive3 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive2, i32 0, i32 0, !dbg !651 | |
store i8* %call1, i8** %coerce.dive3, align 8, !dbg !651 | |
store i1 true, i1* %gro.active, align 1, !dbg !651 | |
call void @_ZN4coro12promise_type15initial_suspendEv(%"struct.coro::promise_type"* %__promise), !dbg !651 | |
%call4 = call zeroext i1 @_ZNKSt12experimental13coroutines_v113suspend_never11await_readyEv(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp) #2, !dbg !651 | |
br i1 %call4, label %init.ready, label %CoroSave, !dbg !651 | |
CoroSave: ; preds = %PostSpill | |
%index.addr72 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 3, !dbg !651 | |
store i2 0, i2* %index.addr72, !dbg !651 | |
br label %AfterCoroSave, !dbg !651 | |
AfterCoroSave: ; preds = %CoroSave | |
%ref.tmp5.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 6, !dbg !651 | |
%agg.tmp.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 5, !dbg !651 | |
%ref.tmp.reload.addr61 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 4, !dbg !651 | |
%call6 = call i8* @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv(i8* %2) #2, !dbg !651 | |
%coerce.dive7 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp5.reload.addr, i32 0, i32 0, !dbg !651 | |
%coerce.dive8 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive7, i32 0, i32 0, !dbg !651 | |
store i8* %call6, i8** %coerce.dive8, align 8, !dbg !651 | |
%5 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp5.reload.addr to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !651 | |
%6 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp.reload.addr to i8*, !dbg !651 | |
%7 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %5 to i8*, !dbg !651 | |
call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %6, i8* align 8 %7, i64 8, i1 false), !dbg !651 | |
%coerce.dive9 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp.reload.addr, i32 0, i32 0, !dbg !651 | |
%8 = load i8*, i8** %coerce.dive9, align 8, !dbg !651 | |
call void @_ZNKSt12experimental13coroutines_v113suspend_never13await_suspendENS0_16coroutine_handleIvEE(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp.reload.addr61, i8* %8) #2, !dbg !651 | |
br label %CoroSuspend, !dbg !651 | |
CoroSuspend: ; preds = %AfterCoroSave | |
br label %resume.0.landing, !dbg !651 | |
resume.0.landing: ; preds = %CoroSuspend | |
br label %AfterCoroSuspend, !dbg !651 | |
AfterCoroSuspend: ; preds = %resume.0.landing | |
switch i8 -1, label %coro.ret [ | |
i8 0, label %init.ready | |
i8 1, label %init.cleanup | |
], !dbg !651 | |
init.cleanup: ; preds = %AfterCoroSuspend | |
br label %cleanup.from.init.cleanup, !dbg !651 | |
cleanup.from.init.cleanup: ; preds = %init.cleanup | |
%.cleanup60 = phi i32 [ 2, %init.cleanup ] | |
br label %cleanup, !dbg !651 | |
init.ready: ; preds = %AfterCoroSuspend, %PostSpill | |
%ref.tmp11.reload.addr65 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 8, !dbg !651 | |
%i.reload.addr63 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 7, !dbg !651 | |
%ref.tmp.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 4, !dbg !651 | |
call void @_ZNKSt12experimental13coroutines_v113suspend_never12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp.reload.addr) #2, !dbg !651 | |
call void @llvm.dbg.value(metadata i32 0, metadata !659, metadata !DIExpression()), !dbg !661 | |
store i32 0, i32* %i.reload.addr63, align 4, !dbg !662 | |
%9 = load i32, i32* %i.reload.addr63, align 4, !dbg !663 | |
call void @llvm.dbg.value(metadata i32 %9, metadata !659, metadata !DIExpression()), !dbg !661 | |
%inc = add nsw i32 %9, 1, !dbg !663 | |
call void @llvm.dbg.value(metadata i32 %inc, metadata !659, metadata !DIExpression()), !dbg !661 | |
store i32 %inc, i32* %i.reload.addr63, align 4, !dbg !663 | |
%10 = load i32, i32* %i.reload.addr63, align 4, !dbg !664 | |
call void @llvm.dbg.value(metadata i32 %10, metadata !659, metadata !DIExpression()), !dbg !661 | |
%call10 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str, i64 0, i64 0), i32 %10), !dbg !665 | |
%call12 = call zeroext i1 @_ZNKSt12experimental13coroutines_v114suspend_always11await_readyEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp11.reload.addr65) #2, !dbg !666 | |
br i1 %call12, label %await.ready, label %CoroSave45, !dbg !667 | |
CoroSave45: ; preds = %init.ready | |
%index.addr73 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 3, !dbg !667 | |
store i2 1, i2* %index.addr73, !dbg !667 | |
br label %AfterCoroSave46, !dbg !666 | |
AfterCoroSave46: ; preds = %CoroSave45 | |
%ref.tmp14.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 10, !dbg !666 | |
%agg.tmp13.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 9, !dbg !666 | |
%ref.tmp11.reload.addr64 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 8, !dbg !666 | |
%call15 = call i8* @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv(i8* %2) #2, !dbg !666 | |
%coerce.dive16 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp14.reload.addr, i32 0, i32 0, !dbg !666 | |
%coerce.dive17 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive16, i32 0, i32 0, !dbg !666 | |
store i8* %call15, i8** %coerce.dive17, align 8, !dbg !666 | |
%11 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp14.reload.addr to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !666 | |
%12 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp13.reload.addr to i8*, !dbg !666 | |
%13 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %11 to i8*, !dbg !666 | |
call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %12, i8* align 8 %13, i64 8, i1 false), !dbg !666 | |
%coerce.dive18 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp13.reload.addr, i32 0, i32 0, !dbg !666 | |
%14 = load i8*, i8** %coerce.dive18, align 8, !dbg !666 | |
call void @_ZNKSt12experimental13coroutines_v114suspend_always13await_suspendENS0_16coroutine_handleIvEE(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp11.reload.addr64, i8* %14) #2, !dbg !666 | |
br label %CoroSuspend47, !dbg !667 | |
CoroSuspend47: ; preds = %AfterCoroSave46 | |
br label %resume.1.landing, !dbg !667 | |
resume.1.landing: ; preds = %CoroSuspend47 | |
br label %AfterCoroSuspend48, !dbg !667 | |
AfterCoroSuspend48: ; preds = %resume.1.landing | |
switch i8 -1, label %coro.ret [ | |
i8 0, label %await.ready | |
i8 1, label %await.cleanup | |
], !dbg !667 | |
await.cleanup: ; preds = %AfterCoroSuspend48 | |
br label %cleanup.from.await.cleanup, !dbg !667 | |
cleanup.from.await.cleanup: ; preds = %await.cleanup | |
%.cleanup59 = phi i32 [ 2, %await.cleanup ] | |
br label %cleanup, !dbg !667 | |
await.ready: ; preds = %AfterCoroSuspend48, %init.ready | |
%ref.tmp22.reload.addr68 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 12, !dbg !666 | |
%j.reload.addr66 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 11, !dbg !666 | |
%ref.tmp11.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 8, !dbg !666 | |
%i.reload.addr62 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 7, !dbg !666 | |
call void @_ZNKSt12experimental13coroutines_v114suspend_always12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp11.reload.addr) #2, !dbg !666 | |
call void @llvm.dbg.value(metadata i32 0, metadata !668, metadata !DIExpression()), !dbg !661 | |
store i32 0, i32* %j.reload.addr66, align 4, !dbg !669 | |
%15 = load i32, i32* %i.reload.addr62, align 4, !dbg !670 | |
call void @llvm.dbg.value(metadata i32 %15, metadata !659, metadata !DIExpression()), !dbg !661 | |
%inc19 = add nsw i32 %15, 1, !dbg !670 | |
call void @llvm.dbg.value(metadata i32 %inc19, metadata !659, metadata !DIExpression()), !dbg !661 | |
store i32 %inc19, i32* %i.reload.addr62, align 4, !dbg !670 | |
%16 = load i32, i32* %j.reload.addr66, align 4, !dbg !671 | |
call void @llvm.dbg.value(metadata i32 %16, metadata !668, metadata !DIExpression()), !dbg !661 | |
%inc20 = add nsw i32 %16, 1, !dbg !671 | |
call void @llvm.dbg.value(metadata i32 %inc20, metadata !668, metadata !DIExpression()), !dbg !661 | |
store i32 %inc20, i32* %j.reload.addr66, align 4, !dbg !671 | |
%17 = load i32, i32* %i.reload.addr62, align 4, !dbg !672 | |
call void @llvm.dbg.value(metadata i32 %17, metadata !659, metadata !DIExpression()), !dbg !661 | |
%18 = load i32, i32* %j.reload.addr66, align 4, !dbg !673 | |
call void @llvm.dbg.value(metadata i32 %18, metadata !668, metadata !DIExpression()), !dbg !661 | |
%call21 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.1, i64 0, i64 0), i32 %17, i32 %18), !dbg !674 | |
%call23 = call zeroext i1 @_ZNKSt12experimental13coroutines_v114suspend_always11await_readyEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp22.reload.addr68) #2, !dbg !675 | |
br i1 %call23, label %await2.ready, label %CoroSave49, !dbg !676 | |
CoroSave49: ; preds = %await.ready | |
%index.addr74 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 3, !dbg !676 | |
store i2 -2, i2* %index.addr74, !dbg !676 | |
br label %AfterCoroSave50, !dbg !675 | |
AfterCoroSave50: ; preds = %CoroSave49 | |
%ref.tmp25.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 14, !dbg !675 | |
%agg.tmp24.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 13, !dbg !675 | |
%ref.tmp22.reload.addr67 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 12, !dbg !675 | |
%call26 = call i8* @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv(i8* %2) #2, !dbg !675 | |
%coerce.dive27 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp25.reload.addr, i32 0, i32 0, !dbg !675 | |
%coerce.dive28 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive27, i32 0, i32 0, !dbg !675 | |
store i8* %call26, i8** %coerce.dive28, align 8, !dbg !675 | |
%19 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp25.reload.addr to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !675 | |
%20 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp24.reload.addr to i8*, !dbg !675 | |
%21 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %19 to i8*, !dbg !675 | |
call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %20, i8* align 8 %21, i64 8, i1 false), !dbg !675 | |
%coerce.dive29 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp24.reload.addr, i32 0, i32 0, !dbg !675 | |
%22 = load i8*, i8** %coerce.dive29, align 8, !dbg !675 | |
call void @_ZNKSt12experimental13coroutines_v114suspend_always13await_suspendENS0_16coroutine_handleIvEE(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp22.reload.addr67, i8* %22) #2, !dbg !675 | |
br label %CoroSuspend51, !dbg !676 | |
CoroSuspend51: ; preds = %AfterCoroSave50 | |
br label %resume.2.landing, !dbg !676 | |
resume.2.landing: ; preds = %CoroSuspend51 | |
br label %AfterCoroSuspend52, !dbg !676 | |
AfterCoroSuspend52: ; preds = %resume.2.landing | |
switch i8 -1, label %coro.ret [ | |
i8 0, label %await2.ready | |
i8 1, label %await2.cleanup | |
], !dbg !676 | |
await2.cleanup: ; preds = %AfterCoroSuspend52 | |
br label %cleanup.from.await2.cleanup, !dbg !676 | |
cleanup.from.await2.cleanup: ; preds = %await2.cleanup | |
%.cleanup58 = phi i32 [ 2, %await2.cleanup ] | |
br label %cleanup, !dbg !676 | |
await2.ready: ; preds = %AfterCoroSuspend52, %await.ready | |
%ref.tmp22.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 12, !dbg !675 | |
%j.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 11, !dbg !675 | |
%i.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 7, !dbg !675 | |
call void @_ZNKSt12experimental13coroutines_v114suspend_always12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp22.reload.addr) #2, !dbg !675 | |
%23 = load i32, i32* %i.reload.addr, align 4, !dbg !677 | |
call void @llvm.dbg.value(metadata i32 %23, metadata !659, metadata !DIExpression()), !dbg !661 | |
%inc30 = add nsw i32 %23, 1, !dbg !677 | |
call void @llvm.dbg.value(metadata i32 %inc30, metadata !659, metadata !DIExpression()), !dbg !661 | |
store i32 %inc30, i32* %i.reload.addr, align 4, !dbg !677 | |
%24 = load i32, i32* %j.reload.addr, align 4, !dbg !678 | |
call void @llvm.dbg.value(metadata i32 %24, metadata !668, metadata !DIExpression()), !dbg !661 | |
%inc31 = add nsw i32 %24, 1, !dbg !678 | |
call void @llvm.dbg.value(metadata i32 %inc31, metadata !668, metadata !DIExpression()), !dbg !661 | |
store i32 %inc31, i32* %j.reload.addr, align 4, !dbg !678 | |
%25 = load i32, i32* %j.reload.addr, align 4, !dbg !679 | |
call void @llvm.dbg.value(metadata i32 %25, metadata !668, metadata !DIExpression()), !dbg !661 | |
%26 = load i32, i32* %i.reload.addr, align 4, !dbg !680 | |
call void @llvm.dbg.value(metadata i32 %26, metadata !659, metadata !DIExpression()), !dbg !661 | |
%call32 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.1, i64 0, i64 0), i32 %25, i32 %26), !dbg !681 | |
call void @_ZN4coro12promise_type11return_voidEv(%"struct.coro::promise_type"* %__promise), !dbg !651 | |
br label %coro.final, !dbg !651 | |
coro.final: ; preds = %await2.ready | |
%ref.tmp33.reload.addr70 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 15, !dbg !651 | |
call void @_ZN4coro12promise_type13final_suspendEv(%"struct.coro::promise_type"* %__promise), !dbg !651 | |
%call35 = call zeroext i1 @_ZNKSt12experimental13coroutines_v113suspend_never11await_readyEv(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp33.reload.addr70) #2, !dbg !651 | |
br i1 %call35, label %final.ready, label %CoroSave53, !dbg !651 | |
CoroSave53: ; preds = %coro.final | |
%ResumeFn.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 0, !dbg !651 | |
store void (%_Z3foov.Frame*)* null, void (%_Z3foov.Frame*)** %ResumeFn.addr, !dbg !651 | |
br label %AfterCoroSave54, !dbg !651 | |
AfterCoroSave54: ; preds = %CoroSave53 | |
%ref.tmp37.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 17, !dbg !651 | |
%agg.tmp36.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 16, !dbg !651 | |
%ref.tmp33.reload.addr69 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 15, !dbg !651 | |
%call38 = call i8* @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv(i8* %2) #2, !dbg !651 | |
%coerce.dive39 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp37.reload.addr, i32 0, i32 0, !dbg !651 | |
%coerce.dive40 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive39, i32 0, i32 0, !dbg !651 | |
store i8* %call38, i8** %coerce.dive40, align 8, !dbg !651 | |
%27 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp37.reload.addr to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !651 | |
%28 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp36.reload.addr to i8*, !dbg !651 | |
%29 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %27 to i8*, !dbg !651 | |
call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %28, i8* align 8 %29, i64 8, i1 false), !dbg !651 | |
%coerce.dive41 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp36.reload.addr, i32 0, i32 0, !dbg !651 | |
%30 = load i8*, i8** %coerce.dive41, align 8, !dbg !651 | |
call void @_ZNKSt12experimental13coroutines_v113suspend_never13await_suspendENS0_16coroutine_handleIvEE(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp33.reload.addr69, i8* %30) #2, !dbg !651 | |
br label %CoroSuspend55, !dbg !651 | |
CoroSuspend55: ; preds = %AfterCoroSave54 | |
br label %resume.3.landing, !dbg !651 | |
resume.3.landing: ; preds = %CoroSuspend55 | |
br label %AfterCoroSuspend56, !dbg !651 | |
AfterCoroSuspend56: ; preds = %resume.3.landing | |
switch i8 -1, label %coro.ret [ | |
i8 0, label %final.ready | |
i8 1, label %final.cleanup | |
], !dbg !651 | |
final.cleanup: ; preds = %AfterCoroSuspend56 | |
br label %cleanup.from.final.cleanup, !dbg !651 | |
cleanup.from.final.cleanup: ; preds = %final.cleanup | |
%.cleanup57 = phi i32 [ 2, %final.cleanup ] | |
br label %cleanup, !dbg !651 | |
final.ready: ; preds = %AfterCoroSuspend56, %coro.final | |
%ref.tmp33.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 15, !dbg !651 | |
call void @_ZNKSt12experimental13coroutines_v113suspend_never12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp33.reload.addr) #2, !dbg !651 | |
br label %cleanup.from.final.ready, !dbg !651 | |
cleanup.from.final.ready: ; preds = %final.ready | |
%.cleanup = phi i32 [ 0, %final.ready ] | |
br label %cleanup, !dbg !651 | |
cleanup: ; preds = %cleanup.from.final.ready, %cleanup.from.final.cleanup, %cleanup.from.await2.cleanup, %cleanup.from.await.cleanup, %cleanup.from.init.cleanup | |
%cleanup.dest.slot.0 = phi i32 [ %.cleanup, %cleanup.from.final.ready ], [ %.cleanup57, %cleanup.from.final.cleanup ], [ %.cleanup58, %cleanup.from.await2.cleanup ], [ %.cleanup59, %cleanup.from.await.cleanup ], [ %.cleanup60, %cleanup.from.init.cleanup ] | |
%31 = icmp ne i8* %2, null, !dbg !651 | |
br i1 %31, label %coro.free, label %after.coro.free, !dbg !651 | |
coro.free: ; preds = %cleanup | |
call void @_ZdlPv(i8* %2) #2, !dbg !651 | |
br label %after.coro.free, !dbg !651 | |
after.coro.free: ; preds = %cleanup, %coro.free | |
switch i32 %cleanup.dest.slot.0, label %unreachable [ | |
i32 0, label %cleanup.cont | |
i32 2, label %coro.ret | |
] | |
cleanup.cont: ; preds = %after.coro.free | |
br label %coro.ret, !dbg !651 | |
coro.ret: ; preds = %cleanup.cont, %after.coro.free, %AfterCoroSuspend56, %AfterCoroSuspend52, %AfterCoroSuspend48, %AfterCoroSuspend | |
br label %CoroEnd, !dbg !651 | |
CoroEnd: ; preds = %coro.ret | |
br label %AfterCoroEnd, !dbg !651 | |
AfterCoroEnd: ; preds = %CoroEnd | |
%coerce.dive42 = getelementptr inbounds %struct.coro, %struct.coro* %retval, i32 0, i32 0, !dbg !651 | |
%coerce.dive43 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %coerce.dive42, i32 0, i32 0, !dbg !651 | |
%coerce.dive44 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive43, i32 0, i32 0, !dbg !651 | |
%32 = load i8*, i8** %coerce.dive44, align 8, !dbg !651 | |
ret i8* %32, !dbg !651 | |
unreachable: ; preds = %after.coro.free | |
unreachable | |
} | |
; Function Attrs: argmemonly nounwind readonly | |
declare token @llvm.coro.id(i32, i8* readnone, i8* nocapture readonly, i8*) #1 | |
; Function Attrs: nounwind | |
declare i1 @llvm.coro.alloc(token) #2 | |
; Function Attrs: nobuiltin | |
declare dso_local noalias i8* @_Znwm(i64) #3 | |
; Function Attrs: nounwind readnone | |
declare i64 @llvm.coro.size.i64() #4 | |
; Function Attrs: nounwind | |
declare i8* @llvm.coro.begin(token, i8* writeonly) #2 | |
; Function Attrs: nounwind readnone speculatable willreturn | |
declare void @llvm.dbg.declare(metadata, metadata, metadata) #5 | |
; Function Attrs: argmemonly nounwind willreturn | |
declare void @llvm.memcpy.p0i8.p0i8.i64(i8* noalias nocapture writeonly, i8* noalias nocapture readonly, i64, i1 immarg) #6 | |
; Function Attrs: noinline nounwind optnone uwtable | |
define linkonce_odr dso_local i8* @_ZN4coro12promise_type17get_return_objectEv(%"struct.coro::promise_type"* %this) #0 comdat align 2 !dbg !682 { | |
entry: | |
%retval = alloca %struct.coro, align 8 | |
%this.addr = alloca %"struct.coro::promise_type"*, align 8 | |
%handle = alloca %"class.std::experimental::coroutines_v1::coroutine_handle", align 8 | |
%agg.tmp = alloca %"class.std::experimental::coroutines_v1::coroutine_handle", align 8 | |
store %"struct.coro::promise_type"* %this, %"struct.coro::promise_type"** %this.addr, align 8 | |
call void @llvm.dbg.declare(metadata %"struct.coro::promise_type"** %this.addr, metadata !683, metadata !DIExpression()), !dbg !685 | |
%this1 = load %"struct.coro::promise_type"*, %"struct.coro::promise_type"** %this.addr, align 8 | |
call void @llvm.dbg.declare(metadata %"class.std::experimental::coroutines_v1::coroutine_handle"* %handle, metadata !686, metadata !DIExpression()), !dbg !687 | |
%call = call i8* @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_promiseERS3_(%"struct.coro::promise_type"* dereferenceable(1) %this1) #2, !dbg !688 | |
%coerce.dive = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %handle, i32 0, i32 0, !dbg !688 | |
%coerce.dive2 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive, i32 0, i32 0, !dbg !688 | |
store i8* %call, i8** %coerce.dive2, align 8, !dbg !688 | |
%0 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %agg.tmp to i8*, !dbg !689 | |
%1 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %handle to i8*, !dbg !689 | |
call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %0, i8* align 8 %1, i64 8, i1 false), !dbg !689 | |
%coerce.dive3 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %agg.tmp, i32 0, i32 0, !dbg !690 | |
%coerce.dive4 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive3, i32 0, i32 0, !dbg !690 | |
%2 = load i8*, i8** %coerce.dive4, align 8, !dbg !690 | |
call void @_ZN4coroC2ENSt12experimental13coroutines_v116coroutine_handleINS_12promise_typeEEE(%struct.coro* %retval, i8* %2), !dbg !690 | |
%coerce.dive5 = getelementptr inbounds %struct.coro, %struct.coro* %retval, i32 0, i32 0, !dbg !691 | |
%coerce.dive6 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %coerce.dive5, i32 0, i32 0, !dbg !691 | |
%coerce.dive7 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive6, i32 0, i32 0, !dbg !691 | |
%3 = load i8*, i8** %coerce.dive7, align 8, !dbg !691 | |
ret i8* %3, !dbg !691 | |
} | |
; Function Attrs: noinline nounwind optnone uwtable | |
define linkonce_odr dso_local void @_ZN4coro12promise_type15initial_suspendEv(%"struct.coro::promise_type"* %this) #0 comdat align 2 !dbg !692 { | |
entry: | |
%this.addr = alloca %"struct.coro::promise_type"*, align 8 | |
store %"struct.coro::promise_type"* %this, %"struct.coro::promise_type"** %this.addr, align 8 | |
call void @llvm.dbg.declare(metadata %"struct.coro::promise_type"** %this.addr, metadata !693, metadata !DIExpression()), !dbg !694 | |
%this1 = load %"struct.coro::promise_type"*, %"struct.coro::promise_type"** %this.addr, align 8 | |
ret void, !dbg !695 | |
} | |
; Function Attrs: noinline nounwind optnone uwtable | |
define linkonce_odr hidden zeroext i1 @_ZNKSt12experimental13coroutines_v113suspend_never11await_readyEv(%"struct.std::experimental::coroutines_v1::suspend_never"* %this) #0 comdat align 2 !dbg !696 { | |
entry: | |
%this.addr = alloca %"struct.std::experimental::coroutines_v1::suspend_never"*, align 8 | |
store %"struct.std::experimental::coroutines_v1::suspend_never"* %this, %"struct.std::experimental::coroutines_v1::suspend_never"** %this.addr, align 8 | |
call void @llvm.dbg.declare(metadata %"struct.std::experimental::coroutines_v1::suspend_never"** %this.addr, metadata !697, metadata !DIExpression()), !dbg !699 | |
%this1 = load %"struct.std::experimental::coroutines_v1::suspend_never"*, %"struct.std::experimental::coroutines_v1::suspend_never"** %this.addr, align 8 | |
ret i1 true, !dbg !700 | |
} | |
; Function Attrs: nounwind | |
declare token @llvm.coro.save(i8*) #2 | |
; Function Attrs: noinline nounwind optnone uwtable | |
define linkonce_odr hidden void @_ZNKSt12experimental13coroutines_v113suspend_never13await_suspendENS0_16coroutine_handleIvEE(%"struct.std::experimental::coroutines_v1::suspend_never"* %this, i8* %.coerce) #0 comdat align 2 !dbg !701 { | |
entry: | |
%0 = alloca %"class.std::experimental::coroutines_v1::coroutine_handle.0", align 8 | |
%this.addr = alloca %"struct.std::experimental::coroutines_v1::suspend_never"*, align 8 | |
%coerce.dive = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %0, i32 0, i32 0 | |
store i8* %.coerce, i8** %coerce.dive, align 8 | |
store %"struct.std::experimental::coroutines_v1::suspend_never"* %this, %"struct.std::experimental::coroutines_v1::suspend_never"** %this.addr, align 8 | |
call void @llvm.dbg.declare(metadata %"struct.std::experimental::coroutines_v1::suspend_never"** %this.addr, metadata !702, metadata !DIExpression()), !dbg !703 | |
call void @llvm.dbg.declare(metadata %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %0, metadata !704, metadata !DIExpression()), !dbg !705 | |
%this1 = load %"struct.std::experimental::coroutines_v1::suspend_never"*, %"struct.std::experimental::coroutines_v1::suspend_never"** %this.addr, align 8 | |
ret void, !dbg !706 | |
} | |
; Function Attrs: noinline nounwind optnone uwtable | |
define linkonce_odr hidden i8* @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv(i8* %__addr) #0 comdat align 2 !dbg !707 { | |
entry: | |
%retval = alloca %"class.std::experimental::coroutines_v1::coroutine_handle", align 8 | |
%__addr.addr = alloca i8*, align 8 | |
store i8* %__addr, i8** %__addr.addr, align 8 | |
call void @llvm.dbg.declare(metadata i8** %__addr.addr, metadata !708, metadata !DIExpression()), !dbg !709 | |
call void @llvm.dbg.declare(metadata %"class.std::experimental::coroutines_v1::coroutine_handle"* %retval, metadata !710, metadata !DIExpression()), !dbg !711 | |
call void @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEEC2Ev(%"class.std::experimental::coroutines_v1::coroutine_handle"* %retval) #2, !dbg !711 | |
%0 = load i8*, i8** %__addr.addr, align 8, !dbg !712 | |
%1 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %retval to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !713 | |
%__handle_ = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %1, i32 0, i32 0, !dbg !714 | |
store i8* %0, i8** %__handle_, align 8, !dbg !715 | |
%coerce.dive = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %retval, i32 0, i32 0, !dbg !716 | |
%coerce.dive1 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive, i32 0, i32 0, !dbg !716 | |
%2 = load i8*, i8** %coerce.dive1, align 8, !dbg !716 | |
ret i8* %2, !dbg !716 | |
} | |
; Function Attrs: nounwind | |
declare i8 @llvm.coro.suspend(token, i1) #2 | |
; Function Attrs: noinline nounwind optnone uwtable | |
define linkonce_odr hidden void @_ZNKSt12experimental13coroutines_v113suspend_never12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_never"* %this) #0 comdat align 2 !dbg !717 { | |
entry: | |
%this.addr = alloca %"struct.std::experimental::coroutines_v1::suspend_never"*, align 8 | |
store %"struct.std::experimental::coroutines_v1::suspend_never"* %this, %"struct.std::experimental::coroutines_v1::suspend_never"** %this.addr, align 8 | |
call void @llvm.dbg.declare(metadata %"struct.std::experimental::coroutines_v1::suspend_never"** %this.addr, metadata !718, metadata !DIExpression()), !dbg !719 | |
%this1 = load %"struct.std::experimental::coroutines_v1::suspend_never"*, %"struct.std::experimental::coroutines_v1::suspend_never"** %this.addr, align 8 | |
ret void, !dbg !720 | |
} | |
declare dso_local i32 @printf(i8*, ...) #7 | |
; Function Attrs: noinline nounwind optnone uwtable | |
define linkonce_odr hidden zeroext i1 @_ZNKSt12experimental13coroutines_v114suspend_always11await_readyEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %this) #0 comdat align 2 !dbg !721 { | |
entry: | |
%this.addr = alloca %"struct.std::experimental::coroutines_v1::suspend_always"*, align 8 | |
store %"struct.std::experimental::coroutines_v1::suspend_always"* %this, %"struct.std::experimental::coroutines_v1::suspend_always"** %this.addr, align 8 | |
call void @llvm.dbg.declare(metadata %"struct.std::experimental::coroutines_v1::suspend_always"** %this.addr, metadata !735, metadata !DIExpression()), !dbg !737 | |
%this1 = load %"struct.std::experimental::coroutines_v1::suspend_always"*, %"struct.std::experimental::coroutines_v1::suspend_always"** %this.addr, align 8 | |
ret i1 false, !dbg !738 | |
} | |
; Function Attrs: noinline nounwind optnone uwtable | |
define linkonce_odr hidden void @_ZNKSt12experimental13coroutines_v114suspend_always13await_suspendENS0_16coroutine_handleIvEE(%"struct.std::experimental::coroutines_v1::suspend_always"* %this, i8* %.coerce) #0 comdat align 2 !dbg !739 { | |
entry: | |
%0 = alloca %"class.std::experimental::coroutines_v1::coroutine_handle.0", align 8 | |
%this.addr = alloca %"struct.std::experimental::coroutines_v1::suspend_always"*, align 8 | |
%coerce.dive = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %0, i32 0, i32 0 | |
store i8* %.coerce, i8** %coerce.dive, align 8 | |
store %"struct.std::experimental::coroutines_v1::suspend_always"* %this, %"struct.std::experimental::coroutines_v1::suspend_always"** %this.addr, align 8 | |
call void @llvm.dbg.declare(metadata %"struct.std::experimental::coroutines_v1::suspend_always"** %this.addr, metadata !740, metadata !DIExpression()), !dbg !741 | |
call void @llvm.dbg.declare(metadata %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %0, metadata !742, metadata !DIExpression()), !dbg !743 | |
%this1 = load %"struct.std::experimental::coroutines_v1::suspend_always"*, %"struct.std::experimental::coroutines_v1::suspend_always"** %this.addr, align 8 | |
ret void, !dbg !744 | |
} | |
; Function Attrs: noinline nounwind optnone uwtable | |
define linkonce_odr hidden void @_ZNKSt12experimental13coroutines_v114suspend_always12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %this) #0 comdat align 2 !dbg !745 { | |
entry: | |
%this.addr = alloca %"struct.std::experimental::coroutines_v1::suspend_always"*, align 8 | |
store %"struct.std::experimental::coroutines_v1::suspend_always"* %this, %"struct.std::experimental::coroutines_v1::suspend_always"** %this.addr, align 8 | |
call void @llvm.dbg.declare(metadata %"struct.std::experimental::coroutines_v1::suspend_always"** %this.addr, metadata !746, metadata !DIExpression()), !dbg !747 | |
%this1 = load %"struct.std::experimental::coroutines_v1::suspend_always"*, %"struct.std::experimental::coroutines_v1::suspend_always"** %this.addr, align 8 | |
ret void, !dbg !748 | |
} | |
; Function Attrs: noinline nounwind optnone uwtable | |
define linkonce_odr dso_local void @_ZN4coro12promise_type11return_voidEv(%"struct.coro::promise_type"* %this) #0 comdat align 2 !dbg !749 { | |
entry: | |
%this.addr = alloca %"struct.coro::promise_type"*, align 8 | |
store %"struct.coro::promise_type"* %this, %"struct.coro::promise_type"** %this.addr, align 8 | |
call void @llvm.dbg.declare(metadata %"struct.coro::promise_type"** %this.addr, metadata !750, metadata !DIExpression()), !dbg !751 | |
%this1 = load %"struct.coro::promise_type"*, %"struct.coro::promise_type"** %this.addr, align 8 | |
ret void, !dbg !752 | |
} | |
; Function Attrs: noinline nounwind optnone uwtable | |
define linkonce_odr dso_local void @_ZN4coro12promise_type13final_suspendEv(%"struct.coro::promise_type"* %this) #0 comdat align 2 !dbg !753 { | |
entry: | |
%this.addr = alloca %"struct.coro::promise_type"*, align 8 | |
store %"struct.coro::promise_type"* %this, %"struct.coro::promise_type"** %this.addr, align 8 | |
call void @llvm.dbg.declare(metadata %"struct.coro::promise_type"** %this.addr, metadata !754, metadata !DIExpression()), !dbg !755 | |
%this1 = load %"struct.coro::promise_type"*, %"struct.coro::promise_type"** %this.addr, align 8 | |
ret void, !dbg !756 | |
} | |
; Function Attrs: nobuiltin nounwind | |
declare dso_local void @_ZdlPv(i8*) #8 | |
; Function Attrs: argmemonly nounwind readonly | |
declare i8* @llvm.coro.free(token, i8* nocapture readonly) #1 | |
; Function Attrs: nounwind | |
declare i1 @llvm.coro.end(i8*, i1) #2 | |
; Function Attrs: noinline norecurse nounwind optnone uwtable | |
define dso_local i32 @main() #9 !dbg !757 { | |
entry: | |
%c = alloca %struct.coro, align 8 | |
call void @llvm.dbg.declare(metadata %struct.coro* %c, metadata !758, metadata !DIExpression()), !dbg !759 | |
%call = call i8* @_Z3foov(), !dbg !760 | |
%coerce.dive = getelementptr inbounds %struct.coro, %struct.coro* %c, i32 0, i32 0, !dbg !760 | |
%coerce.dive1 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %coerce.dive, i32 0, i32 0, !dbg !760 | |
%coerce.dive2 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive1, i32 0, i32 0, !dbg !760 | |
store i8* %call, i8** %coerce.dive2, align 8, !dbg !760 | |
%handle = getelementptr inbounds %struct.coro, %struct.coro* %c, i32 0, i32 0, !dbg !761 | |
%0 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %handle to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !762 | |
call void @_ZNSt12experimental13coroutines_v116coroutine_handleIvE6resumeEv(%"class.std::experimental::coroutines_v1::coroutine_handle.0"* %0), !dbg !763 | |
%handle3 = getelementptr inbounds %struct.coro, %struct.coro* %c, i32 0, i32 0, !dbg !764 | |
%1 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %handle3 to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !765 | |
call void @_ZNSt12experimental13coroutines_v116coroutine_handleIvE6resumeEv(%"class.std::experimental::coroutines_v1::coroutine_handle.0"* %1), !dbg !766 | |
ret i32 0, !dbg !767 | |
} | |
; Function Attrs: noinline nounwind optnone uwtable | |
define linkonce_odr hidden void @_ZNSt12experimental13coroutines_v116coroutine_handleIvE6resumeEv(%"class.std::experimental::coroutines_v1::coroutine_handle.0"* %this) #0 comdat align 2 !dbg !768 { | |
entry: | |
%this.addr = alloca %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, align 8 | |
store %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %this, %"class.std::experimental::coroutines_v1::coroutine_handle.0"** %this.addr, align 8 | |
call void @llvm.dbg.declare(metadata %"class.std::experimental::coroutines_v1::coroutine_handle.0"** %this.addr, metadata !769, metadata !DIExpression()), !dbg !771 | |
%this1 = load %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, %"class.std::experimental::coroutines_v1::coroutine_handle.0"** %this.addr, align 8 | |
%__handle_ = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %this1, i32 0, i32 0, !dbg !772 | |
%0 = load i8*, i8** %__handle_, align 8, !dbg !772 | |
%1 = bitcast i8* %0 to { i8*, i8* }* | |
%2 = getelementptr inbounds { i8*, i8* }, { i8*, i8* }* %1, i32 0, i32 0 | |
%3 = load i8*, i8** %2 | |
%4 = bitcast i8* %3 to void (i8*)* | |
call fastcc void %4(i8* %0), !dbg !773 | |
ret void, !dbg !774 | |
} | |
; Function Attrs: noinline nounwind optnone uwtable | |
define linkonce_odr hidden i8* @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_promiseERS3_(%"struct.coro::promise_type"* dereferenceable(1) %__promise) #0 comdat align 2 !dbg !775 { | |
entry: | |
%retval = alloca %"class.std::experimental::coroutines_v1::coroutine_handle", align 8 | |
%__promise.addr = alloca %"struct.coro::promise_type"*, align 8 | |
store %"struct.coro::promise_type"* %__promise, %"struct.coro::promise_type"** %__promise.addr, align 8 | |
call void @llvm.dbg.declare(metadata %"struct.coro::promise_type"** %__promise.addr, metadata !776, metadata !DIExpression()), !dbg !777 | |
call void @llvm.dbg.declare(metadata %"class.std::experimental::coroutines_v1::coroutine_handle"* %retval, metadata !778, metadata !DIExpression()), !dbg !779 | |
call void @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEEC2Ev(%"class.std::experimental::coroutines_v1::coroutine_handle"* %retval) #2, !dbg !779 | |
%0 = load %"struct.coro::promise_type"*, %"struct.coro::promise_type"** %__promise.addr, align 8, !dbg !780 | |
%call = call %"struct.coro::promise_type"* @_ZNSt3__19addressofIN4coro12promise_typeEEEPT_RS3_(%"struct.coro::promise_type"* dereferenceable(1) %0) #2, !dbg !781 | |
%1 = bitcast %"struct.coro::promise_type"* %call to i8*, !dbg !781 | |
%2 = getelementptr inbounds i8, i8* %1, i32 -16, !dbg !782 | |
%3 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %retval to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !783 | |
%__handle_ = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %3, i32 0, i32 0, !dbg !784 | |
store i8* %2, i8** %__handle_, align 8, !dbg !785 | |
%coerce.dive = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %retval, i32 0, i32 0, !dbg !786 | |
%coerce.dive1 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive, i32 0, i32 0, !dbg !786 | |
%4 = load i8*, i8** %coerce.dive1, align 8, !dbg !786 | |
ret i8* %4, !dbg !786 | |
} | |
; Function Attrs: noinline nounwind optnone uwtable | |
define linkonce_odr dso_local void @_ZN4coroC2ENSt12experimental13coroutines_v116coroutine_handleINS_12promise_typeEEE(%struct.coro* %this, i8* %handle.coerce) unnamed_addr #0 comdat align 2 !dbg !787 { | |
entry: | |
%handle = alloca %"class.std::experimental::coroutines_v1::coroutine_handle", align 8 | |
%this.addr = alloca %struct.coro*, align 8 | |
%coerce.dive = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %handle, i32 0, i32 0 | |
%coerce.dive1 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive, i32 0, i32 0 | |
store i8* %handle.coerce, i8** %coerce.dive1, align 8 | |
store %struct.coro* %this, %struct.coro** %this.addr, align 8 | |
call void @llvm.dbg.declare(metadata %struct.coro** %this.addr, metadata !788, metadata !DIExpression()), !dbg !790 | |
call void @llvm.dbg.declare(metadata %"class.std::experimental::coroutines_v1::coroutine_handle"* %handle, metadata !791, metadata !DIExpression()), !dbg !792 | |
%this2 = load %struct.coro*, %struct.coro** %this.addr, align 8 | |
%handle3 = getelementptr inbounds %struct.coro, %struct.coro* %this2, i32 0, i32 0, !dbg !793 | |
%0 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %handle3 to i8*, !dbg !793 | |
%1 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %handle to i8*, !dbg !793 | |
call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %0, i8* align 8 %1, i64 8, i1 false), !dbg !793 | |
ret void, !dbg !794 | |
} | |
; Function Attrs: noinline nounwind optnone uwtable | |
define linkonce_odr dso_local void @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEEC2Ev(%"class.std::experimental::coroutines_v1::coroutine_handle"* %this) unnamed_addr #0 comdat align 2 !dbg !795 { | |
entry: | |
%this.addr = alloca %"class.std::experimental::coroutines_v1::coroutine_handle"*, align 8 | |
store %"class.std::experimental::coroutines_v1::coroutine_handle"* %this, %"class.std::experimental::coroutines_v1::coroutine_handle"** %this.addr, align 8 | |
call void @llvm.dbg.declare(metadata %"class.std::experimental::coroutines_v1::coroutine_handle"** %this.addr, metadata !799, metadata !DIExpression()), !dbg !801 | |
%this1 = load %"class.std::experimental::coroutines_v1::coroutine_handle"*, %"class.std::experimental::coroutines_v1::coroutine_handle"** %this.addr, align 8 | |
%0 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %this1 to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !802 | |
call void @_ZNSt12experimental13coroutines_v116coroutine_handleIvEC2Ev(%"class.std::experimental::coroutines_v1::coroutine_handle.0"* %0) #2, !dbg !802 | |
ret void, !dbg !802 | |
} | |
; Function Attrs: noinline nounwind optnone uwtable | |
define linkonce_odr hidden %"struct.coro::promise_type"* @_ZNSt3__19addressofIN4coro12promise_typeEEEPT_RS3_(%"struct.coro::promise_type"* dereferenceable(1) %__x) #0 comdat !dbg !803 { | |
entry: | |
%__x.addr = alloca %"struct.coro::promise_type"*, align 8 | |
store %"struct.coro::promise_type"* %__x, %"struct.coro::promise_type"** %__x.addr, align 8 | |
call void @llvm.dbg.declare(metadata %"struct.coro::promise_type"** %__x.addr, metadata !809, metadata !DIExpression()), !dbg !810 | |
%0 = load %"struct.coro::promise_type"*, %"struct.coro::promise_type"** %__x.addr, align 8, !dbg !811 | |
ret %"struct.coro::promise_type"* %0, !dbg !812 | |
} | |
; Function Attrs: nounwind readnone | |
declare i8* @llvm.coro.promise(i8* nocapture, i32, i1) #4 | |
; Function Attrs: noinline nounwind optnone uwtable | |
define linkonce_odr hidden void @_ZNSt12experimental13coroutines_v116coroutine_handleIvEC2Ev(%"class.std::experimental::coroutines_v1::coroutine_handle.0"* %this) unnamed_addr #0 comdat align 2 !dbg !813 { | |
entry: | |
%this.addr = alloca %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, align 8 | |
store %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %this, %"class.std::experimental::coroutines_v1::coroutine_handle.0"** %this.addr, align 8 | |
call void @llvm.dbg.declare(metadata %"class.std::experimental::coroutines_v1::coroutine_handle.0"** %this.addr, metadata !814, metadata !DIExpression()), !dbg !815 | |
%this1 = load %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, %"class.std::experimental::coroutines_v1::coroutine_handle.0"** %this.addr, align 8 | |
%__handle_ = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %this1, i32 0, i32 0, !dbg !816 | |
store i8* null, i8** %__handle_, align 8, !dbg !816 | |
ret void, !dbg !817 | |
} | |
declare void @llvm.coro.resume(i8*) | |
; Function Attrs: argmemonly nounwind readonly | |
declare i8* @llvm.coro.subfn.addr(i8* nocapture readonly, i8) #1 | |
; Function Attrs: alwaysinline | |
define private void @coro.devirt.trigger(i8* %0) #10 { | |
entry: | |
ret void | |
} | |
; Function Attrs: nounwind readnone speculatable willreturn | |
declare void @llvm.dbg.value(metadata, metadata, metadata) #5 | |
; Function Attrs: noinline nounwind optnone uwtable | |
define internal fastcc void @_Z3foov.resume(%_Z3foov.Frame* noalias nonnull %FramePtr) #0 !dbg !818 { | |
entry.resume: | |
%vFrame = bitcast %_Z3foov.Frame* %FramePtr to i8*, !dbg !819 | |
%__promise = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 2, !dbg !819 | |
%ref.tmp = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 4, !dbg !819 | |
br label %resume.entry, !dbg !819 | |
resume.0: ; preds = %resume.entry | |
br label %resume.0.landing, !dbg !820 | |
resume.0.landing: ; preds = %resume.0 | |
br label %AfterCoroSuspend, !dbg !820 | |
AfterCoroSuspend: ; preds = %resume.0.landing | |
switch i8 0, label %coro.ret [ | |
i8 0, label %init.ready | |
i8 1, label %init.cleanup | |
], !dbg !820 | |
init.cleanup: ; preds = %AfterCoroSuspend | |
br label %cleanup.from.init.cleanup, !dbg !820 | |
cleanup.from.init.cleanup: ; preds = %init.cleanup | |
%.cleanup60 = phi i32 [ 2, %init.cleanup ] | |
br label %cleanup, !dbg !820 | |
init.ready: ; preds = %AfterCoroSuspend | |
%ref.tmp11.reload.addr65 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 8, !dbg !820 | |
%i.reload.addr63 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 7, !dbg !820 | |
%ref.tmp.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 4, !dbg !820 | |
call void @_ZNKSt12experimental13coroutines_v113suspend_never12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp.reload.addr) #2, !dbg !820 | |
call void @llvm.dbg.value(metadata i32 0, metadata !821, metadata !DIExpression()), !dbg !823 | |
store i32 0, i32* %i.reload.addr63, align 4, !dbg !824 | |
%0 = load i32, i32* %i.reload.addr63, align 4, !dbg !825 | |
call void @llvm.dbg.value(metadata i32 %0, metadata !821, metadata !DIExpression()), !dbg !823 | |
%inc = add nsw i32 %0, 1, !dbg !825 | |
call void @llvm.dbg.value(metadata i32 %inc, metadata !821, metadata !DIExpression()), !dbg !823 | |
store i32 %inc, i32* %i.reload.addr63, align 4, !dbg !825 | |
%1 = load i32, i32* %i.reload.addr63, align 4, !dbg !826 | |
call void @llvm.dbg.value(metadata i32 %1, metadata !821, metadata !DIExpression()), !dbg !823 | |
%call10 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str, i64 0, i64 0), i32 %1), !dbg !827 | |
%call12 = call zeroext i1 @_ZNKSt12experimental13coroutines_v114suspend_always11await_readyEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp11.reload.addr65) #2, !dbg !828 | |
br i1 %call12, label %await.ready, label %CoroSave45, !dbg !829 | |
CoroSave45: ; preds = %init.ready | |
%index.addr73 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 3, !dbg !829 | |
store i2 1, i2* %index.addr73, !dbg !829 | |
br label %AfterCoroSave46, !dbg !828 | |
AfterCoroSave46: ; preds = %CoroSave45 | |
%ref.tmp14.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 10, !dbg !828 | |
%agg.tmp13.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 9, !dbg !828 | |
%ref.tmp11.reload.addr64 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 8, !dbg !828 | |
%call15 = call i8* @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv(i8* %vFrame) #2, !dbg !828 | |
%coerce.dive16 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp14.reload.addr, i32 0, i32 0, !dbg !828 | |
%coerce.dive17 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive16, i32 0, i32 0, !dbg !828 | |
store i8* %call15, i8** %coerce.dive17, align 8, !dbg !828 | |
%2 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp14.reload.addr to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !828 | |
%3 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp13.reload.addr to i8*, !dbg !828 | |
%4 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %2 to i8*, !dbg !828 | |
call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %3, i8* align 8 %4, i64 8, i1 false), !dbg !828 | |
%coerce.dive18 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp13.reload.addr, i32 0, i32 0, !dbg !828 | |
%5 = load i8*, i8** %coerce.dive18, align 8, !dbg !828 | |
call void @_ZNKSt12experimental13coroutines_v114suspend_always13await_suspendENS0_16coroutine_handleIvEE(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp11.reload.addr64, i8* %5) #2, !dbg !828 | |
br label %CoroSuspend47, !dbg !829 | |
CoroSuspend47: ; preds = %AfterCoroSave46 | |
br label %resume.1.landing, !dbg !829 | |
resume.1: ; preds = %resume.entry | |
br label %resume.1.landing, !dbg !829 | |
resume.1.landing: ; preds = %resume.1, %CoroSuspend47 | |
%6 = phi i8 [ -1, %CoroSuspend47 ], [ 0, %resume.1 ] | |
br label %AfterCoroSuspend48, !dbg !829 | |
AfterCoroSuspend48: ; preds = %resume.1.landing | |
switch i8 %6, label %coro.ret [ | |
i8 0, label %await.ready | |
i8 1, label %await.cleanup | |
], !dbg !829 | |
await.cleanup: ; preds = %AfterCoroSuspend48 | |
br label %cleanup.from.await.cleanup, !dbg !829 | |
cleanup.from.await.cleanup: ; preds = %await.cleanup | |
%.cleanup59 = phi i32 [ 2, %await.cleanup ] | |
br label %cleanup, !dbg !829 | |
await.ready: ; preds = %AfterCoroSuspend48, %init.ready | |
%ref.tmp22.reload.addr68 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 12, !dbg !828 | |
%j.reload.addr66 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 11, !dbg !828 | |
%ref.tmp11.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 8, !dbg !828 | |
%i.reload.addr62 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 7, !dbg !828 | |
call void @_ZNKSt12experimental13coroutines_v114suspend_always12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp11.reload.addr) #2, !dbg !828 | |
call void @llvm.dbg.value(metadata i32 0, metadata !830, metadata !DIExpression()), !dbg !823 | |
store i32 0, i32* %j.reload.addr66, align 4, !dbg !831 | |
%7 = load i32, i32* %i.reload.addr62, align 4, !dbg !832 | |
call void @llvm.dbg.value(metadata i32 %7, metadata !821, metadata !DIExpression()), !dbg !823 | |
%inc19 = add nsw i32 %7, 1, !dbg !832 | |
call void @llvm.dbg.value(metadata i32 %inc19, metadata !821, metadata !DIExpression()), !dbg !823 | |
store i32 %inc19, i32* %i.reload.addr62, align 4, !dbg !832 | |
%8 = load i32, i32* %j.reload.addr66, align 4, !dbg !833 | |
call void @llvm.dbg.value(metadata i32 %8, metadata !830, metadata !DIExpression()), !dbg !823 | |
%inc20 = add nsw i32 %8, 1, !dbg !833 | |
call void @llvm.dbg.value(metadata i32 %inc20, metadata !830, metadata !DIExpression()), !dbg !823 | |
store i32 %inc20, i32* %j.reload.addr66, align 4, !dbg !833 | |
%9 = load i32, i32* %i.reload.addr62, align 4, !dbg !834 | |
call void @llvm.dbg.value(metadata i32 %9, metadata !821, metadata !DIExpression()), !dbg !823 | |
%10 = load i32, i32* %j.reload.addr66, align 4, !dbg !835 | |
call void @llvm.dbg.value(metadata i32 %10, metadata !830, metadata !DIExpression()), !dbg !823 | |
%call21 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.1, i64 0, i64 0), i32 %9, i32 %10), !dbg !836 | |
%call23 = call zeroext i1 @_ZNKSt12experimental13coroutines_v114suspend_always11await_readyEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp22.reload.addr68) #2, !dbg !837 | |
br i1 %call23, label %await2.ready, label %CoroSave49, !dbg !838 | |
CoroSave49: ; preds = %await.ready | |
%index.addr74 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 3, !dbg !838 | |
store i2 -2, i2* %index.addr74, !dbg !838 | |
br label %AfterCoroSave50, !dbg !837 | |
AfterCoroSave50: ; preds = %CoroSave49 | |
%ref.tmp25.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 14, !dbg !837 | |
%agg.tmp24.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 13, !dbg !837 | |
%ref.tmp22.reload.addr67 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 12, !dbg !837 | |
%call26 = call i8* @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv(i8* %vFrame) #2, !dbg !837 | |
%coerce.dive27 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp25.reload.addr, i32 0, i32 0, !dbg !837 | |
%coerce.dive28 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive27, i32 0, i32 0, !dbg !837 | |
store i8* %call26, i8** %coerce.dive28, align 8, !dbg !837 | |
%11 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp25.reload.addr to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !837 | |
%12 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp24.reload.addr to i8*, !dbg !837 | |
%13 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %11 to i8*, !dbg !837 | |
call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %12, i8* align 8 %13, i64 8, i1 false), !dbg !837 | |
%coerce.dive29 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp24.reload.addr, i32 0, i32 0, !dbg !837 | |
%14 = load i8*, i8** %coerce.dive29, align 8, !dbg !837 | |
call void @_ZNKSt12experimental13coroutines_v114suspend_always13await_suspendENS0_16coroutine_handleIvEE(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp22.reload.addr67, i8* %14) #2, !dbg !837 | |
br label %CoroSuspend51, !dbg !838 | |
CoroSuspend51: ; preds = %AfterCoroSave50 | |
br label %resume.2.landing, !dbg !838 | |
resume.2: ; preds = %resume.entry | |
br label %resume.2.landing, !dbg !838 | |
resume.2.landing: ; preds = %resume.2, %CoroSuspend51 | |
%15 = phi i8 [ -1, %CoroSuspend51 ], [ 0, %resume.2 ] | |
br label %AfterCoroSuspend52, !dbg !838 | |
AfterCoroSuspend52: ; preds = %resume.2.landing | |
switch i8 %15, label %coro.ret [ | |
i8 0, label %await2.ready | |
i8 1, label %await2.cleanup | |
], !dbg !838 | |
await2.cleanup: ; preds = %AfterCoroSuspend52 | |
br label %cleanup.from.await2.cleanup, !dbg !838 | |
cleanup.from.await2.cleanup: ; preds = %await2.cleanup | |
%.cleanup58 = phi i32 [ 2, %await2.cleanup ] | |
br label %cleanup, !dbg !838 | |
await2.ready: ; preds = %AfterCoroSuspend52, %await.ready | |
%ref.tmp22.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 12, !dbg !837 | |
%j.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 11, !dbg !837 | |
%i.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 7, !dbg !837 | |
call void @_ZNKSt12experimental13coroutines_v114suspend_always12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp22.reload.addr) #2, !dbg !837 | |
%16 = load i32, i32* %i.reload.addr, align 4, !dbg !839 | |
call void @llvm.dbg.value(metadata i32 %16, metadata !821, metadata !DIExpression()), !dbg !823 | |
%inc30 = add nsw i32 %16, 1, !dbg !839 | |
call void @llvm.dbg.value(metadata i32 %inc30, metadata !821, metadata !DIExpression()), !dbg !823 | |
store i32 %inc30, i32* %i.reload.addr, align 4, !dbg !839 | |
%17 = load i32, i32* %j.reload.addr, align 4, !dbg !840 | |
call void @llvm.dbg.value(metadata i32 %17, metadata !830, metadata !DIExpression()), !dbg !823 | |
%inc31 = add nsw i32 %17, 1, !dbg !840 | |
call void @llvm.dbg.value(metadata i32 %inc31, metadata !830, metadata !DIExpression()), !dbg !823 | |
store i32 %inc31, i32* %j.reload.addr, align 4, !dbg !840 | |
%18 = load i32, i32* %j.reload.addr, align 4, !dbg !841 | |
call void @llvm.dbg.value(metadata i32 %18, metadata !830, metadata !DIExpression()), !dbg !823 | |
%19 = load i32, i32* %i.reload.addr, align 4, !dbg !842 | |
call void @llvm.dbg.value(metadata i32 %19, metadata !821, metadata !DIExpression()), !dbg !823 | |
%call32 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.1, i64 0, i64 0), i32 %18, i32 %19), !dbg !843 | |
call void @_ZN4coro12promise_type11return_voidEv(%"struct.coro::promise_type"* %__promise), !dbg !820 | |
br label %coro.final, !dbg !820 | |
coro.final: ; preds = %await2.ready | |
%ref.tmp33.reload.addr70 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 15, !dbg !820 | |
call void @_ZN4coro12promise_type13final_suspendEv(%"struct.coro::promise_type"* %__promise), !dbg !820 | |
%call35 = call zeroext i1 @_ZNKSt12experimental13coroutines_v113suspend_never11await_readyEv(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp33.reload.addr70) #2, !dbg !820 | |
br i1 %call35, label %final.ready, label %CoroSave53, !dbg !820 | |
CoroSave53: ; preds = %coro.final | |
%ResumeFn.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 0, !dbg !820 | |
store void (%_Z3foov.Frame*)* null, void (%_Z3foov.Frame*)** %ResumeFn.addr, !dbg !820 | |
br label %AfterCoroSave54, !dbg !820 | |
AfterCoroSave54: ; preds = %CoroSave53 | |
%ref.tmp37.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 17, !dbg !820 | |
%agg.tmp36.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 16, !dbg !820 | |
%ref.tmp33.reload.addr69 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 15, !dbg !820 | |
%call38 = call i8* @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv(i8* %vFrame) #2, !dbg !820 | |
%coerce.dive39 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp37.reload.addr, i32 0, i32 0, !dbg !820 | |
%coerce.dive40 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive39, i32 0, i32 0, !dbg !820 | |
store i8* %call38, i8** %coerce.dive40, align 8, !dbg !820 | |
%20 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp37.reload.addr to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !820 | |
%21 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp36.reload.addr to i8*, !dbg !820 | |
%22 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %20 to i8*, !dbg !820 | |
call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %21, i8* align 8 %22, i64 8, i1 false), !dbg !820 | |
%coerce.dive41 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp36.reload.addr, i32 0, i32 0, !dbg !820 | |
%23 = load i8*, i8** %coerce.dive41, align 8, !dbg !820 | |
call void @_ZNKSt12experimental13coroutines_v113suspend_never13await_suspendENS0_16coroutine_handleIvEE(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp33.reload.addr69, i8* %23) #2, !dbg !820 | |
br label %CoroSuspend55, !dbg !820 | |
CoroSuspend55: ; preds = %AfterCoroSave54 | |
br label %resume.3.landing, !dbg !820 | |
resume.3.landing: ; preds = %CoroSuspend55 | |
br label %AfterCoroSuspend56, !dbg !820 | |
AfterCoroSuspend56: ; preds = %resume.3.landing | |
switch i8 -1, label %coro.ret [ | |
i8 0, label %final.ready | |
i8 1, label %final.cleanup | |
], !dbg !820 | |
final.cleanup: ; preds = %AfterCoroSuspend56 | |
br label %cleanup.from.final.cleanup, !dbg !820 | |
cleanup.from.final.cleanup: ; preds = %final.cleanup | |
%.cleanup57 = phi i32 [ 2, %final.cleanup ] | |
br label %cleanup, !dbg !820 | |
final.ready: ; preds = %AfterCoroSuspend56, %coro.final | |
%ref.tmp33.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 15, !dbg !820 | |
call void @_ZNKSt12experimental13coroutines_v113suspend_never12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp33.reload.addr) #2, !dbg !820 | |
br label %cleanup.from.final.ready, !dbg !820 | |
cleanup.from.final.ready: ; preds = %final.ready | |
%.cleanup = phi i32 [ 0, %final.ready ] | |
br label %cleanup, !dbg !820 | |
cleanup: ; preds = %cleanup.from.final.ready, %cleanup.from.final.cleanup, %cleanup.from.await2.cleanup, %cleanup.from.await.cleanup, %cleanup.from.init.cleanup | |
%cleanup.dest.slot.0 = phi i32 [ %.cleanup, %cleanup.from.final.ready ], [ %.cleanup57, %cleanup.from.final.cleanup ], [ %.cleanup58, %cleanup.from.await2.cleanup ], [ %.cleanup59, %cleanup.from.await.cleanup ], [ %.cleanup60, %cleanup.from.init.cleanup ] | |
%24 = icmp ne i8* %vFrame, null, !dbg !820 | |
br i1 %24, label %coro.free, label %after.coro.free, !dbg !820 | |
coro.free: ; preds = %cleanup | |
call void @_ZdlPv(i8* %vFrame) #2, !dbg !820 | |
br label %after.coro.free, !dbg !820 | |
after.coro.free: ; preds = %coro.free, %cleanup | |
switch i32 %cleanup.dest.slot.0, label %unreachable [ | |
i32 0, label %cleanup.cont | |
i32 2, label %coro.ret | |
] | |
cleanup.cont: ; preds = %after.coro.free | |
br label %coro.ret, !dbg !820 | |
coro.ret: ; preds = %cleanup.cont, %after.coro.free, %AfterCoroSuspend56, %AfterCoroSuspend52, %AfterCoroSuspend48, %AfterCoroSuspend | |
br label %CoroEnd, !dbg !820 | |
CoroEnd: ; preds = %coro.ret | |
ret void, !dbg !820 | |
unreachable: ; preds = %after.coro.free | |
unreachable | |
resume.entry: ; preds = %entry.resume | |
%index.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 3 | |
%index = load i2, i2* %index.addr | |
switch i2 %index, label %unreachable71 [ | |
i2 0, label %resume.0 | |
i2 1, label %resume.1 | |
i2 -2, label %resume.2 | |
] | |
unreachable71: ; preds = %resume.entry | |
unreachable, !dbg !820 | |
} | |
; Function Attrs: noinline nounwind optnone uwtable | |
define internal fastcc void @_Z3foov.destroy(%_Z3foov.Frame* noalias nonnull %FramePtr) #0 !dbg !844 { | |
entry.destroy: | |
%vFrame = bitcast %_Z3foov.Frame* %FramePtr to i8*, !dbg !845 | |
%__promise = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 2, !dbg !845 | |
%ref.tmp = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 4, !dbg !845 | |
br label %resume.entry, !dbg !845 | |
resume.0: ; preds = %Switch | |
br label %resume.0.landing, !dbg !846 | |
resume.0.landing: ; preds = %resume.0 | |
br label %AfterCoroSuspend, !dbg !846 | |
AfterCoroSuspend: ; preds = %resume.0.landing | |
switch i8 1, label %coro.ret [ | |
i8 0, label %init.ready | |
i8 1, label %init.cleanup | |
], !dbg !846 | |
init.cleanup: ; preds = %AfterCoroSuspend | |
br label %cleanup.from.init.cleanup, !dbg !846 | |
cleanup.from.init.cleanup: ; preds = %init.cleanup | |
%.cleanup60 = phi i32 [ 2, %init.cleanup ] | |
br label %cleanup, !dbg !846 | |
init.ready: ; preds = %AfterCoroSuspend | |
%ref.tmp11.reload.addr65 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 8, !dbg !846 | |
%i.reload.addr63 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 7, !dbg !846 | |
%ref.tmp.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 4, !dbg !846 | |
call void @_ZNKSt12experimental13coroutines_v113suspend_never12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp.reload.addr) #2, !dbg !846 | |
call void @llvm.dbg.value(metadata i32 0, metadata !847, metadata !DIExpression()), !dbg !849 | |
store i32 0, i32* %i.reload.addr63, align 4, !dbg !850 | |
%0 = load i32, i32* %i.reload.addr63, align 4, !dbg !851 | |
call void @llvm.dbg.value(metadata i32 %0, metadata !847, metadata !DIExpression()), !dbg !849 | |
%inc = add nsw i32 %0, 1, !dbg !851 | |
call void @llvm.dbg.value(metadata i32 %inc, metadata !847, metadata !DIExpression()), !dbg !849 | |
store i32 %inc, i32* %i.reload.addr63, align 4, !dbg !851 | |
%1 = load i32, i32* %i.reload.addr63, align 4, !dbg !852 | |
call void @llvm.dbg.value(metadata i32 %1, metadata !847, metadata !DIExpression()), !dbg !849 | |
%call10 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str, i64 0, i64 0), i32 %1), !dbg !853 | |
%call12 = call zeroext i1 @_ZNKSt12experimental13coroutines_v114suspend_always11await_readyEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp11.reload.addr65) #2, !dbg !854 | |
br i1 %call12, label %await.ready, label %CoroSave45, !dbg !855 | |
CoroSave45: ; preds = %init.ready | |
%index.addr73 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 3, !dbg !855 | |
store i2 1, i2* %index.addr73, !dbg !855 | |
br label %AfterCoroSave46, !dbg !854 | |
AfterCoroSave46: ; preds = %CoroSave45 | |
%ref.tmp14.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 10, !dbg !854 | |
%agg.tmp13.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 9, !dbg !854 | |
%ref.tmp11.reload.addr64 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 8, !dbg !854 | |
%call15 = call i8* @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv(i8* %vFrame) #2, !dbg !854 | |
%coerce.dive16 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp14.reload.addr, i32 0, i32 0, !dbg !854 | |
%coerce.dive17 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive16, i32 0, i32 0, !dbg !854 | |
store i8* %call15, i8** %coerce.dive17, align 8, !dbg !854 | |
%2 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp14.reload.addr to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !854 | |
%3 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp13.reload.addr to i8*, !dbg !854 | |
%4 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %2 to i8*, !dbg !854 | |
call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %3, i8* align 8 %4, i64 8, i1 false), !dbg !854 | |
%coerce.dive18 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp13.reload.addr, i32 0, i32 0, !dbg !854 | |
%5 = load i8*, i8** %coerce.dive18, align 8, !dbg !854 | |
call void @_ZNKSt12experimental13coroutines_v114suspend_always13await_suspendENS0_16coroutine_handleIvEE(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp11.reload.addr64, i8* %5) #2, !dbg !854 | |
br label %CoroSuspend47, !dbg !855 | |
CoroSuspend47: ; preds = %AfterCoroSave46 | |
br label %resume.1.landing, !dbg !855 | |
resume.1: ; preds = %Switch | |
br label %resume.1.landing, !dbg !855 | |
resume.1.landing: ; preds = %resume.1, %CoroSuspend47 | |
%6 = phi i8 [ -1, %CoroSuspend47 ], [ 1, %resume.1 ] | |
br label %AfterCoroSuspend48, !dbg !855 | |
AfterCoroSuspend48: ; preds = %resume.1.landing | |
switch i8 %6, label %coro.ret [ | |
i8 0, label %await.ready | |
i8 1, label %await.cleanup | |
], !dbg !855 | |
await.cleanup: ; preds = %AfterCoroSuspend48 | |
br label %cleanup.from.await.cleanup, !dbg !855 | |
cleanup.from.await.cleanup: ; preds = %await.cleanup | |
%.cleanup59 = phi i32 [ 2, %await.cleanup ] | |
br label %cleanup, !dbg !855 | |
await.ready: ; preds = %AfterCoroSuspend48, %init.ready | |
%ref.tmp22.reload.addr68 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 12, !dbg !854 | |
%j.reload.addr66 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 11, !dbg !854 | |
%ref.tmp11.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 8, !dbg !854 | |
%i.reload.addr62 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 7, !dbg !854 | |
call void @_ZNKSt12experimental13coroutines_v114suspend_always12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp11.reload.addr) #2, !dbg !854 | |
call void @llvm.dbg.value(metadata i32 0, metadata !856, metadata !DIExpression()), !dbg !849 | |
store i32 0, i32* %j.reload.addr66, align 4, !dbg !857 | |
%7 = load i32, i32* %i.reload.addr62, align 4, !dbg !858 | |
call void @llvm.dbg.value(metadata i32 %7, metadata !847, metadata !DIExpression()), !dbg !849 | |
%inc19 = add nsw i32 %7, 1, !dbg !858 | |
call void @llvm.dbg.value(metadata i32 %inc19, metadata !847, metadata !DIExpression()), !dbg !849 | |
store i32 %inc19, i32* %i.reload.addr62, align 4, !dbg !858 | |
%8 = load i32, i32* %j.reload.addr66, align 4, !dbg !859 | |
call void @llvm.dbg.value(metadata i32 %8, metadata !856, metadata !DIExpression()), !dbg !849 | |
%inc20 = add nsw i32 %8, 1, !dbg !859 | |
call void @llvm.dbg.value(metadata i32 %inc20, metadata !856, metadata !DIExpression()), !dbg !849 | |
store i32 %inc20, i32* %j.reload.addr66, align 4, !dbg !859 | |
%9 = load i32, i32* %i.reload.addr62, align 4, !dbg !860 | |
call void @llvm.dbg.value(metadata i32 %9, metadata !847, metadata !DIExpression()), !dbg !849 | |
%10 = load i32, i32* %j.reload.addr66, align 4, !dbg !861 | |
call void @llvm.dbg.value(metadata i32 %10, metadata !856, metadata !DIExpression()), !dbg !849 | |
%call21 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.1, i64 0, i64 0), i32 %9, i32 %10), !dbg !862 | |
%call23 = call zeroext i1 @_ZNKSt12experimental13coroutines_v114suspend_always11await_readyEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp22.reload.addr68) #2, !dbg !863 | |
br i1 %call23, label %await2.ready, label %CoroSave49, !dbg !864 | |
CoroSave49: ; preds = %await.ready | |
%index.addr74 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 3, !dbg !864 | |
store i2 -2, i2* %index.addr74, !dbg !864 | |
br label %AfterCoroSave50, !dbg !863 | |
AfterCoroSave50: ; preds = %CoroSave49 | |
%ref.tmp25.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 14, !dbg !863 | |
%agg.tmp24.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 13, !dbg !863 | |
%ref.tmp22.reload.addr67 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 12, !dbg !863 | |
%call26 = call i8* @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv(i8* %vFrame) #2, !dbg !863 | |
%coerce.dive27 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp25.reload.addr, i32 0, i32 0, !dbg !863 | |
%coerce.dive28 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive27, i32 0, i32 0, !dbg !863 | |
store i8* %call26, i8** %coerce.dive28, align 8, !dbg !863 | |
%11 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp25.reload.addr to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !863 | |
%12 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp24.reload.addr to i8*, !dbg !863 | |
%13 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %11 to i8*, !dbg !863 | |
call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %12, i8* align 8 %13, i64 8, i1 false), !dbg !863 | |
%coerce.dive29 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp24.reload.addr, i32 0, i32 0, !dbg !863 | |
%14 = load i8*, i8** %coerce.dive29, align 8, !dbg !863 | |
call void @_ZNKSt12experimental13coroutines_v114suspend_always13await_suspendENS0_16coroutine_handleIvEE(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp22.reload.addr67, i8* %14) #2, !dbg !863 | |
br label %CoroSuspend51, !dbg !864 | |
CoroSuspend51: ; preds = %AfterCoroSave50 | |
br label %resume.2.landing, !dbg !864 | |
resume.2: ; preds = %Switch | |
br label %resume.2.landing, !dbg !864 | |
resume.2.landing: ; preds = %resume.2, %CoroSuspend51 | |
%15 = phi i8 [ -1, %CoroSuspend51 ], [ 1, %resume.2 ] | |
br label %AfterCoroSuspend52, !dbg !864 | |
AfterCoroSuspend52: ; preds = %resume.2.landing | |
switch i8 %15, label %coro.ret [ | |
i8 0, label %await2.ready | |
i8 1, label %await2.cleanup | |
], !dbg !864 | |
await2.cleanup: ; preds = %AfterCoroSuspend52 | |
br label %cleanup.from.await2.cleanup, !dbg !864 | |
cleanup.from.await2.cleanup: ; preds = %await2.cleanup | |
%.cleanup58 = phi i32 [ 2, %await2.cleanup ] | |
br label %cleanup, !dbg !864 | |
await2.ready: ; preds = %AfterCoroSuspend52, %await.ready | |
%ref.tmp22.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 12, !dbg !863 | |
%j.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 11, !dbg !863 | |
%i.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 7, !dbg !863 | |
call void @_ZNKSt12experimental13coroutines_v114suspend_always12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp22.reload.addr) #2, !dbg !863 | |
%16 = load i32, i32* %i.reload.addr, align 4, !dbg !865 | |
call void @llvm.dbg.value(metadata i32 %16, metadata !847, metadata !DIExpression()), !dbg !849 | |
%inc30 = add nsw i32 %16, 1, !dbg !865 | |
call void @llvm.dbg.value(metadata i32 %inc30, metadata !847, metadata !DIExpression()), !dbg !849 | |
store i32 %inc30, i32* %i.reload.addr, align 4, !dbg !865 | |
%17 = load i32, i32* %j.reload.addr, align 4, !dbg !866 | |
call void @llvm.dbg.value(metadata i32 %17, metadata !856, metadata !DIExpression()), !dbg !849 | |
%inc31 = add nsw i32 %17, 1, !dbg !866 | |
call void @llvm.dbg.value(metadata i32 %inc31, metadata !856, metadata !DIExpression()), !dbg !849 | |
store i32 %inc31, i32* %j.reload.addr, align 4, !dbg !866 | |
%18 = load i32, i32* %j.reload.addr, align 4, !dbg !867 | |
call void @llvm.dbg.value(metadata i32 %18, metadata !856, metadata !DIExpression()), !dbg !849 | |
%19 = load i32, i32* %i.reload.addr, align 4, !dbg !868 | |
call void @llvm.dbg.value(metadata i32 %19, metadata !847, metadata !DIExpression()), !dbg !849 | |
%call32 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.1, i64 0, i64 0), i32 %18, i32 %19), !dbg !869 | |
call void @_ZN4coro12promise_type11return_voidEv(%"struct.coro::promise_type"* %__promise), !dbg !846 | |
br label %coro.final, !dbg !846 | |
coro.final: ; preds = %await2.ready | |
%ref.tmp33.reload.addr70 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 15, !dbg !846 | |
call void @_ZN4coro12promise_type13final_suspendEv(%"struct.coro::promise_type"* %__promise), !dbg !846 | |
%call35 = call zeroext i1 @_ZNKSt12experimental13coroutines_v113suspend_never11await_readyEv(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp33.reload.addr70) #2, !dbg !846 | |
br i1 %call35, label %final.ready, label %CoroSave53, !dbg !846 | |
CoroSave53: ; preds = %coro.final | |
%ResumeFn.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 0, !dbg !846 | |
store void (%_Z3foov.Frame*)* null, void (%_Z3foov.Frame*)** %ResumeFn.addr, !dbg !846 | |
br label %AfterCoroSave54, !dbg !846 | |
AfterCoroSave54: ; preds = %CoroSave53 | |
%ref.tmp37.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 17, !dbg !846 | |
%agg.tmp36.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 16, !dbg !846 | |
%ref.tmp33.reload.addr69 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 15, !dbg !846 | |
%call38 = call i8* @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv(i8* %vFrame) #2, !dbg !846 | |
%coerce.dive39 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp37.reload.addr, i32 0, i32 0, !dbg !846 | |
%coerce.dive40 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive39, i32 0, i32 0, !dbg !846 | |
store i8* %call38, i8** %coerce.dive40, align 8, !dbg !846 | |
%20 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp37.reload.addr to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !846 | |
%21 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp36.reload.addr to i8*, !dbg !846 | |
%22 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %20 to i8*, !dbg !846 | |
call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %21, i8* align 8 %22, i64 8, i1 false), !dbg !846 | |
%coerce.dive41 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp36.reload.addr, i32 0, i32 0, !dbg !846 | |
%23 = load i8*, i8** %coerce.dive41, align 8, !dbg !846 | |
call void @_ZNKSt12experimental13coroutines_v113suspend_never13await_suspendENS0_16coroutine_handleIvEE(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp33.reload.addr69, i8* %23) #2, !dbg !846 | |
br label %CoroSuspend55, !dbg !846 | |
CoroSuspend55: ; preds = %AfterCoroSave54 | |
br label %resume.3.landing, !dbg !846 | |
resume.3: ; preds = %resume.entry | |
br label %resume.3.landing, !dbg !846 | |
resume.3.landing: ; preds = %resume.3, %CoroSuspend55 | |
%24 = phi i8 [ -1, %CoroSuspend55 ], [ 1, %resume.3 ] | |
br label %AfterCoroSuspend56, !dbg !846 | |
AfterCoroSuspend56: ; preds = %resume.3.landing | |
switch i8 %24, label %coro.ret [ | |
i8 0, label %final.ready | |
i8 1, label %final.cleanup | |
], !dbg !846 | |
final.cleanup: ; preds = %AfterCoroSuspend56 | |
br label %cleanup.from.final.cleanup, !dbg !846 | |
cleanup.from.final.cleanup: ; preds = %final.cleanup | |
%.cleanup57 = phi i32 [ 2, %final.cleanup ] | |
br label %cleanup, !dbg !846 | |
final.ready: ; preds = %AfterCoroSuspend56, %coro.final | |
%ref.tmp33.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 15, !dbg !846 | |
call void @_ZNKSt12experimental13coroutines_v113suspend_never12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp33.reload.addr) #2, !dbg !846 | |
br label %cleanup.from.final.ready, !dbg !846 | |
cleanup.from.final.ready: ; preds = %final.ready | |
%.cleanup = phi i32 [ 0, %final.ready ] | |
br label %cleanup, !dbg !846 | |
cleanup: ; preds = %cleanup.from.final.ready, %cleanup.from.final.cleanup, %cleanup.from.await2.cleanup, %cleanup.from.await.cleanup, %cleanup.from.init.cleanup | |
%cleanup.dest.slot.0 = phi i32 [ %.cleanup, %cleanup.from.final.ready ], [ %.cleanup57, %cleanup.from.final.cleanup ], [ %.cleanup58, %cleanup.from.await2.cleanup ], [ %.cleanup59, %cleanup.from.await.cleanup ], [ %.cleanup60, %cleanup.from.init.cleanup ] | |
%25 = icmp ne i8* %vFrame, null, !dbg !846 | |
br i1 %25, label %coro.free, label %after.coro.free, !dbg !846 | |
coro.free: ; preds = %cleanup | |
call void @_ZdlPv(i8* %vFrame) #2, !dbg !846 | |
br label %after.coro.free, !dbg !846 | |
after.coro.free: ; preds = %coro.free, %cleanup | |
switch i32 %cleanup.dest.slot.0, label %unreachable [ | |
i32 0, label %cleanup.cont | |
i32 2, label %coro.ret | |
] | |
cleanup.cont: ; preds = %after.coro.free | |
br label %coro.ret, !dbg !846 | |
coro.ret: ; preds = %cleanup.cont, %after.coro.free, %AfterCoroSuspend56, %AfterCoroSuspend52, %AfterCoroSuspend48, %AfterCoroSuspend | |
br label %CoroEnd, !dbg !846 | |
CoroEnd: ; preds = %coro.ret | |
ret void, !dbg !846 | |
unreachable: ; preds = %after.coro.free | |
unreachable | |
resume.entry: ; preds = %entry.destroy | |
%index.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 3 | |
%index = load i2, i2* %index.addr | |
%ResumeFn.addr1 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 0 | |
%26 = load void (%_Z3foov.Frame*)*, void (%_Z3foov.Frame*)** %ResumeFn.addr1 | |
%27 = icmp eq void (%_Z3foov.Frame*)* %26, null | |
br i1 %27, label %resume.3, label %Switch | |
Switch: ; preds = %resume.entry | |
switch i2 %index, label %unreachable71 [ | |
i2 0, label %resume.0 | |
i2 1, label %resume.1 | |
i2 -2, label %resume.2 | |
] | |
unreachable71: ; preds = %Switch | |
unreachable, !dbg !846 | |
} | |
; Function Attrs: noinline nounwind optnone uwtable | |
define internal fastcc void @_Z3foov.cleanup(%_Z3foov.Frame* noalias nonnull %FramePtr) #0 !dbg !870 { | |
entry.cleanup: | |
%vFrame = bitcast %_Z3foov.Frame* %FramePtr to i8*, !dbg !871 | |
%__promise = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 2, !dbg !871 | |
%ref.tmp = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 4, !dbg !871 | |
br label %resume.entry, !dbg !871 | |
resume.0: ; preds = %Switch | |
br label %resume.0.landing, !dbg !872 | |
resume.0.landing: ; preds = %resume.0 | |
br label %AfterCoroSuspend, !dbg !872 | |
AfterCoroSuspend: ; preds = %resume.0.landing | |
switch i8 1, label %coro.ret [ | |
i8 0, label %init.ready | |
i8 1, label %init.cleanup | |
], !dbg !872 | |
init.cleanup: ; preds = %AfterCoroSuspend | |
br label %cleanup.from.init.cleanup, !dbg !872 | |
cleanup.from.init.cleanup: ; preds = %init.cleanup | |
%.cleanup60 = phi i32 [ 2, %init.cleanup ] | |
br label %cleanup, !dbg !872 | |
init.ready: ; preds = %AfterCoroSuspend | |
%ref.tmp11.reload.addr65 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 8, !dbg !872 | |
%i.reload.addr63 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 7, !dbg !872 | |
%ref.tmp.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 4, !dbg !872 | |
call void @_ZNKSt12experimental13coroutines_v113suspend_never12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp.reload.addr) #2, !dbg !872 | |
call void @llvm.dbg.value(metadata i32 0, metadata !873, metadata !DIExpression()), !dbg !875 | |
store i32 0, i32* %i.reload.addr63, align 4, !dbg !876 | |
%0 = load i32, i32* %i.reload.addr63, align 4, !dbg !877 | |
call void @llvm.dbg.value(metadata i32 %0, metadata !873, metadata !DIExpression()), !dbg !875 | |
%inc = add nsw i32 %0, 1, !dbg !877 | |
call void @llvm.dbg.value(metadata i32 %inc, metadata !873, metadata !DIExpression()), !dbg !875 | |
store i32 %inc, i32* %i.reload.addr63, align 4, !dbg !877 | |
%1 = load i32, i32* %i.reload.addr63, align 4, !dbg !878 | |
call void @llvm.dbg.value(metadata i32 %1, metadata !873, metadata !DIExpression()), !dbg !875 | |
%call10 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str, i64 0, i64 0), i32 %1), !dbg !879 | |
%call12 = call zeroext i1 @_ZNKSt12experimental13coroutines_v114suspend_always11await_readyEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp11.reload.addr65) #2, !dbg !880 | |
br i1 %call12, label %await.ready, label %CoroSave45, !dbg !881 | |
CoroSave45: ; preds = %init.ready | |
%index.addr73 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 3, !dbg !881 | |
store i2 1, i2* %index.addr73, !dbg !881 | |
br label %AfterCoroSave46, !dbg !880 | |
AfterCoroSave46: ; preds = %CoroSave45 | |
%ref.tmp14.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 10, !dbg !880 | |
%agg.tmp13.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 9, !dbg !880 | |
%ref.tmp11.reload.addr64 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 8, !dbg !880 | |
%call15 = call i8* @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv(i8* %vFrame) #2, !dbg !880 | |
%coerce.dive16 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp14.reload.addr, i32 0, i32 0, !dbg !880 | |
%coerce.dive17 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive16, i32 0, i32 0, !dbg !880 | |
store i8* %call15, i8** %coerce.dive17, align 8, !dbg !880 | |
%2 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp14.reload.addr to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !880 | |
%3 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp13.reload.addr to i8*, !dbg !880 | |
%4 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %2 to i8*, !dbg !880 | |
call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %3, i8* align 8 %4, i64 8, i1 false), !dbg !880 | |
%coerce.dive18 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp13.reload.addr, i32 0, i32 0, !dbg !880 | |
%5 = load i8*, i8** %coerce.dive18, align 8, !dbg !880 | |
call void @_ZNKSt12experimental13coroutines_v114suspend_always13await_suspendENS0_16coroutine_handleIvEE(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp11.reload.addr64, i8* %5) #2, !dbg !880 | |
br label %CoroSuspend47, !dbg !881 | |
CoroSuspend47: ; preds = %AfterCoroSave46 | |
br label %resume.1.landing, !dbg !881 | |
resume.1: ; preds = %Switch | |
br label %resume.1.landing, !dbg !881 | |
resume.1.landing: ; preds = %resume.1, %CoroSuspend47 | |
%6 = phi i8 [ -1, %CoroSuspend47 ], [ 1, %resume.1 ] | |
br label %AfterCoroSuspend48, !dbg !881 | |
AfterCoroSuspend48: ; preds = %resume.1.landing | |
switch i8 %6, label %coro.ret [ | |
i8 0, label %await.ready | |
i8 1, label %await.cleanup | |
], !dbg !881 | |
await.cleanup: ; preds = %AfterCoroSuspend48 | |
br label %cleanup.from.await.cleanup, !dbg !881 | |
cleanup.from.await.cleanup: ; preds = %await.cleanup | |
%.cleanup59 = phi i32 [ 2, %await.cleanup ] | |
br label %cleanup, !dbg !881 | |
await.ready: ; preds = %AfterCoroSuspend48, %init.ready | |
%ref.tmp22.reload.addr68 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 12, !dbg !880 | |
%j.reload.addr66 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 11, !dbg !880 | |
%ref.tmp11.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 8, !dbg !880 | |
%i.reload.addr62 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 7, !dbg !880 | |
call void @_ZNKSt12experimental13coroutines_v114suspend_always12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp11.reload.addr) #2, !dbg !880 | |
call void @llvm.dbg.value(metadata i32 0, metadata !882, metadata !DIExpression()), !dbg !875 | |
store i32 0, i32* %j.reload.addr66, align 4, !dbg !883 | |
%7 = load i32, i32* %i.reload.addr62, align 4, !dbg !884 | |
call void @llvm.dbg.value(metadata i32 %7, metadata !873, metadata !DIExpression()), !dbg !875 | |
%inc19 = add nsw i32 %7, 1, !dbg !884 | |
call void @llvm.dbg.value(metadata i32 %inc19, metadata !873, metadata !DIExpression()), !dbg !875 | |
store i32 %inc19, i32* %i.reload.addr62, align 4, !dbg !884 | |
%8 = load i32, i32* %j.reload.addr66, align 4, !dbg !885 | |
call void @llvm.dbg.value(metadata i32 %8, metadata !882, metadata !DIExpression()), !dbg !875 | |
%inc20 = add nsw i32 %8, 1, !dbg !885 | |
call void @llvm.dbg.value(metadata i32 %inc20, metadata !882, metadata !DIExpression()), !dbg !875 | |
store i32 %inc20, i32* %j.reload.addr66, align 4, !dbg !885 | |
%9 = load i32, i32* %i.reload.addr62, align 4, !dbg !886 | |
call void @llvm.dbg.value(metadata i32 %9, metadata !873, metadata !DIExpression()), !dbg !875 | |
%10 = load i32, i32* %j.reload.addr66, align 4, !dbg !887 | |
call void @llvm.dbg.value(metadata i32 %10, metadata !882, metadata !DIExpression()), !dbg !875 | |
%call21 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.1, i64 0, i64 0), i32 %9, i32 %10), !dbg !888 | |
%call23 = call zeroext i1 @_ZNKSt12experimental13coroutines_v114suspend_always11await_readyEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp22.reload.addr68) #2, !dbg !889 | |
br i1 %call23, label %await2.ready, label %CoroSave49, !dbg !890 | |
CoroSave49: ; preds = %await.ready | |
%index.addr74 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 3, !dbg !890 | |
store i2 -2, i2* %index.addr74, !dbg !890 | |
br label %AfterCoroSave50, !dbg !889 | |
AfterCoroSave50: ; preds = %CoroSave49 | |
%ref.tmp25.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 14, !dbg !889 | |
%agg.tmp24.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 13, !dbg !889 | |
%ref.tmp22.reload.addr67 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 12, !dbg !889 | |
%call26 = call i8* @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv(i8* %vFrame) #2, !dbg !889 | |
%coerce.dive27 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp25.reload.addr, i32 0, i32 0, !dbg !889 | |
%coerce.dive28 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive27, i32 0, i32 0, !dbg !889 | |
store i8* %call26, i8** %coerce.dive28, align 8, !dbg !889 | |
%11 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp25.reload.addr to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !889 | |
%12 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp24.reload.addr to i8*, !dbg !889 | |
%13 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %11 to i8*, !dbg !889 | |
call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %12, i8* align 8 %13, i64 8, i1 false), !dbg !889 | |
%coerce.dive29 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp24.reload.addr, i32 0, i32 0, !dbg !889 | |
%14 = load i8*, i8** %coerce.dive29, align 8, !dbg !889 | |
call void @_ZNKSt12experimental13coroutines_v114suspend_always13await_suspendENS0_16coroutine_handleIvEE(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp22.reload.addr67, i8* %14) #2, !dbg !889 | |
br label %CoroSuspend51, !dbg !890 | |
CoroSuspend51: ; preds = %AfterCoroSave50 | |
br label %resume.2.landing, !dbg !890 | |
resume.2: ; preds = %Switch | |
br label %resume.2.landing, !dbg !890 | |
resume.2.landing: ; preds = %resume.2, %CoroSuspend51 | |
%15 = phi i8 [ -1, %CoroSuspend51 ], [ 1, %resume.2 ] | |
br label %AfterCoroSuspend52, !dbg !890 | |
AfterCoroSuspend52: ; preds = %resume.2.landing | |
switch i8 %15, label %coro.ret [ | |
i8 0, label %await2.ready | |
i8 1, label %await2.cleanup | |
], !dbg !890 | |
await2.cleanup: ; preds = %AfterCoroSuspend52 | |
br label %cleanup.from.await2.cleanup, !dbg !890 | |
cleanup.from.await2.cleanup: ; preds = %await2.cleanup | |
%.cleanup58 = phi i32 [ 2, %await2.cleanup ] | |
br label %cleanup, !dbg !890 | |
await2.ready: ; preds = %AfterCoroSuspend52, %await.ready | |
%ref.tmp22.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 12, !dbg !889 | |
%j.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 11, !dbg !889 | |
%i.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 7, !dbg !889 | |
call void @_ZNKSt12experimental13coroutines_v114suspend_always12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_always"* %ref.tmp22.reload.addr) #2, !dbg !889 | |
%16 = load i32, i32* %i.reload.addr, align 4, !dbg !891 | |
call void @llvm.dbg.value(metadata i32 %16, metadata !873, metadata !DIExpression()), !dbg !875 | |
%inc30 = add nsw i32 %16, 1, !dbg !891 | |
call void @llvm.dbg.value(metadata i32 %inc30, metadata !873, metadata !DIExpression()), !dbg !875 | |
store i32 %inc30, i32* %i.reload.addr, align 4, !dbg !891 | |
%17 = load i32, i32* %j.reload.addr, align 4, !dbg !892 | |
call void @llvm.dbg.value(metadata i32 %17, metadata !882, metadata !DIExpression()), !dbg !875 | |
%inc31 = add nsw i32 %17, 1, !dbg !892 | |
call void @llvm.dbg.value(metadata i32 %inc31, metadata !882, metadata !DIExpression()), !dbg !875 | |
store i32 %inc31, i32* %j.reload.addr, align 4, !dbg !892 | |
%18 = load i32, i32* %j.reload.addr, align 4, !dbg !893 | |
call void @llvm.dbg.value(metadata i32 %18, metadata !882, metadata !DIExpression()), !dbg !875 | |
%19 = load i32, i32* %i.reload.addr, align 4, !dbg !894 | |
call void @llvm.dbg.value(metadata i32 %19, metadata !873, metadata !DIExpression()), !dbg !875 | |
%call32 = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.1, i64 0, i64 0), i32 %18, i32 %19), !dbg !895 | |
call void @_ZN4coro12promise_type11return_voidEv(%"struct.coro::promise_type"* %__promise), !dbg !872 | |
br label %coro.final, !dbg !872 | |
coro.final: ; preds = %await2.ready | |
%ref.tmp33.reload.addr70 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 15, !dbg !872 | |
call void @_ZN4coro12promise_type13final_suspendEv(%"struct.coro::promise_type"* %__promise), !dbg !872 | |
%call35 = call zeroext i1 @_ZNKSt12experimental13coroutines_v113suspend_never11await_readyEv(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp33.reload.addr70) #2, !dbg !872 | |
br i1 %call35, label %final.ready, label %CoroSave53, !dbg !872 | |
CoroSave53: ; preds = %coro.final | |
%ResumeFn.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 0, !dbg !872 | |
store void (%_Z3foov.Frame*)* null, void (%_Z3foov.Frame*)** %ResumeFn.addr, !dbg !872 | |
br label %AfterCoroSave54, !dbg !872 | |
AfterCoroSave54: ; preds = %CoroSave53 | |
%ref.tmp37.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 17, !dbg !872 | |
%agg.tmp36.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 16, !dbg !872 | |
%ref.tmp33.reload.addr69 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 15, !dbg !872 | |
%call38 = call i8* @_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv(i8* %vFrame) #2, !dbg !872 | |
%coerce.dive39 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle", %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp37.reload.addr, i32 0, i32 0, !dbg !872 | |
%coerce.dive40 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %coerce.dive39, i32 0, i32 0, !dbg !872 | |
store i8* %call38, i8** %coerce.dive40, align 8, !dbg !872 | |
%20 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle"* %ref.tmp37.reload.addr to %"class.std::experimental::coroutines_v1::coroutine_handle.0"*, !dbg !872 | |
%21 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp36.reload.addr to i8*, !dbg !872 | |
%22 = bitcast %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %20 to i8*, !dbg !872 | |
call void @llvm.memcpy.p0i8.p0i8.i64(i8* align 8 %21, i8* align 8 %22, i64 8, i1 false), !dbg !872 | |
%coerce.dive41 = getelementptr inbounds %"class.std::experimental::coroutines_v1::coroutine_handle.0", %"class.std::experimental::coroutines_v1::coroutine_handle.0"* %agg.tmp36.reload.addr, i32 0, i32 0, !dbg !872 | |
%23 = load i8*, i8** %coerce.dive41, align 8, !dbg !872 | |
call void @_ZNKSt12experimental13coroutines_v113suspend_never13await_suspendENS0_16coroutine_handleIvEE(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp33.reload.addr69, i8* %23) #2, !dbg !872 | |
br label %CoroSuspend55, !dbg !872 | |
CoroSuspend55: ; preds = %AfterCoroSave54 | |
br label %resume.3.landing, !dbg !872 | |
resume.3: ; preds = %resume.entry | |
br label %resume.3.landing, !dbg !872 | |
resume.3.landing: ; preds = %resume.3, %CoroSuspend55 | |
%24 = phi i8 [ -1, %CoroSuspend55 ], [ 1, %resume.3 ] | |
br label %AfterCoroSuspend56, !dbg !872 | |
AfterCoroSuspend56: ; preds = %resume.3.landing | |
switch i8 %24, label %coro.ret [ | |
i8 0, label %final.ready | |
i8 1, label %final.cleanup | |
], !dbg !872 | |
final.cleanup: ; preds = %AfterCoroSuspend56 | |
br label %cleanup.from.final.cleanup, !dbg !872 | |
cleanup.from.final.cleanup: ; preds = %final.cleanup | |
%.cleanup57 = phi i32 [ 2, %final.cleanup ] | |
br label %cleanup, !dbg !872 | |
final.ready: ; preds = %AfterCoroSuspend56, %coro.final | |
%ref.tmp33.reload.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 15, !dbg !872 | |
call void @_ZNKSt12experimental13coroutines_v113suspend_never12await_resumeEv(%"struct.std::experimental::coroutines_v1::suspend_never"* %ref.tmp33.reload.addr) #2, !dbg !872 | |
br label %cleanup.from.final.ready, !dbg !872 | |
cleanup.from.final.ready: ; preds = %final.ready | |
%.cleanup = phi i32 [ 0, %final.ready ] | |
br label %cleanup, !dbg !872 | |
cleanup: ; preds = %cleanup.from.final.ready, %cleanup.from.final.cleanup, %cleanup.from.await2.cleanup, %cleanup.from.await.cleanup, %cleanup.from.init.cleanup | |
%cleanup.dest.slot.0 = phi i32 [ %.cleanup, %cleanup.from.final.ready ], [ %.cleanup57, %cleanup.from.final.cleanup ], [ %.cleanup58, %cleanup.from.await2.cleanup ], [ %.cleanup59, %cleanup.from.await.cleanup ], [ %.cleanup60, %cleanup.from.init.cleanup ] | |
%25 = icmp ne i8* null, null, !dbg !872 | |
br i1 %25, label %coro.free, label %after.coro.free, !dbg !872 | |
coro.free: ; preds = %cleanup | |
call void @_ZdlPv(i8* null) #2, !dbg !872 | |
br label %after.coro.free, !dbg !872 | |
after.coro.free: ; preds = %coro.free, %cleanup | |
switch i32 %cleanup.dest.slot.0, label %unreachable [ | |
i32 0, label %cleanup.cont | |
i32 2, label %coro.ret | |
] | |
cleanup.cont: ; preds = %after.coro.free | |
br label %coro.ret, !dbg !872 | |
coro.ret: ; preds = %cleanup.cont, %after.coro.free, %AfterCoroSuspend56, %AfterCoroSuspend52, %AfterCoroSuspend48, %AfterCoroSuspend | |
br label %CoroEnd, !dbg !872 | |
CoroEnd: ; preds = %coro.ret | |
ret void, !dbg !872 | |
unreachable: ; preds = %after.coro.free | |
unreachable | |
resume.entry: ; preds = %entry.cleanup | |
%index.addr = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 3 | |
%index = load i2, i2* %index.addr | |
%ResumeFn.addr1 = getelementptr inbounds %_Z3foov.Frame, %_Z3foov.Frame* %FramePtr, i32 0, i32 0 | |
%26 = load void (%_Z3foov.Frame*)*, void (%_Z3foov.Frame*)** %ResumeFn.addr1 | |
%27 = icmp eq void (%_Z3foov.Frame*)* %26, null | |
br i1 %27, label %resume.3, label %Switch | |
Switch: ; preds = %resume.entry | |
switch i2 %index, label %unreachable71 [ | |
i2 0, label %resume.0 | |
i2 1, label %resume.1 | |
i2 -2, label %resume.2 | |
] | |
unreachable71: ; preds = %Switch | |
unreachable, !dbg !872 | |
} | |
attributes #0 = { noinline nounwind optnone uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "min-legal-vector-width"="0" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" } | |
attributes #1 = { argmemonly nounwind readonly } | |
attributes #2 = { nounwind } | |
attributes #3 = { nobuiltin "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" } | |
attributes #4 = { nounwind readnone } | |
attributes #5 = { nounwind readnone speculatable willreturn } | |
attributes #6 = { argmemonly nounwind willreturn } | |
attributes #7 = { "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" } | |
attributes #8 = { nobuiltin nounwind "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" } | |
attributes #9 = { noinline norecurse nounwind optnone uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "min-legal-vector-width"="0" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" } | |
attributes #10 = { alwaysinline } | |
!llvm.dbg.cu = !{!0} | |
!llvm.linker.options = !{} | |
!llvm.module.flags = !{!644, !645, !646} | |
!llvm.ident = !{!647} | |
!0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus_14, file: !1, producer: "clang version 11.0.0 (https://github.com/llvm/llvm-project.git baafe82b07ade3fff4f2685199870b67083a17d5)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !2, retainedTypes: !3, imports: !108, splitDebugInlining: false, nameTableKind: None) | |
!1 = !DIFile(filename: "/home/modocache/Source/tmp/corodebug/test.cpp", directory: "/home/modocache/Source/tmp/corodebug") | |
!2 = !{} | |
!3 = !{!4} | |
!4 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "coro", file: !5, line: 6, size: 64, flags: DIFlagTypePassByValue | DIFlagNonTrivial, elements: !6, identifier: "_ZTS4coro") | |
!5 = !DIFile(filename: "test.cpp", directory: "/home/modocache/Source/tmp/corodebug") | |
!6 = !{!7, !104} | |
!7 = !DIDerivedType(tag: DW_TAG_member, name: "handle", scope: !4, file: !5, line: 18, baseType: !8, size: 64) | |
!8 = distinct !DICompositeType(tag: DW_TAG_class_type, name: "coroutine_handle<coro::promise_type>", scope: !10, file: !9, line: 196, size: 64, flags: DIFlagTypePassByValue | DIFlagNonTrivial, elements: !13, templateParams: !102, identifier: "_ZTSNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEEE") | |
!9 = !DIFile(filename: "llvm/git/dev/llvm-project/build/bin/../include/c++/v1/experimental/coroutine", directory: "/home/modocache/Source") | |
!10 = !DINamespace(name: "coroutines_v1", scope: !11, exportSymbols: true) | |
!11 = !DINamespace(name: "experimental", scope: !12) | |
!12 = !DINamespace(name: "std", scope: null) | |
!13 = !{!14, !55, !60, !93, !96, !99} | |
!14 = !DIDerivedType(tag: DW_TAG_inheritance, scope: !8, baseType: !15, flags: DIFlagPublic, extraData: i32 0) | |
!15 = distinct !DICompositeType(tag: DW_TAG_class_type, name: "coroutine_handle<void>", scope: !10, file: !9, line: 92, size: 64, flags: DIFlagTypePassByValue | DIFlagNonTrivial, elements: !16, templateParams: !53, identifier: "_ZTSNSt12experimental13coroutines_v116coroutine_handleIvEE") | |
!16 = !{!17, !19, !23, !29, !33, !38, !42, !43, !44, !45, !46, !49, !52} | |
!17 = !DIDerivedType(tag: DW_TAG_member, name: "__handle_", scope: !15, file: !9, line: 166, baseType: !18, size: 64) | |
!18 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: null, size: 64) | |
!19 = !DISubprogram(name: "coroutine_handle", scope: !15, file: !9, line: 95, type: !20, scopeLine: 95, flags: DIFlagPublic | DIFlagPrototyped, spFlags: 0) | |
!20 = !DISubroutineType(types: !21) | |
!21 = !{null, !22} | |
!22 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !15, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!23 = !DISubprogram(name: "coroutine_handle", scope: !15, file: !9, line: 98, type: !24, scopeLine: 98, flags: DIFlagPublic | DIFlagPrototyped, spFlags: 0) | |
!24 = !DISubroutineType(types: !25) | |
!25 = !{null, !22, !26} | |
!26 = !DIDerivedType(tag: DW_TAG_typedef, name: "nullptr_t", scope: !12, file: !27, line: 56, baseType: !28) | |
!27 = !DIFile(filename: "llvm/git/dev/llvm-project/build/bin/../include/c++/v1/__nullptr", directory: "/home/modocache/Source") | |
!28 = !DIBasicType(tag: DW_TAG_unspecified_type, name: "decltype(nullptr)") | |
!29 = !DISubprogram(name: "operator=", linkageName: "_ZNSt12experimental13coroutines_v116coroutine_handleIvEaSEDn", scope: !15, file: !9, line: 101, type: !30, scopeLine: 101, flags: DIFlagPublic | DIFlagPrototyped, spFlags: 0) | |
!30 = !DISubroutineType(types: !31) | |
!31 = !{!32, !22, !26} | |
!32 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !15, size: 64) | |
!33 = !DISubprogram(name: "address", linkageName: "_ZNKSt12experimental13coroutines_v116coroutine_handleIvE7addressEv", scope: !15, file: !9, line: 107, type: !34, scopeLine: 107, flags: DIFlagPublic | DIFlagPrototyped, spFlags: 0) | |
!34 = !DISubroutineType(types: !35) | |
!35 = !{!18, !36} | |
!36 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !37, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!37 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !15) | |
!38 = !DISubprogram(name: "operator bool", linkageName: "_ZNKSt12experimental13coroutines_v116coroutine_handleIvEcvbEv", scope: !15, file: !9, line: 110, type: !39, scopeLine: 110, flags: DIFlagPublic | DIFlagExplicit | DIFlagPrototyped, spFlags: 0) | |
!39 = !DISubroutineType(types: !40) | |
!40 = !{!41, !36} | |
!41 = !DIBasicType(name: "bool", size: 8, encoding: DW_ATE_boolean) | |
!42 = !DISubprogram(name: "operator()", linkageName: "_ZNSt12experimental13coroutines_v116coroutine_handleIvEclEv", scope: !15, file: !9, line: 113, type: !20, scopeLine: 113, flags: DIFlagPublic | DIFlagPrototyped, spFlags: 0) | |
!43 = !DISubprogram(name: "resume", linkageName: "_ZNSt12experimental13coroutines_v116coroutine_handleIvE6resumeEv", scope: !15, file: !9, line: 116, type: !20, scopeLine: 116, flags: DIFlagPublic | DIFlagPrototyped, spFlags: 0) | |
!44 = !DISubprogram(name: "destroy", linkageName: "_ZNSt12experimental13coroutines_v116coroutine_handleIvE7destroyEv", scope: !15, file: !9, line: 125, type: !20, scopeLine: 125, flags: DIFlagPublic | DIFlagPrototyped, spFlags: 0) | |
!45 = !DISubprogram(name: "done", linkageName: "_ZNKSt12experimental13coroutines_v116coroutine_handleIvE4doneEv", scope: !15, file: !9, line: 132, type: !39, scopeLine: 132, flags: DIFlagPublic | DIFlagPrototyped, spFlags: 0) | |
!46 = !DISubprogram(name: "from_address", linkageName: "_ZNSt12experimental13coroutines_v116coroutine_handleIvE12from_addressEPv", scope: !15, file: !9, line: 140, type: !47, scopeLine: 140, flags: DIFlagPublic | DIFlagPrototyped | DIFlagStaticMember, spFlags: 0) | |
!47 = !DISubroutineType(types: !48) | |
!48 = !{!15, !18} | |
!49 = !DISubprogram(name: "from_address", linkageName: "_ZNSt12experimental13coroutines_v116coroutine_handleIvE12from_addressEDn", scope: !15, file: !9, line: 148, type: !50, scopeLine: 148, flags: DIFlagPublic | DIFlagPrototyped | DIFlagStaticMember, spFlags: 0) | |
!50 = !DISubroutineType(types: !51) | |
!51 = !{!15, !26} | |
!52 = !DISubprogram(name: "__is_suspended", linkageName: "_ZNKSt12experimental13coroutines_v116coroutine_handleIvE14__is_suspendedEv", scope: !15, file: !9, line: 160, type: !39, scopeLine: 160, flags: DIFlagPrototyped, spFlags: 0) | |
!53 = !{!54} | |
!54 = !DITemplateTypeParameter(name: "_Promise", type: null) | |
!55 = !DISubprogram(name: "operator=", linkageName: "_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEEaSEDn", scope: !8, file: !9, line: 207, type: !56, scopeLine: 207, flags: DIFlagPublic | DIFlagPrototyped, spFlags: 0) | |
!56 = !DISubroutineType(types: !57) | |
!57 = !{!58, !59, !26} | |
!58 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !8, size: 64) | |
!59 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !8, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!60 = !DISubprogram(name: "promise", linkageName: "_ZNKSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE7promiseEv", scope: !8, file: !9, line: 213, type: !61, scopeLine: 213, flags: DIFlagPublic | DIFlagPrototyped, spFlags: 0) | |
!61 = !DISubroutineType(types: !62) | |
!62 = !{!63, !91} | |
!63 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !64, size: 64) | |
!64 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "promise_type", scope: !4, file: !5, line: 7, size: 8, flags: DIFlagTypePassByValue, elements: !65, identifier: "_ZTSN4coro12promise_typeE") | |
!65 = !{!66, !70, !86, !87, !90} | |
!66 = !DISubprogram(name: "get_return_object", linkageName: "_ZN4coro12promise_type17get_return_objectEv", scope: !64, file: !5, line: 8, type: !67, scopeLine: 8, flags: DIFlagPrototyped, spFlags: 0) | |
!67 = !DISubroutineType(types: !68) | |
!68 = !{!4, !69} | |
!69 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !64, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!70 = !DISubprogram(name: "initial_suspend", linkageName: "_ZN4coro12promise_type15initial_suspendEv", scope: !64, file: !5, line: 12, type: !71, scopeLine: 12, flags: DIFlagPrototyped, spFlags: 0) | |
!71 = !DISubroutineType(types: !72) | |
!72 = !{!73, !69} | |
!73 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "suspend_never", scope: !10, file: !9, line: 300, size: 8, flags: DIFlagTypePassByValue, elements: !74, identifier: "_ZTSNSt12experimental13coroutines_v113suspend_neverE") | |
!74 = !{!75, !80, !83} | |
!75 = !DISubprogram(name: "await_ready", linkageName: "_ZNKSt12experimental13coroutines_v113suspend_never11await_readyEv", scope: !73, file: !9, line: 302, type: !76, scopeLine: 302, flags: DIFlagPrototyped, spFlags: 0) | |
!76 = !DISubroutineType(types: !77) | |
!77 = !{!41, !78} | |
!78 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !79, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!79 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !73) | |
!80 = !DISubprogram(name: "await_suspend", linkageName: "_ZNKSt12experimental13coroutines_v113suspend_never13await_suspendENS0_16coroutine_handleIvEE", scope: !73, file: !9, line: 304, type: !81, scopeLine: 304, flags: DIFlagPrototyped, spFlags: 0) | |
!81 = !DISubroutineType(types: !82) | |
!82 = !{null, !78, !15} | |
!83 = !DISubprogram(name: "await_resume", linkageName: "_ZNKSt12experimental13coroutines_v113suspend_never12await_resumeEv", scope: !73, file: !9, line: 306, type: !84, scopeLine: 306, flags: DIFlagPrototyped, spFlags: 0) | |
!84 = !DISubroutineType(types: !85) | |
!85 = !{null, !78} | |
!86 = !DISubprogram(name: "final_suspend", linkageName: "_ZN4coro12promise_type13final_suspendEv", scope: !64, file: !5, line: 13, type: !71, scopeLine: 13, flags: DIFlagPrototyped, spFlags: 0) | |
!87 = !DISubprogram(name: "return_void", linkageName: "_ZN4coro12promise_type11return_voidEv", scope: !64, file: !5, line: 14, type: !88, scopeLine: 14, flags: DIFlagPrototyped, spFlags: 0) | |
!88 = !DISubroutineType(types: !89) | |
!89 = !{null, !69} | |
!90 = !DISubprogram(name: "unhandled_exception", linkageName: "_ZN4coro12promise_type19unhandled_exceptionEv", scope: !64, file: !5, line: 15, type: !88, scopeLine: 15, flags: DIFlagPrototyped, spFlags: 0) | |
!91 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !92, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!92 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !8) | |
!93 = !DISubprogram(name: "from_address", linkageName: "_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv", scope: !8, file: !9, line: 220, type: !94, scopeLine: 220, flags: DIFlagPublic | DIFlagPrototyped | DIFlagStaticMember, spFlags: 0) | |
!94 = !DISubroutineType(types: !95) | |
!95 = !{!8, !18} | |
!96 = !DISubprogram(name: "from_address", linkageName: "_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEDn", scope: !8, file: !9, line: 231, type: !97, scopeLine: 231, flags: DIFlagPublic | DIFlagPrototyped | DIFlagStaticMember, spFlags: 0) | |
!97 = !DISubroutineType(types: !98) | |
!98 = !{!8, !26} | |
!99 = !DISubprogram(name: "from_promise", linkageName: "_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_promiseERS3_", scope: !8, file: !9, line: 250, type: !100, scopeLine: 250, flags: DIFlagPublic | DIFlagPrototyped | DIFlagStaticMember, spFlags: 0) | |
!100 = !DISubroutineType(types: !101) | |
!101 = !{!8, !63} | |
!102 = !{!103} | |
!103 = !DITemplateTypeParameter(name: "_Promise", type: !64) | |
!104 = !DISubprogram(name: "coro", scope: !4, file: !5, line: 19, type: !105, scopeLine: 19, flags: DIFlagPrototyped, spFlags: 0) | |
!105 = !DISubroutineType(types: !106) | |
!106 = !{null, !107, !8} | |
!107 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !4, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!108 = !{!109, !116, !122, !126, !132, !134, !142, !146, !153, !155, !159, !163, !167, !173, !175, !179, !183, !187, !189, !193, !197, !201, !203, !205, !207, !212, !219, !225, !230, !236, !240, !244, !246, !248, !250, !254, !258, !262, !266, !270, !274, !278, !282, !286, !290, !292, !296, !298, !300, !303, !304, !308, !310, !314, !320, !327, !332, !334, !338, !342, !348, !353, !358, !362, !366, !370, !375, !377, !382, !386, !390, !394, !398, !402, !407, !411, !413, !417, !419, !427, !431, !436, !440, !444, !448, !452, !454, !458, !465, !469, !473, !480, !482, !484, !486, !493, !497, !500, !503, !508, !512, !515, !518, !522, !525, !528, !531, !534, !537, !540, !543, !545, !547, !549, !551, !553, !555, !557, !559, !561, !563, !566, !569, !571, !576, !580, !584, !588, !590, !592, !596, !598, !602, !604, !608, !613, !617, !621, !625, !627, !629, !631, !633, !635, !639, !643} | |
!109 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !111, file: !115, line: 107) | |
!110 = !DINamespace(name: "__1", scope: !12, exportSymbols: true) | |
!111 = !DIDerivedType(tag: DW_TAG_typedef, name: "FILE", file: !112, line: 7, baseType: !113) | |
!112 = !DIFile(filename: "/usr/include/x86_64-linux-gnu/bits/types/FILE.h", directory: "") | |
!113 = !DICompositeType(tag: DW_TAG_structure_type, name: "_IO_FILE", file: !114, line: 49, flags: DIFlagFwdDecl, identifier: "_ZTS8_IO_FILE") | |
!114 = !DIFile(filename: "/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h", directory: "") | |
!115 = !DIFile(filename: "llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdio", directory: "/home/modocache/Source") | |
!116 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !117, file: !115, line: 108) | |
!117 = !DIDerivedType(tag: DW_TAG_typedef, name: "fpos_t", file: !118, line: 84, baseType: !119) | |
!118 = !DIFile(filename: "/usr/include/stdio.h", directory: "") | |
!119 = !DIDerivedType(tag: DW_TAG_typedef, name: "__fpos_t", file: !120, line: 14, baseType: !121) | |
!120 = !DIFile(filename: "/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h", directory: "") | |
!121 = !DICompositeType(tag: DW_TAG_structure_type, name: "_G_fpos_t", file: !120, line: 10, flags: DIFlagFwdDecl, identifier: "_ZTS9_G_fpos_t") | |
!122 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !123, file: !115, line: 109) | |
!123 = !DIDerivedType(tag: DW_TAG_typedef, name: "size_t", file: !124, line: 46, baseType: !125) | |
!124 = !DIFile(filename: "llvm/git/dev/llvm-project/build/lib/clang/11.0.0/include/stddef.h", directory: "/home/modocache/Source") | |
!125 = !DIBasicType(name: "long unsigned int", size: 64, encoding: DW_ATE_unsigned) | |
!126 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !127, file: !115, line: 111) | |
!127 = !DISubprogram(name: "fclose", scope: !118, file: !118, line: 213, type: !128, flags: DIFlagPrototyped, spFlags: 0) | |
!128 = !DISubroutineType(types: !129) | |
!129 = !{!130, !131} | |
!130 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed) | |
!131 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !111, size: 64) | |
!132 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !133, file: !115, line: 112) | |
!133 = !DISubprogram(name: "fflush", scope: !118, file: !118, line: 218, type: !128, flags: DIFlagPrototyped, spFlags: 0) | |
!134 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !135, file: !115, line: 113) | |
!135 = !DISubprogram(name: "setbuf", scope: !118, file: !118, line: 304, type: !136, flags: DIFlagPrototyped, spFlags: 0) | |
!136 = !DISubroutineType(types: !137) | |
!137 = !{null, !138, !139} | |
!138 = !DIDerivedType(tag: DW_TAG_restrict_type, baseType: !131) | |
!139 = !DIDerivedType(tag: DW_TAG_restrict_type, baseType: !140) | |
!140 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !141, size: 64) | |
!141 = !DIBasicType(name: "char", size: 8, encoding: DW_ATE_signed_char) | |
!142 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !143, file: !115, line: 114) | |
!143 = !DISubprogram(name: "setvbuf", scope: !118, file: !118, line: 308, type: !144, flags: DIFlagPrototyped, spFlags: 0) | |
!144 = !DISubroutineType(types: !145) | |
!145 = !{!130, !138, !139, !130, !123} | |
!146 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !147, file: !115, line: 115) | |
!147 = !DISubprogram(name: "fprintf", scope: !118, file: !118, line: 326, type: !148, flags: DIFlagPrototyped, spFlags: 0) | |
!148 = !DISubroutineType(types: !149) | |
!149 = !{!130, !138, !150, null} | |
!150 = !DIDerivedType(tag: DW_TAG_restrict_type, baseType: !151) | |
!151 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !152, size: 64) | |
!152 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !141) | |
!153 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !154, file: !115, line: 116) | |
!154 = !DISubprogram(name: "fscanf", linkageName: "__isoc99_fscanf", scope: !118, file: !118, line: 407, type: !148, flags: DIFlagPrototyped, spFlags: 0) | |
!155 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !156, file: !115, line: 117) | |
!156 = !DISubprogram(name: "snprintf", scope: !118, file: !118, line: 354, type: !157, flags: DIFlagPrototyped, spFlags: 0) | |
!157 = !DISubroutineType(types: !158) | |
!158 = !{!130, !139, !123, !150, null} | |
!159 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !160, file: !115, line: 118) | |
!160 = !DISubprogram(name: "sprintf", scope: !118, file: !118, line: 334, type: !161, flags: DIFlagPrototyped, spFlags: 0) | |
!161 = !DISubroutineType(types: !162) | |
!162 = !{!130, !139, !150, null} | |
!163 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !164, file: !115, line: 119) | |
!164 = !DISubprogram(name: "sscanf", linkageName: "__isoc99_sscanf", scope: !118, file: !118, line: 412, type: !165, flags: DIFlagPrototyped, spFlags: 0) | |
!165 = !DISubroutineType(types: !166) | |
!166 = !{!130, !150, !150, null} | |
!167 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !168, file: !115, line: 120) | |
!168 = !DISubprogram(name: "vfprintf", scope: !118, file: !118, line: 341, type: !169, flags: DIFlagPrototyped, spFlags: 0) | |
!169 = !DISubroutineType(types: !170) | |
!170 = !{!130, !138, !150, !171} | |
!171 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !172, size: 64) | |
!172 = !DICompositeType(tag: DW_TAG_structure_type, name: "__va_list_tag", file: !1, flags: DIFlagFwdDecl, identifier: "_ZTS13__va_list_tag") | |
!173 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !174, file: !115, line: 121) | |
!174 = !DISubprogram(name: "vfscanf", linkageName: "__isoc99_vfscanf", scope: !118, file: !118, line: 451, type: !169, flags: DIFlagPrototyped, spFlags: 0) | |
!175 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !176, file: !115, line: 122) | |
!176 = !DISubprogram(name: "vsscanf", linkageName: "__isoc99_vsscanf", scope: !118, file: !118, line: 459, type: !177, flags: DIFlagPrototyped, spFlags: 0) | |
!177 = !DISubroutineType(types: !178) | |
!178 = !{!130, !150, !150, !171} | |
!179 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !180, file: !115, line: 123) | |
!180 = !DISubprogram(name: "vsnprintf", scope: !118, file: !118, line: 358, type: !181, flags: DIFlagPrototyped, spFlags: 0) | |
!181 = !DISubroutineType(types: !182) | |
!182 = !{!130, !139, !123, !150, !171} | |
!183 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !184, file: !115, line: 124) | |
!184 = !DISubprogram(name: "vsprintf", scope: !118, file: !118, line: 349, type: !185, flags: DIFlagPrototyped, spFlags: 0) | |
!185 = !DISubroutineType(types: !186) | |
!186 = !{!130, !139, !150, !171} | |
!187 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !188, file: !115, line: 125) | |
!188 = !DISubprogram(name: "fgetc", scope: !118, file: !118, line: 485, type: !128, flags: DIFlagPrototyped, spFlags: 0) | |
!189 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !190, file: !115, line: 126) | |
!190 = !DISubprogram(name: "fgets", scope: !118, file: !118, line: 564, type: !191, flags: DIFlagPrototyped, spFlags: 0) | |
!191 = !DISubroutineType(types: !192) | |
!192 = !{!140, !139, !130, !138} | |
!193 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !194, file: !115, line: 127) | |
!194 = !DISubprogram(name: "fputc", scope: !118, file: !118, line: 521, type: !195, flags: DIFlagPrototyped, spFlags: 0) | |
!195 = !DISubroutineType(types: !196) | |
!196 = !{!130, !130, !131} | |
!197 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !198, file: !115, line: 128) | |
!198 = !DISubprogram(name: "fputs", scope: !118, file: !118, line: 626, type: !199, flags: DIFlagPrototyped, spFlags: 0) | |
!199 = !DISubroutineType(types: !200) | |
!200 = !{!130, !150, !138} | |
!201 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !202, file: !115, line: 129) | |
!202 = !DISubprogram(name: "getc", scope: !118, file: !118, line: 486, type: !128, flags: DIFlagPrototyped, spFlags: 0) | |
!203 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !204, file: !115, line: 130) | |
!204 = !DISubprogram(name: "putc", scope: !118, file: !118, line: 522, type: !195, flags: DIFlagPrototyped, spFlags: 0) | |
!205 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !206, file: !115, line: 131) | |
!206 = !DISubprogram(name: "ungetc", scope: !118, file: !118, line: 639, type: !195, flags: DIFlagPrototyped, spFlags: 0) | |
!207 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !208, file: !115, line: 132) | |
!208 = !DISubprogram(name: "fread", scope: !118, file: !118, line: 646, type: !209, flags: DIFlagPrototyped, spFlags: 0) | |
!209 = !DISubroutineType(types: !210) | |
!210 = !{!123, !211, !123, !123, !138} | |
!211 = !DIDerivedType(tag: DW_TAG_restrict_type, baseType: !18) | |
!212 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !213, file: !115, line: 133) | |
!213 = !DISubprogram(name: "fwrite", scope: !118, file: !118, line: 652, type: !214, flags: DIFlagPrototyped, spFlags: 0) | |
!214 = !DISubroutineType(types: !215) | |
!215 = !{!123, !216, !123, !123, !138} | |
!216 = !DIDerivedType(tag: DW_TAG_restrict_type, baseType: !217) | |
!217 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !218, size: 64) | |
!218 = !DIDerivedType(tag: DW_TAG_const_type, baseType: null) | |
!219 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !220, file: !115, line: 134) | |
!220 = !DISubprogram(name: "fgetpos", scope: !118, file: !118, line: 731, type: !221, flags: DIFlagPrototyped, spFlags: 0) | |
!221 = !DISubroutineType(types: !222) | |
!222 = !{!130, !138, !223} | |
!223 = !DIDerivedType(tag: DW_TAG_restrict_type, baseType: !224) | |
!224 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !117, size: 64) | |
!225 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !226, file: !115, line: 135) | |
!226 = !DISubprogram(name: "fseek", scope: !118, file: !118, line: 684, type: !227, flags: DIFlagPrototyped, spFlags: 0) | |
!227 = !DISubroutineType(types: !228) | |
!228 = !{!130, !131, !229, !130} | |
!229 = !DIBasicType(name: "long int", size: 64, encoding: DW_ATE_signed) | |
!230 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !231, file: !115, line: 136) | |
!231 = !DISubprogram(name: "fsetpos", scope: !118, file: !118, line: 736, type: !232, flags: DIFlagPrototyped, spFlags: 0) | |
!232 = !DISubroutineType(types: !233) | |
!233 = !{!130, !131, !234} | |
!234 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !235, size: 64) | |
!235 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !117) | |
!236 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !237, file: !115, line: 137) | |
!237 = !DISubprogram(name: "ftell", scope: !118, file: !118, line: 689, type: !238, flags: DIFlagPrototyped, spFlags: 0) | |
!238 = !DISubroutineType(types: !239) | |
!239 = !{!229, !131} | |
!240 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !241, file: !115, line: 138) | |
!241 = !DISubprogram(name: "rewind", scope: !118, file: !118, line: 694, type: !242, flags: DIFlagPrototyped, spFlags: 0) | |
!242 = !DISubroutineType(types: !243) | |
!243 = !{null, !131} | |
!244 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !245, file: !115, line: 139) | |
!245 = !DISubprogram(name: "clearerr", scope: !118, file: !118, line: 757, type: !242, flags: DIFlagPrototyped, spFlags: 0) | |
!246 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !247, file: !115, line: 140) | |
!247 = !DISubprogram(name: "feof", scope: !118, file: !118, line: 759, type: !128, flags: DIFlagPrototyped, spFlags: 0) | |
!248 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !249, file: !115, line: 141) | |
!249 = !DISubprogram(name: "ferror", scope: !118, file: !118, line: 761, type: !128, flags: DIFlagPrototyped, spFlags: 0) | |
!250 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !251, file: !115, line: 142) | |
!251 = !DISubprogram(name: "perror", scope: !118, file: !118, line: 775, type: !252, flags: DIFlagPrototyped, spFlags: 0) | |
!252 = !DISubroutineType(types: !253) | |
!253 = !{null, !151} | |
!254 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !255, file: !115, line: 145) | |
!255 = !DISubprogram(name: "fopen", scope: !118, file: !118, line: 246, type: !256, flags: DIFlagPrototyped, spFlags: 0) | |
!256 = !DISubroutineType(types: !257) | |
!257 = !{!131, !150, !150} | |
!258 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !259, file: !115, line: 146) | |
!259 = !DISubprogram(name: "freopen", scope: !118, file: !118, line: 252, type: !260, flags: DIFlagPrototyped, spFlags: 0) | |
!260 = !DISubroutineType(types: !261) | |
!261 = !{!131, !150, !150, !138} | |
!262 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !263, file: !115, line: 147) | |
!263 = !DISubprogram(name: "remove", scope: !118, file: !118, line: 146, type: !264, flags: DIFlagPrototyped, spFlags: 0) | |
!264 = !DISubroutineType(types: !265) | |
!265 = !{!130, !151} | |
!266 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !267, file: !115, line: 148) | |
!267 = !DISubprogram(name: "rename", scope: !118, file: !118, line: 148, type: !268, flags: DIFlagPrototyped, spFlags: 0) | |
!268 = !DISubroutineType(types: !269) | |
!269 = !{!130, !151, !151} | |
!270 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !271, file: !115, line: 149) | |
!271 = !DISubprogram(name: "tmpfile", scope: !118, file: !118, line: 173, type: !272, flags: DIFlagPrototyped, spFlags: 0) | |
!272 = !DISubroutineType(types: !273) | |
!273 = !{!131} | |
!274 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !275, file: !115, line: 150) | |
!275 = !DISubprogram(name: "tmpnam", scope: !118, file: !118, line: 187, type: !276, flags: DIFlagPrototyped, spFlags: 0) | |
!276 = !DISubroutineType(types: !277) | |
!277 = !{!140, !140} | |
!278 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !279, file: !115, line: 154) | |
!279 = !DISubprogram(name: "getchar", scope: !118, file: !118, line: 492, type: !280, flags: DIFlagPrototyped, spFlags: 0) | |
!280 = !DISubroutineType(types: !281) | |
!281 = !{!130} | |
!282 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !283, file: !115, line: 158) | |
!283 = !DISubprogram(name: "scanf", linkageName: "__isoc99_scanf", scope: !118, file: !118, line: 410, type: !284, flags: DIFlagPrototyped, spFlags: 0) | |
!284 = !DISubroutineType(types: !285) | |
!285 = !{!130, !150, null} | |
!286 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !287, file: !115, line: 159) | |
!287 = !DISubprogram(name: "vscanf", linkageName: "__isoc99_vscanf", scope: !118, file: !118, line: 456, type: !288, flags: DIFlagPrototyped, spFlags: 0) | |
!288 = !DISubroutineType(types: !289) | |
!289 = !{!130, !150, !171} | |
!290 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !291, file: !115, line: 163) | |
!291 = !DISubprogram(name: "printf", scope: !118, file: !118, line: 332, type: !284, flags: DIFlagPrototyped, spFlags: 0) | |
!292 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !293, file: !115, line: 164) | |
!293 = !DISubprogram(name: "putchar", scope: !118, file: !118, line: 528, type: !294, flags: DIFlagPrototyped, spFlags: 0) | |
!294 = !DISubroutineType(types: !295) | |
!295 = !{!130, !130} | |
!296 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !297, file: !115, line: 165) | |
!297 = !DISubprogram(name: "puts", scope: !118, file: !118, line: 632, type: !264, flags: DIFlagPrototyped, spFlags: 0) | |
!298 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !299, file: !115, line: 166) | |
!299 = !DISubprogram(name: "vprintf", scope: !118, file: !118, line: 347, type: !288, flags: DIFlagPrototyped, spFlags: 0) | |
!300 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !301, file: !302, line: 49) | |
!301 = !DIDerivedType(tag: DW_TAG_typedef, name: "ptrdiff_t", file: !124, line: 35, baseType: !229) | |
!302 = !DIFile(filename: "llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstddef", directory: "/home/modocache/Source") | |
!303 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !123, file: !302, line: 50) | |
!304 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !305, file: !302, line: 55) | |
!305 = !DIDerivedType(tag: DW_TAG_typedef, name: "max_align_t", file: !306, line: 24, baseType: !307) | |
!306 = !DIFile(filename: "llvm/git/dev/llvm-project/build/lib/clang/11.0.0/include/__stddef_max_align_t.h", directory: "/home/modocache/Source") | |
!307 = !DICompositeType(tag: DW_TAG_structure_type, file: !306, line: 19, flags: DIFlagFwdDecl, identifier: "_ZTS11max_align_t") | |
!308 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !123, file: !309, line: 99) | |
!309 = !DIFile(filename: "llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdlib", directory: "/home/modocache/Source") | |
!310 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !311, file: !309, line: 100) | |
!311 = !DIDerivedType(tag: DW_TAG_typedef, name: "div_t", file: !312, line: 62, baseType: !313) | |
!312 = !DIFile(filename: "/usr/include/stdlib.h", directory: "") | |
!313 = !DICompositeType(tag: DW_TAG_structure_type, file: !312, line: 58, flags: DIFlagFwdDecl, identifier: "_ZTS5div_t") | |
!314 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !315, file: !309, line: 101) | |
!315 = !DIDerivedType(tag: DW_TAG_typedef, name: "ldiv_t", file: !312, line: 70, baseType: !316) | |
!316 = distinct !DICompositeType(tag: DW_TAG_structure_type, file: !312, line: 66, size: 128, flags: DIFlagTypePassByValue, elements: !317, identifier: "_ZTS6ldiv_t") | |
!317 = !{!318, !319} | |
!318 = !DIDerivedType(tag: DW_TAG_member, name: "quot", scope: !316, file: !312, line: 68, baseType: !229, size: 64) | |
!319 = !DIDerivedType(tag: DW_TAG_member, name: "rem", scope: !316, file: !312, line: 69, baseType: !229, size: 64, offset: 64) | |
!320 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !321, file: !309, line: 103) | |
!321 = !DIDerivedType(tag: DW_TAG_typedef, name: "lldiv_t", file: !312, line: 80, baseType: !322) | |
!322 = distinct !DICompositeType(tag: DW_TAG_structure_type, file: !312, line: 76, size: 128, flags: DIFlagTypePassByValue, elements: !323, identifier: "_ZTS7lldiv_t") | |
!323 = !{!324, !326} | |
!324 = !DIDerivedType(tag: DW_TAG_member, name: "quot", scope: !322, file: !312, line: 78, baseType: !325, size: 64) | |
!325 = !DIBasicType(name: "long long int", size: 64, encoding: DW_ATE_signed) | |
!326 = !DIDerivedType(tag: DW_TAG_member, name: "rem", scope: !322, file: !312, line: 79, baseType: !325, size: 64, offset: 64) | |
!327 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !328, file: !309, line: 105) | |
!328 = !DISubprogram(name: "atof", scope: !312, file: !312, line: 101, type: !329, flags: DIFlagPrototyped, spFlags: 0) | |
!329 = !DISubroutineType(types: !330) | |
!330 = !{!331, !151} | |
!331 = !DIBasicType(name: "double", size: 64, encoding: DW_ATE_float) | |
!332 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !333, file: !309, line: 106) | |
!333 = !DISubprogram(name: "atoi", scope: !312, file: !312, line: 104, type: !264, flags: DIFlagPrototyped, spFlags: 0) | |
!334 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !335, file: !309, line: 107) | |
!335 = !DISubprogram(name: "atol", scope: !312, file: !312, line: 107, type: !336, flags: DIFlagPrototyped, spFlags: 0) | |
!336 = !DISubroutineType(types: !337) | |
!337 = !{!229, !151} | |
!338 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !339, file: !309, line: 109) | |
!339 = !DISubprogram(name: "atoll", scope: !312, file: !312, line: 112, type: !340, flags: DIFlagPrototyped, spFlags: 0) | |
!340 = !DISubroutineType(types: !341) | |
!341 = !{!325, !151} | |
!342 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !343, file: !309, line: 111) | |
!343 = !DISubprogram(name: "strtod", scope: !312, file: !312, line: 117, type: !344, flags: DIFlagPrototyped, spFlags: 0) | |
!344 = !DISubroutineType(types: !345) | |
!345 = !{!331, !150, !346} | |
!346 = !DIDerivedType(tag: DW_TAG_restrict_type, baseType: !347) | |
!347 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !140, size: 64) | |
!348 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !349, file: !309, line: 112) | |
!349 = !DISubprogram(name: "strtof", scope: !312, file: !312, line: 123, type: !350, flags: DIFlagPrototyped, spFlags: 0) | |
!350 = !DISubroutineType(types: !351) | |
!351 = !{!352, !150, !346} | |
!352 = !DIBasicType(name: "float", size: 32, encoding: DW_ATE_float) | |
!353 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !354, file: !309, line: 113) | |
!354 = !DISubprogram(name: "strtold", scope: !312, file: !312, line: 126, type: !355, flags: DIFlagPrototyped, spFlags: 0) | |
!355 = !DISubroutineType(types: !356) | |
!356 = !{!357, !150, !346} | |
!357 = !DIBasicType(name: "long double", size: 128, encoding: DW_ATE_float) | |
!358 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !359, file: !309, line: 114) | |
!359 = !DISubprogram(name: "strtol", scope: !312, file: !312, line: 176, type: !360, flags: DIFlagPrototyped, spFlags: 0) | |
!360 = !DISubroutineType(types: !361) | |
!361 = !{!229, !150, !346, !130} | |
!362 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !363, file: !309, line: 116) | |
!363 = !DISubprogram(name: "strtoll", scope: !312, file: !312, line: 200, type: !364, flags: DIFlagPrototyped, spFlags: 0) | |
!364 = !DISubroutineType(types: !365) | |
!365 = !{!325, !150, !346, !130} | |
!366 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !367, file: !309, line: 118) | |
!367 = !DISubprogram(name: "strtoul", scope: !312, file: !312, line: 180, type: !368, flags: DIFlagPrototyped, spFlags: 0) | |
!368 = !DISubroutineType(types: !369) | |
!369 = !{!125, !150, !346, !130} | |
!370 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !371, file: !309, line: 120) | |
!371 = !DISubprogram(name: "strtoull", scope: !312, file: !312, line: 205, type: !372, flags: DIFlagPrototyped, spFlags: 0) | |
!372 = !DISubroutineType(types: !373) | |
!373 = !{!374, !150, !346, !130} | |
!374 = !DIBasicType(name: "long long unsigned int", size: 64, encoding: DW_ATE_unsigned) | |
!375 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !376, file: !309, line: 122) | |
!376 = !DISubprogram(name: "rand", scope: !312, file: !312, line: 453, type: !280, flags: DIFlagPrototyped, spFlags: 0) | |
!377 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !378, file: !309, line: 123) | |
!378 = !DISubprogram(name: "srand", scope: !312, file: !312, line: 455, type: !379, flags: DIFlagPrototyped, spFlags: 0) | |
!379 = !DISubroutineType(types: !380) | |
!380 = !{null, !381} | |
!381 = !DIBasicType(name: "unsigned int", size: 32, encoding: DW_ATE_unsigned) | |
!382 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !383, file: !309, line: 124) | |
!383 = !DISubprogram(name: "calloc", scope: !312, file: !312, line: 542, type: !384, flags: DIFlagPrototyped, spFlags: 0) | |
!384 = !DISubroutineType(types: !385) | |
!385 = !{!18, !123, !123} | |
!386 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !387, file: !309, line: 125) | |
!387 = !DISubprogram(name: "free", scope: !312, file: !312, line: 565, type: !388, flags: DIFlagPrototyped, spFlags: 0) | |
!388 = !DISubroutineType(types: !389) | |
!389 = !{null, !18} | |
!390 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !391, file: !309, line: 126) | |
!391 = !DISubprogram(name: "malloc", scope: !312, file: !312, line: 539, type: !392, flags: DIFlagPrototyped, spFlags: 0) | |
!392 = !DISubroutineType(types: !393) | |
!393 = !{!18, !123} | |
!394 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !395, file: !309, line: 127) | |
!395 = !DISubprogram(name: "realloc", scope: !312, file: !312, line: 550, type: !396, flags: DIFlagPrototyped, spFlags: 0) | |
!396 = !DISubroutineType(types: !397) | |
!397 = !{!18, !18, !123} | |
!398 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !399, file: !309, line: 128) | |
!399 = !DISubprogram(name: "abort", scope: !312, file: !312, line: 591, type: !400, flags: DIFlagPrototyped | DIFlagNoReturn, spFlags: 0) | |
!400 = !DISubroutineType(types: !401) | |
!401 = !{null} | |
!402 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !403, file: !309, line: 129) | |
!403 = !DISubprogram(name: "atexit", scope: !312, file: !312, line: 595, type: !404, flags: DIFlagPrototyped, spFlags: 0) | |
!404 = !DISubroutineType(types: !405) | |
!405 = !{!130, !406} | |
!406 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !400, size: 64) | |
!407 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !408, file: !309, line: 130) | |
!408 = !DISubprogram(name: "exit", scope: !312, file: !312, line: 617, type: !409, flags: DIFlagPrototyped | DIFlagNoReturn, spFlags: 0) | |
!409 = !DISubroutineType(types: !410) | |
!410 = !{null, !130} | |
!411 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !412, file: !309, line: 131) | |
!412 = !DISubprogram(name: "_Exit", scope: !312, file: !312, line: 629, type: !409, flags: DIFlagPrototyped | DIFlagNoReturn, spFlags: 0) | |
!413 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !414, file: !309, line: 133) | |
!414 = !DISubprogram(name: "getenv", scope: !312, file: !312, line: 634, type: !415, flags: DIFlagPrototyped, spFlags: 0) | |
!415 = !DISubroutineType(types: !416) | |
!416 = !{!140, !151} | |
!417 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !418, file: !309, line: 134) | |
!418 = !DISubprogram(name: "system", scope: !312, file: !312, line: 784, type: !264, flags: DIFlagPrototyped, spFlags: 0) | |
!419 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !420, file: !309, line: 136) | |
!420 = !DISubprogram(name: "bsearch", scope: !312, file: !312, line: 820, type: !421, flags: DIFlagPrototyped, spFlags: 0) | |
!421 = !DISubroutineType(types: !422) | |
!422 = !{!18, !217, !217, !123, !123, !423} | |
!423 = !DIDerivedType(tag: DW_TAG_typedef, name: "__compar_fn_t", file: !312, line: 808, baseType: !424) | |
!424 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !425, size: 64) | |
!425 = !DISubroutineType(types: !426) | |
!426 = !{!130, !217, !217} | |
!427 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !428, file: !309, line: 137) | |
!428 = !DISubprogram(name: "qsort", scope: !312, file: !312, line: 830, type: !429, flags: DIFlagPrototyped, spFlags: 0) | |
!429 = !DISubroutineType(types: !430) | |
!430 = !{null, !18, !123, !123, !423} | |
!431 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !432, file: !309, line: 138) | |
!432 = !DISubprogram(name: "abs", linkageName: "_Z3abse", scope: !433, file: !433, line: 793, type: !434, flags: DIFlagPrototyped, spFlags: 0) | |
!433 = !DIFile(filename: "llvm/git/dev/llvm-project/build/bin/../include/c++/v1/math.h", directory: "/home/modocache/Source") | |
!434 = !DISubroutineType(types: !435) | |
!435 = !{!357, !357} | |
!436 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !437, file: !309, line: 139) | |
!437 = !DISubprogram(name: "labs", scope: !312, file: !312, line: 841, type: !438, flags: DIFlagPrototyped, spFlags: 0) | |
!438 = !DISubroutineType(types: !439) | |
!439 = !{!229, !229} | |
!440 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !441, file: !309, line: 141) | |
!441 = !DISubprogram(name: "llabs", scope: !312, file: !312, line: 844, type: !442, flags: DIFlagPrototyped, spFlags: 0) | |
!442 = !DISubroutineType(types: !443) | |
!443 = !{!325, !325} | |
!444 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !445, file: !309, line: 143) | |
!445 = !DISubprogram(name: "div", linkageName: "_Z3divxx", scope: !433, file: !433, line: 812, type: !446, flags: DIFlagPrototyped, spFlags: 0) | |
!446 = !DISubroutineType(types: !447) | |
!447 = !{!321, !325, !325} | |
!448 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !449, file: !309, line: 144) | |
!449 = !DISubprogram(name: "ldiv", scope: !312, file: !312, line: 854, type: !450, flags: DIFlagPrototyped, spFlags: 0) | |
!450 = !DISubroutineType(types: !451) | |
!451 = !{!315, !229, !229} | |
!452 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !453, file: !309, line: 146) | |
!453 = !DISubprogram(name: "lldiv", scope: !312, file: !312, line: 858, type: !446, flags: DIFlagPrototyped, spFlags: 0) | |
!454 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !455, file: !309, line: 148) | |
!455 = !DISubprogram(name: "mblen", scope: !312, file: !312, line: 922, type: !456, flags: DIFlagPrototyped, spFlags: 0) | |
!456 = !DISubroutineType(types: !457) | |
!457 = !{!130, !151, !123} | |
!458 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !459, file: !309, line: 149) | |
!459 = !DISubprogram(name: "mbtowc", scope: !312, file: !312, line: 925, type: !460, flags: DIFlagPrototyped, spFlags: 0) | |
!460 = !DISubroutineType(types: !461) | |
!461 = !{!130, !462, !150, !123} | |
!462 = !DIDerivedType(tag: DW_TAG_restrict_type, baseType: !463) | |
!463 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !464, size: 64) | |
!464 = !DIBasicType(name: "wchar_t", size: 32, encoding: DW_ATE_signed) | |
!465 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !466, file: !309, line: 150) | |
!466 = !DISubprogram(name: "wctomb", scope: !312, file: !312, line: 929, type: !467, flags: DIFlagPrototyped, spFlags: 0) | |
!467 = !DISubroutineType(types: !468) | |
!468 = !{!130, !140, !464} | |
!469 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !470, file: !309, line: 151) | |
!470 = !DISubprogram(name: "mbstowcs", scope: !312, file: !312, line: 933, type: !471, flags: DIFlagPrototyped, spFlags: 0) | |
!471 = !DISubroutineType(types: !472) | |
!472 = !{!123, !462, !150, !123} | |
!473 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !474, file: !309, line: 152) | |
!474 = !DISubprogram(name: "wcstombs", scope: !312, file: !312, line: 936, type: !475, flags: DIFlagPrototyped, spFlags: 0) | |
!475 = !DISubroutineType(types: !476) | |
!476 = !{!123, !139, !477, !123} | |
!477 = !DIDerivedType(tag: DW_TAG_restrict_type, baseType: !478) | |
!478 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !479, size: 64) | |
!479 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !464) | |
!480 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !481, file: !309, line: 154) | |
!481 = !DISubprogram(name: "at_quick_exit", scope: !312, file: !312, line: 600, type: !404, flags: DIFlagPrototyped, spFlags: 0) | |
!482 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !483, file: !309, line: 155) | |
!483 = !DISubprogram(name: "quick_exit", scope: !312, file: !312, line: 623, type: !409, flags: DIFlagPrototyped | DIFlagNoReturn, spFlags: 0) | |
!484 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !485, file: !309, line: 158) | |
!485 = !DISubprogram(name: "aligned_alloc", scope: !312, file: !312, line: 586, type: !384, flags: DIFlagPrototyped, spFlags: 0) | |
!486 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !487, file: !492, line: 152) | |
!487 = !DIDerivedType(tag: DW_TAG_typedef, name: "int8_t", file: !488, line: 24, baseType: !489) | |
!488 = !DIFile(filename: "/usr/include/x86_64-linux-gnu/bits/stdint-intn.h", directory: "") | |
!489 = !DIDerivedType(tag: DW_TAG_typedef, name: "__int8_t", file: !490, line: 37, baseType: !491) | |
!490 = !DIFile(filename: "/usr/include/x86_64-linux-gnu/bits/types.h", directory: "") | |
!491 = !DIBasicType(name: "signed char", size: 8, encoding: DW_ATE_signed_char) | |
!492 = !DIFile(filename: "llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstdint", directory: "/home/modocache/Source") | |
!493 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !494, file: !492, line: 153) | |
!494 = !DIDerivedType(tag: DW_TAG_typedef, name: "int16_t", file: !488, line: 25, baseType: !495) | |
!495 = !DIDerivedType(tag: DW_TAG_typedef, name: "__int16_t", file: !490, line: 39, baseType: !496) | |
!496 = !DIBasicType(name: "short", size: 16, encoding: DW_ATE_signed) | |
!497 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !498, file: !492, line: 154) | |
!498 = !DIDerivedType(tag: DW_TAG_typedef, name: "int32_t", file: !488, line: 26, baseType: !499) | |
!499 = !DIDerivedType(tag: DW_TAG_typedef, name: "__int32_t", file: !490, line: 41, baseType: !130) | |
!500 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !501, file: !492, line: 155) | |
!501 = !DIDerivedType(tag: DW_TAG_typedef, name: "int64_t", file: !488, line: 27, baseType: !502) | |
!502 = !DIDerivedType(tag: DW_TAG_typedef, name: "__int64_t", file: !490, line: 44, baseType: !229) | |
!503 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !504, file: !492, line: 157) | |
!504 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint8_t", file: !505, line: 24, baseType: !506) | |
!505 = !DIFile(filename: "/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h", directory: "") | |
!506 = !DIDerivedType(tag: DW_TAG_typedef, name: "__uint8_t", file: !490, line: 38, baseType: !507) | |
!507 = !DIBasicType(name: "unsigned char", size: 8, encoding: DW_ATE_unsigned_char) | |
!508 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !509, file: !492, line: 158) | |
!509 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint16_t", file: !505, line: 25, baseType: !510) | |
!510 = !DIDerivedType(tag: DW_TAG_typedef, name: "__uint16_t", file: !490, line: 40, baseType: !511) | |
!511 = !DIBasicType(name: "unsigned short", size: 16, encoding: DW_ATE_unsigned) | |
!512 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !513, file: !492, line: 159) | |
!513 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint32_t", file: !505, line: 26, baseType: !514) | |
!514 = !DIDerivedType(tag: DW_TAG_typedef, name: "__uint32_t", file: !490, line: 42, baseType: !381) | |
!515 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !516, file: !492, line: 160) | |
!516 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint64_t", file: !505, line: 27, baseType: !517) | |
!517 = !DIDerivedType(tag: DW_TAG_typedef, name: "__uint64_t", file: !490, line: 45, baseType: !125) | |
!518 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !519, file: !492, line: 162) | |
!519 = !DIDerivedType(tag: DW_TAG_typedef, name: "int_least8_t", file: !520, line: 43, baseType: !521) | |
!520 = !DIFile(filename: "/usr/include/stdint.h", directory: "") | |
!521 = !DIDerivedType(tag: DW_TAG_typedef, name: "__int_least8_t", file: !490, line: 52, baseType: !489) | |
!522 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !523, file: !492, line: 163) | |
!523 = !DIDerivedType(tag: DW_TAG_typedef, name: "int_least16_t", file: !520, line: 44, baseType: !524) | |
!524 = !DIDerivedType(tag: DW_TAG_typedef, name: "__int_least16_t", file: !490, line: 54, baseType: !495) | |
!525 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !526, file: !492, line: 164) | |
!526 = !DIDerivedType(tag: DW_TAG_typedef, name: "int_least32_t", file: !520, line: 45, baseType: !527) | |
!527 = !DIDerivedType(tag: DW_TAG_typedef, name: "__int_least32_t", file: !490, line: 56, baseType: !499) | |
!528 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !529, file: !492, line: 165) | |
!529 = !DIDerivedType(tag: DW_TAG_typedef, name: "int_least64_t", file: !520, line: 46, baseType: !530) | |
!530 = !DIDerivedType(tag: DW_TAG_typedef, name: "__int_least64_t", file: !490, line: 58, baseType: !502) | |
!531 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !532, file: !492, line: 167) | |
!532 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint_least8_t", file: !520, line: 49, baseType: !533) | |
!533 = !DIDerivedType(tag: DW_TAG_typedef, name: "__uint_least8_t", file: !490, line: 53, baseType: !506) | |
!534 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !535, file: !492, line: 168) | |
!535 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint_least16_t", file: !520, line: 50, baseType: !536) | |
!536 = !DIDerivedType(tag: DW_TAG_typedef, name: "__uint_least16_t", file: !490, line: 55, baseType: !510) | |
!537 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !538, file: !492, line: 169) | |
!538 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint_least32_t", file: !520, line: 51, baseType: !539) | |
!539 = !DIDerivedType(tag: DW_TAG_typedef, name: "__uint_least32_t", file: !490, line: 57, baseType: !514) | |
!540 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !541, file: !492, line: 170) | |
!541 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint_least64_t", file: !520, line: 52, baseType: !542) | |
!542 = !DIDerivedType(tag: DW_TAG_typedef, name: "__uint_least64_t", file: !490, line: 59, baseType: !517) | |
!543 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !544, file: !492, line: 172) | |
!544 = !DIDerivedType(tag: DW_TAG_typedef, name: "int_fast8_t", file: !520, line: 58, baseType: !491) | |
!545 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !546, file: !492, line: 173) | |
!546 = !DIDerivedType(tag: DW_TAG_typedef, name: "int_fast16_t", file: !520, line: 60, baseType: !229) | |
!547 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !548, file: !492, line: 174) | |
!548 = !DIDerivedType(tag: DW_TAG_typedef, name: "int_fast32_t", file: !520, line: 61, baseType: !229) | |
!549 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !550, file: !492, line: 175) | |
!550 = !DIDerivedType(tag: DW_TAG_typedef, name: "int_fast64_t", file: !520, line: 62, baseType: !229) | |
!551 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !552, file: !492, line: 177) | |
!552 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint_fast8_t", file: !520, line: 71, baseType: !507) | |
!553 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !554, file: !492, line: 178) | |
!554 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint_fast16_t", file: !520, line: 73, baseType: !125) | |
!555 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !556, file: !492, line: 179) | |
!556 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint_fast32_t", file: !520, line: 74, baseType: !125) | |
!557 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !558, file: !492, line: 180) | |
!558 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint_fast64_t", file: !520, line: 75, baseType: !125) | |
!559 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !560, file: !492, line: 182) | |
!560 = !DIDerivedType(tag: DW_TAG_typedef, name: "intptr_t", file: !520, line: 87, baseType: !229) | |
!561 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !562, file: !492, line: 183) | |
!562 = !DIDerivedType(tag: DW_TAG_typedef, name: "uintptr_t", file: !520, line: 90, baseType: !125) | |
!563 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !564, file: !492, line: 185) | |
!564 = !DIDerivedType(tag: DW_TAG_typedef, name: "intmax_t", file: !520, line: 101, baseType: !565) | |
!565 = !DIDerivedType(tag: DW_TAG_typedef, name: "__intmax_t", file: !490, line: 72, baseType: !229) | |
!566 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !567, file: !492, line: 186) | |
!567 = !DIDerivedType(tag: DW_TAG_typedef, name: "uintmax_t", file: !520, line: 102, baseType: !568) | |
!568 = !DIDerivedType(tag: DW_TAG_typedef, name: "__uintmax_t", file: !490, line: 73, baseType: !125) | |
!569 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !123, file: !570, line: 68) | |
!570 = !DIFile(filename: "llvm/git/dev/llvm-project/build/bin/../include/c++/v1/cstring", directory: "/home/modocache/Source") | |
!571 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !572, file: !570, line: 69) | |
!572 = !DISubprogram(name: "memcpy", scope: !573, file: !573, line: 42, type: !574, flags: DIFlagPrototyped, spFlags: 0) | |
!573 = !DIFile(filename: "/usr/include/string.h", directory: "") | |
!574 = !DISubroutineType(types: !575) | |
!575 = !{!18, !211, !216, !123} | |
!576 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !577, file: !570, line: 70) | |
!577 = !DISubprogram(name: "memmove", scope: !573, file: !573, line: 46, type: !578, flags: DIFlagPrototyped, spFlags: 0) | |
!578 = !DISubroutineType(types: !579) | |
!579 = !{!18, !18, !217, !123} | |
!580 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !581, file: !570, line: 71) | |
!581 = !DISubprogram(name: "strcpy", scope: !573, file: !573, line: 121, type: !582, flags: DIFlagPrototyped, spFlags: 0) | |
!582 = !DISubroutineType(types: !583) | |
!583 = !{!140, !139, !150} | |
!584 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !585, file: !570, line: 72) | |
!585 = !DISubprogram(name: "strncpy", scope: !573, file: !573, line: 124, type: !586, flags: DIFlagPrototyped, spFlags: 0) | |
!586 = !DISubroutineType(types: !587) | |
!587 = !{!140, !139, !150, !123} | |
!588 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !589, file: !570, line: 73) | |
!589 = !DISubprogram(name: "strcat", scope: !573, file: !573, line: 129, type: !582, flags: DIFlagPrototyped, spFlags: 0) | |
!590 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !591, file: !570, line: 74) | |
!591 = !DISubprogram(name: "strncat", scope: !573, file: !573, line: 132, type: !586, flags: DIFlagPrototyped, spFlags: 0) | |
!592 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !593, file: !570, line: 75) | |
!593 = !DISubprogram(name: "memcmp", scope: !573, file: !573, line: 63, type: !594, flags: DIFlagPrototyped, spFlags: 0) | |
!594 = !DISubroutineType(types: !595) | |
!595 = !{!130, !217, !217, !123} | |
!596 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !597, file: !570, line: 76) | |
!597 = !DISubprogram(name: "strcmp", scope: !573, file: !573, line: 136, type: !268, flags: DIFlagPrototyped, spFlags: 0) | |
!598 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !599, file: !570, line: 77) | |
!599 = !DISubprogram(name: "strncmp", scope: !573, file: !573, line: 139, type: !600, flags: DIFlagPrototyped, spFlags: 0) | |
!600 = !DISubroutineType(types: !601) | |
!601 = !{!130, !151, !151, !123} | |
!602 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !603, file: !570, line: 78) | |
!603 = !DISubprogram(name: "strcoll", scope: !573, file: !573, line: 143, type: !268, flags: DIFlagPrototyped, spFlags: 0) | |
!604 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !605, file: !570, line: 79) | |
!605 = !DISubprogram(name: "strxfrm", scope: !573, file: !573, line: 146, type: !606, flags: DIFlagPrototyped, spFlags: 0) | |
!606 = !DISubroutineType(types: !607) | |
!607 = !{!123, !139, !150, !123} | |
!608 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !609, file: !570, line: 80) | |
!609 = !DISubprogram(name: "memchr", linkageName: "_Z6memchrUa9enable_ifIXLb1EEEPvim", scope: !610, file: !610, line: 98, type: !611, flags: DIFlagPrototyped, spFlags: 0) | |
!610 = !DIFile(filename: "llvm/git/dev/llvm-project/build/bin/../include/c++/v1/string.h", directory: "/home/modocache/Source") | |
!611 = !DISubroutineType(types: !612) | |
!612 = !{!18, !18, !130, !123} | |
!613 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !614, file: !570, line: 81) | |
!614 = !DISubprogram(name: "strchr", linkageName: "_Z6strchrUa9enable_ifIXLb1EEEPci", scope: !610, file: !610, line: 77, type: !615, flags: DIFlagPrototyped, spFlags: 0) | |
!615 = !DISubroutineType(types: !616) | |
!616 = !{!140, !140, !130} | |
!617 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !618, file: !570, line: 82) | |
!618 = !DISubprogram(name: "strcspn", scope: !573, file: !573, line: 272, type: !619, flags: DIFlagPrototyped, spFlags: 0) | |
!619 = !DISubroutineType(types: !620) | |
!620 = !{!123, !151, !151} | |
!621 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !622, file: !570, line: 83) | |
!622 = !DISubprogram(name: "strpbrk", linkageName: "_Z7strpbrkUa9enable_ifIXLb1EEEPcPKc", scope: !610, file: !610, line: 84, type: !623, flags: DIFlagPrototyped, spFlags: 0) | |
!623 = !DISubroutineType(types: !624) | |
!624 = !{!140, !140, !151} | |
!625 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !626, file: !570, line: 84) | |
!626 = !DISubprogram(name: "strrchr", linkageName: "_Z7strrchrUa9enable_ifIXLb1EEEPci", scope: !610, file: !610, line: 91, type: !615, flags: DIFlagPrototyped, spFlags: 0) | |
!627 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !628, file: !570, line: 85) | |
!628 = !DISubprogram(name: "strspn", scope: !573, file: !573, line: 276, type: !619, flags: DIFlagPrototyped, spFlags: 0) | |
!629 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !630, file: !570, line: 86) | |
!630 = !DISubprogram(name: "strstr", linkageName: "_Z6strstrUa9enable_ifIXLb1EEEPcPKc", scope: !610, file: !610, line: 105, type: !623, flags: DIFlagPrototyped, spFlags: 0) | |
!631 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !632, file: !570, line: 88) | |
!632 = !DISubprogram(name: "strtok", scope: !573, file: !573, line: 335, type: !582, flags: DIFlagPrototyped, spFlags: 0) | |
!633 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !634, file: !570, line: 90) | |
!634 = !DISubprogram(name: "memset", scope: !573, file: !573, line: 60, type: !611, flags: DIFlagPrototyped, spFlags: 0) | |
!635 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !636, file: !570, line: 91) | |
!636 = !DISubprogram(name: "strerror", scope: !573, file: !573, line: 396, type: !637, flags: DIFlagPrototyped, spFlags: 0) | |
!637 = !DISubroutineType(types: !638) | |
!638 = !{!140, !130} | |
!639 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !110, entity: !640, file: !570, line: 92) | |
!640 = !DISubprogram(name: "strlen", scope: !573, file: !573, line: 384, type: !641, flags: DIFlagPrototyped, spFlags: 0) | |
!641 = !DISubroutineType(types: !642) | |
!642 = !{!123, !151} | |
!643 = !DIImportedEntity(tag: DW_TAG_imported_module, scope: !0, entity: !11, file: !5, line: 4) | |
!644 = !{i32 7, !"Dwarf Version", i32 4} | |
!645 = !{i32 2, !"Debug Info Version", i32 3} | |
!646 = !{i32 1, !"wchar_size", i32 4} | |
!647 = !{!"clang version 11.0.0 (https://github.com/llvm/llvm-project.git baafe82b07ade3fff4f2685199870b67083a17d5)"} | |
!648 = distinct !DISubprogram(name: "foo", linkageName: "_Z3foov", scope: !5, file: !5, line: 23, type: !649, scopeLine: 23, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, retainedNodes: !2) | |
!649 = !DISubroutineType(types: !3) | |
!650 = !DILocation(line: 23, column: 12, scope: !648) | |
!651 = !DILocation(line: 23, column: 6, scope: !648) | |
!652 = !DILocalVariable(name: "__coro_gro", scope: !648, file: !5, line: 23, type: !4) | |
!653 = !DILocalVariable(name: "__promise", scope: !648, file: !5, line: 23, type: !654) | |
!654 = !DIDerivedType(tag: DW_TAG_typedef, name: "promise_type", scope: !655, file: !9, line: 79, baseType: !64) | |
!655 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "__coroutine_traits_sfinae<coro, void>", scope: !10, file: !9, line: 76, size: 8, flags: DIFlagTypePassByValue, elements: !2, templateParams: !656, identifier: "_ZTSNSt12experimental13coroutines_v125__coroutine_traits_sfinaeI4corovEE") | |
!656 = !{!657, !658} | |
!657 = !DITemplateTypeParameter(name: "_Tp", type: !4) | |
!658 = !DITemplateTypeParameter(type: null) | |
!659 = !DILocalVariable(name: "i", scope: !660, file: !5, line: 24, type: !130) | |
!660 = distinct !DILexicalBlock(scope: !648, file: !5, line: 23, column: 12) | |
!661 = !DILocation(line: 0, scope: !660) | |
!662 = !DILocation(line: 24, column: 7, scope: !660) | |
!663 = !DILocation(line: 25, column: 3, scope: !660) | |
!664 = !DILocation(line: 26, column: 18, scope: !660) | |
!665 = !DILocation(line: 26, column: 3, scope: !660) | |
!666 = !DILocation(line: 31, column: 12, scope: !660) | |
!667 = !DILocation(line: 31, column: 3, scope: !660) | |
!668 = !DILocalVariable(name: "j", scope: !660, file: !5, line: 32, type: !130) | |
!669 = !DILocation(line: 32, column: 7, scope: !660) | |
!670 = !DILocation(line: 33, column: 3, scope: !660) | |
!671 = !DILocation(line: 34, column: 3, scope: !660) | |
!672 = !DILocation(line: 35, column: 22, scope: !660) | |
!673 = !DILocation(line: 35, column: 25, scope: !660) | |
!674 = !DILocation(line: 35, column: 3, scope: !660) | |
!675 = !DILocation(line: 42, column: 12, scope: !660) | |
!676 = !DILocation(line: 42, column: 3, scope: !660) | |
!677 = !DILocation(line: 43, column: 3, scope: !660) | |
!678 = !DILocation(line: 44, column: 3, scope: !660) | |
!679 = !DILocation(line: 45, column: 22, scope: !660) | |
!680 = !DILocation(line: 45, column: 25, scope: !660) | |
!681 = !DILocation(line: 45, column: 3, scope: !660) | |
!682 = distinct !DISubprogram(name: "get_return_object", linkageName: "_ZN4coro12promise_type17get_return_objectEv", scope: !64, file: !5, line: 8, type: !67, scopeLine: 8, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, declaration: !66, retainedNodes: !2) | |
!683 = !DILocalVariable(name: "this", arg: 1, scope: !682, type: !684, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!684 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !64, size: 64) | |
!685 = !DILocation(line: 0, scope: !682) | |
!686 = !DILocalVariable(name: "handle", scope: !682, file: !5, line: 9, type: !8) | |
!687 = !DILocation(line: 9, column: 12, scope: !682) | |
!688 = !DILocation(line: 9, column: 21, scope: !682) | |
!689 = !DILocation(line: 10, column: 19, scope: !682) | |
!690 = !DILocation(line: 10, column: 14, scope: !682) | |
!691 = !DILocation(line: 10, column: 7, scope: !682) | |
!692 = distinct !DISubprogram(name: "initial_suspend", linkageName: "_ZN4coro12promise_type15initial_suspendEv", scope: !64, file: !5, line: 12, type: !71, scopeLine: 12, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, declaration: !70, retainedNodes: !2) | |
!693 = !DILocalVariable(name: "this", arg: 1, scope: !692, type: !684, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!694 = !DILocation(line: 0, scope: !692) | |
!695 = !DILocation(line: 12, column: 39, scope: !692) | |
!696 = distinct !DISubprogram(name: "await_ready", linkageName: "_ZNKSt12experimental13coroutines_v113suspend_never11await_readyEv", scope: !73, file: !9, line: 302, type: !76, scopeLine: 302, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, declaration: !75, retainedNodes: !2) | |
!697 = !DILocalVariable(name: "this", arg: 1, scope: !696, type: !698, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!698 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !79, size: 64) | |
!699 = !DILocation(line: 0, scope: !696) | |
!700 = !DILocation(line: 302, column: 40, scope: !696) | |
!701 = distinct !DISubprogram(name: "await_suspend", linkageName: "_ZNKSt12experimental13coroutines_v113suspend_never13await_suspendENS0_16coroutine_handleIvEE", scope: !73, file: !9, line: 304, type: !81, scopeLine: 304, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, declaration: !80, retainedNodes: !2) | |
!702 = !DILocalVariable(name: "this", arg: 1, scope: !701, type: !698, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!703 = !DILocation(line: 0, scope: !701) | |
!704 = !DILocalVariable(arg: 2, scope: !701, file: !9, line: 304, type: !15) | |
!705 = !DILocation(line: 304, column: 40, scope: !701) | |
!706 = !DILocation(line: 304, column: 59, scope: !701) | |
!707 = distinct !DISubprogram(name: "from_address", linkageName: "_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_addressEPv", scope: !8, file: !9, line: 220, type: !94, scopeLine: 220, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, declaration: !93, retainedNodes: !2) | |
!708 = !DILocalVariable(name: "__addr", arg: 1, scope: !707, file: !9, line: 220, type: !18) | |
!709 = !DILocation(line: 220, column: 48, scope: !707) | |
!710 = !DILocalVariable(name: "__tmp", scope: !707, file: !9, line: 221, type: !8) | |
!711 = !DILocation(line: 221, column: 26, scope: !707) | |
!712 = !DILocation(line: 222, column: 27, scope: !707) | |
!713 = !DILocation(line: 222, column: 9, scope: !707) | |
!714 = !DILocation(line: 222, column: 15, scope: !707) | |
!715 = !DILocation(line: 222, column: 25, scope: !707) | |
!716 = !DILocation(line: 223, column: 9, scope: !707) | |
!717 = distinct !DISubprogram(name: "await_resume", linkageName: "_ZNKSt12experimental13coroutines_v113suspend_never12await_resumeEv", scope: !73, file: !9, line: 306, type: !84, scopeLine: 306, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, declaration: !83, retainedNodes: !2) | |
!718 = !DILocalVariable(name: "this", arg: 1, scope: !717, type: !698, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!719 = !DILocation(line: 0, scope: !717) | |
!720 = !DILocation(line: 306, column: 40, scope: !717) | |
!721 = distinct !DISubprogram(name: "await_ready", linkageName: "_ZNKSt12experimental13coroutines_v114suspend_always11await_readyEv", scope: !722, file: !9, line: 311, type: !725, scopeLine: 311, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, declaration: !724, retainedNodes: !2) | |
!722 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "suspend_always", scope: !10, file: !9, line: 309, size: 8, flags: DIFlagTypePassByValue, elements: !723, identifier: "_ZTSNSt12experimental13coroutines_v114suspend_alwaysE") | |
!723 = !{!724, !729, !732} | |
!724 = !DISubprogram(name: "await_ready", linkageName: "_ZNKSt12experimental13coroutines_v114suspend_always11await_readyEv", scope: !722, file: !9, line: 311, type: !725, scopeLine: 311, flags: DIFlagPrototyped, spFlags: 0) | |
!725 = !DISubroutineType(types: !726) | |
!726 = !{!41, !727} | |
!727 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !728, size: 64, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!728 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !722) | |
!729 = !DISubprogram(name: "await_suspend", linkageName: "_ZNKSt12experimental13coroutines_v114suspend_always13await_suspendENS0_16coroutine_handleIvEE", scope: !722, file: !9, line: 313, type: !730, scopeLine: 313, flags: DIFlagPrototyped, spFlags: 0) | |
!730 = !DISubroutineType(types: !731) | |
!731 = !{null, !727, !15} | |
!732 = !DISubprogram(name: "await_resume", linkageName: "_ZNKSt12experimental13coroutines_v114suspend_always12await_resumeEv", scope: !722, file: !9, line: 315, type: !733, scopeLine: 315, flags: DIFlagPrototyped, spFlags: 0) | |
!733 = !DISubroutineType(types: !734) | |
!734 = !{null, !727} | |
!735 = !DILocalVariable(name: "this", arg: 1, scope: !721, type: !736, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!736 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !728, size: 64) | |
!737 = !DILocation(line: 0, scope: !721) | |
!738 = !DILocation(line: 311, column: 40, scope: !721) | |
!739 = distinct !DISubprogram(name: "await_suspend", linkageName: "_ZNKSt12experimental13coroutines_v114suspend_always13await_suspendENS0_16coroutine_handleIvEE", scope: !722, file: !9, line: 313, type: !730, scopeLine: 313, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, declaration: !729, retainedNodes: !2) | |
!740 = !DILocalVariable(name: "this", arg: 1, scope: !739, type: !736, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!741 = !DILocation(line: 0, scope: !739) | |
!742 = !DILocalVariable(arg: 2, scope: !739, file: !9, line: 313, type: !15) | |
!743 = !DILocation(line: 313, column: 40, scope: !739) | |
!744 = !DILocation(line: 313, column: 59, scope: !739) | |
!745 = distinct !DISubprogram(name: "await_resume", linkageName: "_ZNKSt12experimental13coroutines_v114suspend_always12await_resumeEv", scope: !722, file: !9, line: 315, type: !733, scopeLine: 315, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, declaration: !732, retainedNodes: !2) | |
!746 = !DILocalVariable(name: "this", arg: 1, scope: !745, type: !736, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!747 = !DILocation(line: 0, scope: !745) | |
!748 = !DILocation(line: 315, column: 40, scope: !745) | |
!749 = distinct !DISubprogram(name: "return_void", linkageName: "_ZN4coro12promise_type11return_voidEv", scope: !64, file: !5, line: 14, type: !88, scopeLine: 14, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, declaration: !87, retainedNodes: !2) | |
!750 = !DILocalVariable(name: "this", arg: 1, scope: !749, type: !684, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!751 = !DILocation(line: 0, scope: !749) | |
!752 = !DILocation(line: 14, column: 25, scope: !749) | |
!753 = distinct !DISubprogram(name: "final_suspend", linkageName: "_ZN4coro12promise_type13final_suspendEv", scope: !64, file: !5, line: 13, type: !71, scopeLine: 13, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, declaration: !86, retainedNodes: !2) | |
!754 = !DILocalVariable(name: "this", arg: 1, scope: !753, type: !684, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!755 = !DILocation(line: 0, scope: !753) | |
!756 = !DILocation(line: 13, column: 37, scope: !753) | |
!757 = distinct !DISubprogram(name: "main", scope: !5, file: !5, line: 53, type: !280, scopeLine: 53, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, retainedNodes: !2) | |
!758 = !DILocalVariable(name: "c", scope: !757, file: !5, line: 54, type: !4) | |
!759 = !DILocation(line: 54, column: 8, scope: !757) | |
!760 = !DILocation(line: 54, column: 12, scope: !757) | |
!761 = !DILocation(line: 55, column: 5, scope: !757) | |
!762 = !DILocation(line: 55, column: 3, scope: !757) | |
!763 = !DILocation(line: 55, column: 12, scope: !757) | |
!764 = !DILocation(line: 56, column: 5, scope: !757) | |
!765 = !DILocation(line: 56, column: 3, scope: !757) | |
!766 = !DILocation(line: 56, column: 12, scope: !757) | |
!767 = !DILocation(line: 57, column: 1, scope: !757) | |
!768 = distinct !DISubprogram(name: "resume", linkageName: "_ZNSt12experimental13coroutines_v116coroutine_handleIvE6resumeEv", scope: !15, file: !9, line: 116, type: !20, scopeLine: 116, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, declaration: !43, retainedNodes: !2) | |
!769 = !DILocalVariable(name: "this", arg: 1, scope: !768, type: !770, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!770 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !15, size: 64) | |
!771 = !DILocation(line: 0, scope: !768) | |
!772 = !DILocation(line: 121, column: 29, scope: !768) | |
!773 = !DILocation(line: 121, column: 7, scope: !768) | |
!774 = !DILocation(line: 122, column: 5, scope: !768) | |
!775 = distinct !DISubprogram(name: "from_promise", linkageName: "_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEE12from_promiseERS3_", scope: !8, file: !9, line: 250, type: !100, scopeLine: 250, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, declaration: !99, retainedNodes: !2) | |
!776 = !DILocalVariable(name: "__promise", arg: 1, scope: !775, file: !9, line: 250, type: !63) | |
!777 = !DILocation(line: 250, column: 52, scope: !775) | |
!778 = !DILocalVariable(name: "__tmp", scope: !775, file: !9, line: 252, type: !8) | |
!779 = !DILocation(line: 252, column: 26, scope: !775) | |
!780 = !DILocation(line: 254, column: 55, scope: !775) | |
!781 = !DILocation(line: 254, column: 13, scope: !775) | |
!782 = !DILocation(line: 253, column: 27, scope: !775) | |
!783 = !DILocation(line: 253, column: 9, scope: !775) | |
!784 = !DILocation(line: 253, column: 15, scope: !775) | |
!785 = !DILocation(line: 253, column: 25, scope: !775) | |
!786 = !DILocation(line: 256, column: 9, scope: !775) | |
!787 = distinct !DISubprogram(name: "coro", linkageName: "_ZN4coroC2ENSt12experimental13coroutines_v116coroutine_handleINS_12promise_typeEEE", scope: !4, file: !5, line: 19, type: !105, scopeLine: 20, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, declaration: !104, retainedNodes: !2) | |
!788 = !DILocalVariable(name: "this", arg: 1, scope: !787, type: !789, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!789 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !4, size: 64) | |
!790 = !DILocation(line: 0, scope: !787) | |
!791 = !DILocalVariable(name: "handle", arg: 2, scope: !787, file: !5, line: 19, type: !8) | |
!792 = !DILocation(line: 19, column: 39, scope: !787) | |
!793 = !DILocation(line: 20, column: 9, scope: !787) | |
!794 = !DILocation(line: 20, column: 25, scope: !787) | |
!795 = distinct !DISubprogram(name: "coroutine_handle", linkageName: "_ZNSt12experimental13coroutines_v116coroutine_handleIN4coro12promise_typeEEC2Ev", scope: !8, file: !9, line: 196, type: !796, scopeLine: 196, flags: DIFlagArtificial | DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, declaration: !798, retainedNodes: !2) | |
!796 = !DISubroutineType(types: !797) | |
!797 = !{null, !59} | |
!798 = !DISubprogram(name: "coroutine_handle", scope: !8, type: !796, flags: DIFlagPublic | DIFlagArtificial | DIFlagPrototyped, spFlags: 0) | |
!799 = !DILocalVariable(name: "this", arg: 1, scope: !795, type: !800, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!800 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !8, size: 64) | |
!801 = !DILocation(line: 0, scope: !795) | |
!802 = !DILocation(line: 196, column: 28, scope: !795) | |
!803 = distinct !DISubprogram(name: "addressof<coro::promise_type>", linkageName: "_ZNSt3__19addressofIN4coro12promise_typeEEEPT_RS3_", scope: !110, file: !804, line: 591, type: !805, scopeLine: 592, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, templateParams: !807, retainedNodes: !2) | |
!804 = !DIFile(filename: "llvm/git/dev/llvm-project/build/bin/../include/c++/v1/type_traits", directory: "/home/modocache/Source") | |
!805 = !DISubroutineType(types: !806) | |
!806 = !{!684, !63} | |
!807 = !{!808} | |
!808 = !DITemplateTypeParameter(name: "_Tp", type: !64) | |
!809 = !DILocalVariable(name: "__x", arg: 1, scope: !803, file: !804, line: 591, type: !63) | |
!810 = !DILocation(line: 591, column: 16, scope: !803) | |
!811 = !DILocation(line: 593, column: 32, scope: !803) | |
!812 = !DILocation(line: 593, column: 5, scope: !803) | |
!813 = distinct !DISubprogram(name: "coroutine_handle", linkageName: "_ZNSt12experimental13coroutines_v116coroutine_handleIvEC2Ev", scope: !15, file: !9, line: 95, type: !20, scopeLine: 95, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, declaration: !19, retainedNodes: !2) | |
!814 = !DILocalVariable(name: "this", arg: 1, scope: !813, type: !770, flags: DIFlagArtificial | DIFlagObjectPointer) | |
!815 = !DILocation(line: 0, scope: !813) | |
!816 = !DILocation(line: 95, column: 54, scope: !813) | |
!817 = !DILocation(line: 95, column: 74, scope: !813) | |
!818 = distinct !DISubprogram(name: "foo", linkageName: "_Z3foov", scope: !5, file: !5, line: 23, type: !649, scopeLine: 23, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, retainedNodes: !2) | |
!819 = !DILocation(line: 23, column: 12, scope: !818) | |
!820 = !DILocation(line: 23, column: 6, scope: !818) | |
!821 = !DILocalVariable(name: "i", scope: !822, file: !5, line: 24, type: !130) | |
!822 = distinct !DILexicalBlock(scope: !818, file: !5, line: 23, column: 12) | |
!823 = !DILocation(line: 0, scope: !822) | |
!824 = !DILocation(line: 24, column: 7, scope: !822) | |
!825 = !DILocation(line: 25, column: 3, scope: !822) | |
!826 = !DILocation(line: 26, column: 18, scope: !822) | |
!827 = !DILocation(line: 26, column: 3, scope: !822) | |
!828 = !DILocation(line: 31, column: 12, scope: !822) | |
!829 = !DILocation(line: 31, column: 3, scope: !822) | |
!830 = !DILocalVariable(name: "j", scope: !822, file: !5, line: 32, type: !130) | |
!831 = !DILocation(line: 32, column: 7, scope: !822) | |
!832 = !DILocation(line: 33, column: 3, scope: !822) | |
!833 = !DILocation(line: 34, column: 3, scope: !822) | |
!834 = !DILocation(line: 35, column: 22, scope: !822) | |
!835 = !DILocation(line: 35, column: 25, scope: !822) | |
!836 = !DILocation(line: 35, column: 3, scope: !822) | |
!837 = !DILocation(line: 42, column: 12, scope: !822) | |
!838 = !DILocation(line: 42, column: 3, scope: !822) | |
!839 = !DILocation(line: 43, column: 3, scope: !822) | |
!840 = !DILocation(line: 44, column: 3, scope: !822) | |
!841 = !DILocation(line: 45, column: 22, scope: !822) | |
!842 = !DILocation(line: 45, column: 25, scope: !822) | |
!843 = !DILocation(line: 45, column: 3, scope: !822) | |
!844 = distinct !DISubprogram(name: "foo", linkageName: "_Z3foov", scope: !5, file: !5, line: 23, type: !649, scopeLine: 23, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, retainedNodes: !2) | |
!845 = !DILocation(line: 23, column: 12, scope: !844) | |
!846 = !DILocation(line: 23, column: 6, scope: !844) | |
!847 = !DILocalVariable(name: "i", scope: !848, file: !5, line: 24, type: !130) | |
!848 = distinct !DILexicalBlock(scope: !844, file: !5, line: 23, column: 12) | |
!849 = !DILocation(line: 0, scope: !848) | |
!850 = !DILocation(line: 24, column: 7, scope: !848) | |
!851 = !DILocation(line: 25, column: 3, scope: !848) | |
!852 = !DILocation(line: 26, column: 18, scope: !848) | |
!853 = !DILocation(line: 26, column: 3, scope: !848) | |
!854 = !DILocation(line: 31, column: 12, scope: !848) | |
!855 = !DILocation(line: 31, column: 3, scope: !848) | |
!856 = !DILocalVariable(name: "j", scope: !848, file: !5, line: 32, type: !130) | |
!857 = !DILocation(line: 32, column: 7, scope: !848) | |
!858 = !DILocation(line: 33, column: 3, scope: !848) | |
!859 = !DILocation(line: 34, column: 3, scope: !848) | |
!860 = !DILocation(line: 35, column: 22, scope: !848) | |
!861 = !DILocation(line: 35, column: 25, scope: !848) | |
!862 = !DILocation(line: 35, column: 3, scope: !848) | |
!863 = !DILocation(line: 42, column: 12, scope: !848) | |
!864 = !DILocation(line: 42, column: 3, scope: !848) | |
!865 = !DILocation(line: 43, column: 3, scope: !848) | |
!866 = !DILocation(line: 44, column: 3, scope: !848) | |
!867 = !DILocation(line: 45, column: 22, scope: !848) | |
!868 = !DILocation(line: 45, column: 25, scope: !848) | |
!869 = !DILocation(line: 45, column: 3, scope: !848) | |
!870 = distinct !DISubprogram(name: "foo", linkageName: "_Z3foov", scope: !5, file: !5, line: 23, type: !649, scopeLine: 23, flags: DIFlagPrototyped, spFlags: DISPFlagDefinition, unit: !0, retainedNodes: !2) | |
!871 = !DILocation(line: 23, column: 12, scope: !870) | |
!872 = !DILocation(line: 23, column: 6, scope: !870) | |
!873 = !DILocalVariable(name: "i", scope: !874, file: !5, line: 24, type: !130) | |
!874 = distinct !DILexicalBlock(scope: !870, file: !5, line: 23, column: 12) | |
!875 = !DILocation(line: 0, scope: !874) | |
!876 = !DILocation(line: 24, column: 7, scope: !874) | |
!877 = !DILocation(line: 25, column: 3, scope: !874) | |
!878 = !DILocation(line: 26, column: 18, scope: !874) | |
!879 = !DILocation(line: 26, column: 3, scope: !874) | |
!880 = !DILocation(line: 31, column: 12, scope: !874) | |
!881 = !DILocation(line: 31, column: 3, scope: !874) | |
!882 = !DILocalVariable(name: "j", scope: !874, file: !5, line: 32, type: !130) | |
!883 = !DILocation(line: 32, column: 7, scope: !874) | |
!884 = !DILocation(line: 33, column: 3, scope: !874) | |
!885 = !DILocation(line: 34, column: 3, scope: !874) | |
!886 = !DILocation(line: 35, column: 22, scope: !874) | |
!887 = !DILocation(line: 35, column: 25, scope: !874) | |
!888 = !DILocation(line: 35, column: 3, scope: !874) | |
!889 = !DILocation(line: 42, column: 12, scope: !874) | |
!890 = !DILocation(line: 42, column: 3, scope: !874) | |
!891 = !DILocation(line: 43, column: 3, scope: !874) | |
!892 = !DILocation(line: 44, column: 3, scope: !874) | |
!893 = !DILocation(line: 45, column: 22, scope: !874) | |
!894 = !DILocation(line: 45, column: 25, scope: !874) | |
!895 = !DILocation(line: 45, column: 3, scope: !874) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# The clang++, llvm-dwarfdump, and libc++ being used here were build from llvm-project trunk. | |
# LLVM IR | |
clang++ \ | |
-std=c++2a -stdlib=libc++ -g -fno-cxx-exceptions \ | |
-c -Xclang -emit-llvm \ | |
test.cpp -o ~/Source/tmp/corodebug/test.ll | |
# Executable | |
clang++ \ | |
-std=c++2a -stdlib=libc++ -g -fno-cxx-exceptions \ | |
test.cpp -o test | |
# DWARF dump | |
llvm-dwarfdump test -o test.dwarfdump.txt |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment