On 03/17/2018 06:27 PM, Andres Freund wrote: > > > On March 17, 2018 7:56:40 AM PDT, Tom Lane <t...@sss.pgh.pa.us> wrote: >> I wrote: >>> Ouch. That test is in fact new as of 31 Dec, and what this seems to >>> prove is that plpgsql's handling of loop-variable overflow doesn't >>> work on fulmar. >> >> Some of the other icc-using critters haven't reported in since >> December, either :-( >> >> Looking at the code, we do this like so: >> >> /* >> * Increase/decrease loop value, unless it would overflow, in which >> * case exit the loop. >> */ >> if (stmt->reverse) >> { >> if ((int32) (loop_value - step_value) > loop_value) >> break; >> loop_value -= step_value; >> } >> else >> { >> if ((int32) (loop_value + step_value) < loop_value) >> break; >> loop_value += step_value; >> } >> >> I imagine what's happening is that the compiler is assuming no overflow >> occurs (due to lacking any equivalent of -fwrapv), then deducing that >> the >> if-tests are no-ops and throwing them away. >> >> We could avoid the dependency on -fwrapv with something like >> >> if (stmt->reverse) >> { >> if (loop_value < (PG_INT32_MIN + step_value)) >> break; >> loop_value -= step_value; >> } >> else >> { >> if (loop_value > (PG_INT32_MAX - step_value)) >> break; >> loop_value += step_value; >> } >> >> which is safe because we enforce step_value > 0. It's kind of ugly >> because it hard-codes knowledge of what the limits are, but we may not >> have much choice. > > On the current branch just using the new overflow safe functions in > int.h should work. But unless we are OK leaving this broken in the back > branches, or want to backport the functionality, that's probably not > sufficient. >
Not sure, but the backbranches seem to be working fine, and the commit that triggers the issue is from December 31. Maybe the issue was there but we were lucky not to trip on it before. Anyway, I can confirm that the fix suggested by Tom does the trick (well, at least on Fulmar, which is running icc 14.0.3). I've also disassembled exec_stmt_fori both with and without the patch - reading assembly in not my strength, but if you're interested it's attached. The interesting part seems to be the last ~50 lines or so. regards -- Tomas Vondra http://www.2ndQuadrant.com PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
Dump of assembler code for function exec_stmt_fori: 0x00007fb85bbcaf16 <+0>: push %rbp 0x00007fb85bbcaf17 <+1>: mov %rsp,%rbp 0x00007fb85bbcaf1a <+4>: sub $0x120,%rsp 0x00007fb85bbcaf21 <+11>: mov %rbx,-0x10(%rbp) 0x00007fb85bbcaf25 <+15>: mov %rdi,-0xd0(%rbp) 0x00007fb85bbcaf2c <+22>: mov %rsi,-0xc8(%rbp) => 0x00007fb85bbcaf33 <+29>: movb $0x0,-0x120(%rbp) 0x00007fb85bbcaf3a <+36>: movl $0x0,-0x11c(%rbp) 0x00007fb85bbcaf44 <+46>: mov -0xd0(%rbp),%rax 0x00007fb85bbcaf4b <+53>: mov -0xc8(%rbp),%rdx 0x00007fb85bbcaf52 <+60>: mov 0x10(%rdx),%rdx 0x00007fb85bbcaf56 <+64>: mov 0x4(%rdx),%edx 0x00007fb85bbcaf59 <+67>: movslq %edx,%rdx 0x00007fb85bbcaf5c <+70>: shl $0x3,%rdx 0x00007fb85bbcaf60 <+74>: add 0x70(%rax),%rdx 0x00007fb85bbcaf64 <+78>: mov (%rdx),%rax 0x00007fb85bbcaf67 <+81>: mov %rax,-0xc0(%rbp) 0x00007fb85bbcaf6e <+88>: mov -0xd0(%rbp),%rax 0x00007fb85bbcaf75 <+95>: mov -0xc8(%rbp),%rdx 0x00007fb85bbcaf7c <+102>: mov 0x18(%rdx),%rdx 0x00007fb85bbcaf80 <+106>: lea -0x11f(%rbp),%rcx 0x00007fb85bbcaf87 <+113>: lea -0x118(%rbp),%rbx 0x00007fb85bbcaf8e <+120>: lea -0x114(%rbp),%rsi 0x00007fb85bbcaf95 <+127>: mov %rax,%rdi 0x00007fb85bbcaf98 <+130>: mov %rsi,-0x80(%rbp) 0x00007fb85bbcaf9c <+134>: mov %rdx,%rsi 0x00007fb85bbcaf9f <+137>: mov %rcx,%rdx 0x00007fb85bbcafa2 <+140>: mov %rbx,%rcx 0x00007fb85bbcafa5 <+143>: mov -0x80(%rbp),%rax 0x00007fb85bbcafa9 <+147>: mov %rax,%r8 0x00007fb85bbcafac <+150>: callq 0x7fb85bbd4746 <exec_eval_expr> 0x00007fb85bbcafb1 <+155>: mov %rax,-0xb0(%rbp) 0x00007fb85bbcafb8 <+162>: mov -0xb0(%rbp),%rax 0x00007fb85bbcafbf <+169>: mov %rax,-0xb8(%rbp) 0x00007fb85bbcafc6 <+176>: add $0xfffffffffffffff0,%rsp 0x00007fb85bbcafca <+180>: mov -0xd0(%rbp),%rax 0x00007fb85bbcafd1 <+187>: mov -0xb8(%rbp),%rdx 0x00007fb85bbcafd8 <+194>: lea -0x11f(%rbp),%rcx 0x00007fb85bbcafdf <+201>: mov -0x118(%rbp),%ebx 0x00007fb85bbcafe5 <+207>: mov -0x114(%rbp),%esi 0x00007fb85bbcafeb <+213>: mov -0xc0(%rbp),%rdi 0x00007fb85bbcaff2 <+220>: mov 0x20(%rdi),%rdi 0x00007fb85bbcaff6 <+224>: mov 0x8(%rdi),%edi 0x00007fb85bbcaff9 <+227>: mov -0xc0(%rbp),%r8 0x00007fb85bbcb000 <+234>: mov 0x20(%r8),%r8 0x00007fb85bbcb004 <+238>: mov 0x1c(%r8),%r8d 0x00007fb85bbcb008 <+242>: mov %r8d,(%rsp) 0x00007fb85bbcb00c <+246>: mov %edi,-0x78(%rbp) 0x00007fb85bbcb00f <+249>: mov %rax,%rdi 0x00007fb85bbcb012 <+252>: mov %esi,-0x70(%rbp) 0x00007fb85bbcb015 <+255>: mov %rdx,%rsi 0x00007fb85bbcb018 <+258>: mov %rcx,%rdx 0x00007fb85bbcb01b <+261>: mov %ebx,%ecx 0x00007fb85bbcb01d <+263>: mov -0x70(%rbp),%eax 0x00007fb85bbcb020 <+266>: mov %eax,%r8d 0x00007fb85bbcb023 <+269>: mov -0x78(%rbp),%eax 0x00007fb85bbcb026 <+272>: mov %eax,%r9d 0x00007fb85bbcb029 <+275>: callq 0x7fb85bbd7f58 <exec_cast_value> 0x00007fb85bbcb02e <+280>: add $0x10,%rsp 0x00007fb85bbcb032 <+284>: mov %rax,-0xa8(%rbp) 0x00007fb85bbcb039 <+291>: mov -0xa8(%rbp),%rax 0x00007fb85bbcb040 <+298>: mov %rax,-0xb8(%rbp) 0x00007fb85bbcb047 <+305>: movsbl -0x11f(%rbp),%eax 0x00007fb85bbcb04e <+312>: movsbq %al,%rax 0x00007fb85bbcb052 <+316>: test %eax,%eax 0x00007fb85bbcb054 <+318>: je 0x7fb85bbcb10b <exec_stmt_fori+501> 0x00007fb85bbcb05a <+324>: mov $0x14,%eax 0x00007fb85bbcb05f <+329>: lea 0x18d92(%rip),%rdx # 0x7fb85bbe3df8 0x00007fb85bbcb066 <+336>: mov $0x9b5,%ecx 0x00007fb85bbcb06b <+341>: lea 0x19809(%rip),%rbx # 0x7fb85bbe487b <__$Ua> 0x00007fb85bbcb072 <+348>: lea 0x18dbb(%rip),%rsi # 0x7fb85bbe3e34 0x00007fb85bbcb079 <+355>: mov %eax,%edi 0x00007fb85bbcb07b <+357>: mov %rsi,-0x68(%rbp) 0x00007fb85bbcb07f <+361>: mov %rdx,%rsi 0x00007fb85bbcb082 <+364>: mov %ecx,%edx 0x00007fb85bbcb084 <+366>: mov %rbx,%rcx 0x00007fb85bbcb087 <+369>: mov -0x68(%rbp),%rax 0x00007fb85bbcb08b <+373>: mov %rax,%r8 0x00007fb85bbcb08e <+376>: callq 0x7fb85bbb1330 <errstart@plt> 0x00007fb85bbcb093 <+381>: mov %eax,-0x104(%rbp) 0x00007fb85bbcb099 <+387>: mov -0x104(%rbp),%eax 0x00007fb85bbcb09f <+393>: movsbq %al,%rax 0x00007fb85bbcb0a3 <+397>: test %eax,%eax 0x00007fb85bbcb0a5 <+399>: je 0x7fb85bbcb0ed <exec_stmt_fori+471> 0x00007fb85bbcb0a7 <+401>: mov $0x4000082,%eax 0x00007fb85bbcb0ac <+406>: mov %eax,%edi 0x00007fb85bbcb0ae <+408>: callq 0x7fb85bbb1ed0 <errcode@plt> 0x00007fb85bbcb0b3 <+413>: mov %eax,-0x100(%rbp) 0x00007fb85bbcb0b9 <+419>: lea 0x19718(%rip),%rax # 0x7fb85bbe47d8 0x00007fb85bbcb0c0 <+426>: mov %rax,%rdi 0x00007fb85bbcb0c3 <+429>: mov $0x0,%eax 0x00007fb85bbcb0c8 <+434>: callq 0x7fb85bbb1d00 <errmsg@plt> 0x00007fb85bbcb0cd <+439>: mov %eax,-0xfc(%rbp) 0x00007fb85bbcb0d3 <+445>: mov -0x100(%rbp),%eax 0x00007fb85bbcb0d9 <+451>: mov %eax,%edi 0x00007fb85bbcb0db <+453>: mov -0xfc(%rbp),%eax 0x00007fb85bbcb0e1 <+459>: mov %eax,%esi 0x00007fb85bbcb0e3 <+461>: mov $0x0,%eax 0x00007fb85bbcb0e8 <+466>: callq 0x7fb85bbb1580 <errfinish@plt> 0x00007fb85bbcb0ed <+471>: mov $0x0,%eax 0x00007fb85bbcb0f2 <+476>: cmp $0x1,%eax 0x00007fb85bbcb0f5 <+479>: jne 0x7fb85bbcb106 <exec_stmt_fori+496> 0x00007fb85bbcb0f7 <+481>: mov $0x0,%eax 0x00007fb85bbcb0fc <+486>: test %eax,%eax 0x00007fb85bbcb0fe <+488>: jne 0x7fb85bbcb05a <exec_stmt_fori+324> 0x00007fb85bbcb104 <+494>: jmp 0x7fb85bbcb10b <exec_stmt_fori+501> 0x00007fb85bbcb106 <+496>: callq 0x7fb85bbb1430 <abort@plt> 0x00007fb85bbcb10b <+501>: mov -0xb8(%rbp),%eax 0x00007fb85bbcb111 <+507>: mov %eax,-0x110(%rbp) 0x00007fb85bbcb117 <+513>: mov -0xd0(%rbp),%rax 0x00007fb85bbcb11e <+520>: mov %rax,%rdi 0x00007fb85bbcb121 <+523>: callq 0x7fb85bbcfb7a <exec_eval_cleanup> 0x00007fb85bbcb126 <+528>: mov -0xd0(%rbp),%rax 0x00007fb85bbcb12d <+535>: mov -0xc8(%rbp),%rdx 0x00007fb85bbcb134 <+542>: mov 0x20(%rdx),%rdx 0x00007fb85bbcb138 <+546>: lea -0x11f(%rbp),%rcx 0x00007fb85bbcb13f <+553>: lea -0x118(%rbp),%rbx 0x00007fb85bbcb146 <+560>: lea -0x114(%rbp),%rsi 0x00007fb85bbcb14d <+567>: mov %rax,%rdi 0x00007fb85bbcb150 <+570>: mov %rsi,-0x60(%rbp) 0x00007fb85bbcb154 <+574>: mov %rdx,%rsi 0x00007fb85bbcb157 <+577>: mov %rcx,%rdx 0x00007fb85bbcb15a <+580>: mov %rbx,%rcx 0x00007fb85bbcb15d <+583>: mov -0x60(%rbp),%rax 0x00007fb85bbcb161 <+587>: mov %rax,%r8 0x00007fb85bbcb164 <+590>: callq 0x7fb85bbd4746 <exec_eval_expr> 0x00007fb85bbcb169 <+595>: mov %rax,-0xa0(%rbp) 0x00007fb85bbcb170 <+602>: mov -0xa0(%rbp),%rax 0x00007fb85bbcb177 <+609>: mov %rax,-0xb8(%rbp) 0x00007fb85bbcb17e <+616>: add $0xfffffffffffffff0,%rsp 0x00007fb85bbcb182 <+620>: mov -0xd0(%rbp),%rax 0x00007fb85bbcb189 <+627>: mov -0xb8(%rbp),%rdx 0x00007fb85bbcb190 <+634>: lea -0x11f(%rbp),%rcx 0x00007fb85bbcb197 <+641>: mov -0x118(%rbp),%ebx 0x00007fb85bbcb19d <+647>: mov -0x114(%rbp),%esi 0x00007fb85bbcb1a3 <+653>: mov -0xc0(%rbp),%rdi 0x00007fb85bbcb1aa <+660>: mov 0x20(%rdi),%rdi 0x00007fb85bbcb1ae <+664>: mov 0x8(%rdi),%edi 0x00007fb85bbcb1b1 <+667>: mov -0xc0(%rbp),%r8 0x00007fb85bbcb1b8 <+674>: mov 0x20(%r8),%r8 0x00007fb85bbcb1bc <+678>: mov 0x1c(%r8),%r8d 0x00007fb85bbcb1c0 <+682>: mov %r8d,(%rsp) 0x00007fb85bbcb1c4 <+686>: mov %edi,-0x58(%rbp) 0x00007fb85bbcb1c7 <+689>: mov %rax,%rdi 0x00007fb85bbcb1ca <+692>: mov %esi,-0x50(%rbp) 0x00007fb85bbcb1cd <+695>: mov %rdx,%rsi 0x00007fb85bbcb1d0 <+698>: mov %rcx,%rdx 0x00007fb85bbcb1d3 <+701>: mov %ebx,%ecx 0x00007fb85bbcb1d5 <+703>: mov -0x50(%rbp),%eax 0x00007fb85bbcb1d8 <+706>: mov %eax,%r8d 0x00007fb85bbcb1db <+709>: mov -0x58(%rbp),%eax 0x00007fb85bbcb1de <+712>: mov %eax,%r9d 0x00007fb85bbcb1e1 <+715>: callq 0x7fb85bbd7f58 <exec_cast_value> 0x00007fb85bbcb1e6 <+720>: add $0x10,%rsp 0x00007fb85bbcb1ea <+724>: mov %rax,-0x98(%rbp) 0x00007fb85bbcb1f1 <+731>: mov -0x98(%rbp),%rax 0x00007fb85bbcb1f8 <+738>: mov %rax,-0xb8(%rbp) 0x00007fb85bbcb1ff <+745>: movsbl -0x11f(%rbp),%eax 0x00007fb85bbcb206 <+752>: movsbq %al,%rax 0x00007fb85bbcb20a <+756>: test %eax,%eax 0x00007fb85bbcb20c <+758>: je 0x7fb85bbcb2c3 <exec_stmt_fori+941> 0x00007fb85bbcb212 <+764>: mov $0x14,%eax 0x00007fb85bbcb217 <+769>: lea 0x18bda(%rip),%rdx # 0x7fb85bbe3df8 0x00007fb85bbcb21e <+776>: mov $0x9c5,%ecx 0x00007fb85bbcb223 <+781>: lea 0x19651(%rip),%rbx # 0x7fb85bbe487b <__$Ua> 0x00007fb85bbcb22a <+788>: lea 0x18c03(%rip),%rsi # 0x7fb85bbe3e34 0x00007fb85bbcb231 <+795>: mov %eax,%edi 0x00007fb85bbcb233 <+797>: mov %rsi,-0x48(%rbp) 0x00007fb85bbcb237 <+801>: mov %rdx,%rsi 0x00007fb85bbcb23a <+804>: mov %ecx,%edx 0x00007fb85bbcb23c <+806>: mov %rbx,%rcx 0x00007fb85bbcb23f <+809>: mov -0x48(%rbp),%rax 0x00007fb85bbcb243 <+813>: mov %rax,%r8 0x00007fb85bbcb246 <+816>: callq 0x7fb85bbb1330 <errstart@plt> 0x00007fb85bbcb24b <+821>: mov %eax,-0xf8(%rbp) 0x00007fb85bbcb251 <+827>: mov -0xf8(%rbp),%eax 0x00007fb85bbcb257 <+833>: movsbq %al,%rax 0x00007fb85bbcb25b <+837>: test %eax,%eax 0x00007fb85bbcb25d <+839>: je 0x7fb85bbcb2a5 <exec_stmt_fori+911> 0x00007fb85bbcb25f <+841>: mov $0x4000082,%eax 0x00007fb85bbcb264 <+846>: mov %eax,%edi 0x00007fb85bbcb266 <+848>: callq 0x7fb85bbb1ed0 <errcode@plt> 0x00007fb85bbcb26b <+853>: mov %eax,-0xf4(%rbp) 0x00007fb85bbcb271 <+859>: lea 0x19588(%rip),%rax # 0x7fb85bbe4800 0x00007fb85bbcb278 <+866>: mov %rax,%rdi 0x00007fb85bbcb27b <+869>: mov $0x0,%eax 0x00007fb85bbcb280 <+874>: callq 0x7fb85bbb1d00 <errmsg@plt> 0x00007fb85bbcb285 <+879>: mov %eax,-0xf0(%rbp) 0x00007fb85bbcb28b <+885>: mov -0xf4(%rbp),%eax 0x00007fb85bbcb291 <+891>: mov %eax,%edi 0x00007fb85bbcb293 <+893>: mov -0xf0(%rbp),%eax 0x00007fb85bbcb299 <+899>: mov %eax,%esi 0x00007fb85bbcb29b <+901>: mov $0x0,%eax 0x00007fb85bbcb2a0 <+906>: callq 0x7fb85bbb1580 <errfinish@plt> 0x00007fb85bbcb2a5 <+911>: mov $0x0,%eax 0x00007fb85bbcb2aa <+916>: cmp $0x1,%eax 0x00007fb85bbcb2ad <+919>: jne 0x7fb85bbcb2be <exec_stmt_fori+936> 0x00007fb85bbcb2af <+921>: mov $0x0,%eax 0x00007fb85bbcb2b4 <+926>: test %eax,%eax 0x00007fb85bbcb2b6 <+928>: jne 0x7fb85bbcb212 <exec_stmt_fori+764> 0x00007fb85bbcb2bc <+934>: jmp 0x7fb85bbcb2c3 <exec_stmt_fori+941> 0x00007fb85bbcb2be <+936>: callq 0x7fb85bbb1430 <abort@plt> 0x00007fb85bbcb2c3 <+941>: mov -0xb8(%rbp),%eax 0x00007fb85bbcb2c9 <+947>: mov %eax,-0x10c(%rbp) 0x00007fb85bbcb2cf <+953>: mov -0xd0(%rbp),%rax 0x00007fb85bbcb2d6 <+960>: mov %rax,%rdi 0x00007fb85bbcb2d9 <+963>: callq 0x7fb85bbcfb7a <exec_eval_cleanup> 0x00007fb85bbcb2de <+968>: mov -0xc8(%rbp),%rax 0x00007fb85bbcb2e5 <+975>: mov 0x28(%rax),%rax 0x00007fb85bbcb2e9 <+979>: test %rax,%rax 0x00007fb85bbcb2ec <+982>: je 0x7fb85bbcb569 <exec_stmt_fori+1619> 0x00007fb85bbcb2f2 <+988>: mov -0xd0(%rbp),%rax 0x00007fb85bbcb2f9 <+995>: mov -0xc8(%rbp),%rdx 0x00007fb85bbcb300 <+1002>: mov 0x28(%rdx),%rdx 0x00007fb85bbcb304 <+1006>: lea -0x11f(%rbp),%rcx 0x00007fb85bbcb30b <+1013>: lea -0x118(%rbp),%rbx 0x00007fb85bbcb312 <+1020>: lea -0x114(%rbp),%rsi 0x00007fb85bbcb319 <+1027>: mov %rax,%rdi 0x00007fb85bbcb31c <+1030>: mov %rsi,-0x40(%rbp) 0x00007fb85bbcb320 <+1034>: mov %rdx,%rsi 0x00007fb85bbcb323 <+1037>: mov %rcx,%rdx 0x00007fb85bbcb326 <+1040>: mov %rbx,%rcx 0x00007fb85bbcb329 <+1043>: mov -0x40(%rbp),%rax 0x00007fb85bbcb32d <+1047>: mov %rax,%r8 0x00007fb85bbcb330 <+1050>: callq 0x7fb85bbd4746 <exec_eval_expr> 0x00007fb85bbcb335 <+1055>: mov %rax,-0x90(%rbp) 0x00007fb85bbcb33c <+1062>: mov -0x90(%rbp),%rax 0x00007fb85bbcb343 <+1069>: mov %rax,-0xb8(%rbp) 0x00007fb85bbcb34a <+1076>: add $0xfffffffffffffff0,%rsp 0x00007fb85bbcb34e <+1080>: mov -0xd0(%rbp),%rax 0x00007fb85bbcb355 <+1087>: mov -0xb8(%rbp),%rdx 0x00007fb85bbcb35c <+1094>: lea -0x11f(%rbp),%rcx 0x00007fb85bbcb363 <+1101>: mov -0x118(%rbp),%ebx 0x00007fb85bbcb369 <+1107>: mov -0x114(%rbp),%esi 0x00007fb85bbcb36f <+1113>: mov -0xc0(%rbp),%rdi 0x00007fb85bbcb376 <+1120>: mov 0x20(%rdi),%rdi 0x00007fb85bbcb37a <+1124>: mov 0x8(%rdi),%edi 0x00007fb85bbcb37d <+1127>: mov -0xc0(%rbp),%r8 0x00007fb85bbcb384 <+1134>: mov 0x20(%r8),%r8 0x00007fb85bbcb388 <+1138>: mov 0x1c(%r8),%r8d 0x00007fb85bbcb38c <+1142>: mov %r8d,(%rsp) 0x00007fb85bbcb390 <+1146>: mov %edi,-0x38(%rbp) 0x00007fb85bbcb393 <+1149>: mov %rax,%rdi 0x00007fb85bbcb396 <+1152>: mov %esi,-0x30(%rbp) 0x00007fb85bbcb399 <+1155>: mov %rdx,%rsi 0x00007fb85bbcb39c <+1158>: mov %rcx,%rdx 0x00007fb85bbcb39f <+1161>: mov %ebx,%ecx 0x00007fb85bbcb3a1 <+1163>: mov -0x30(%rbp),%eax 0x00007fb85bbcb3a4 <+1166>: mov %eax,%r8d 0x00007fb85bbcb3a7 <+1169>: mov -0x38(%rbp),%eax 0x00007fb85bbcb3aa <+1172>: mov %eax,%r9d 0x00007fb85bbcb3ad <+1175>: callq 0x7fb85bbd7f58 <exec_cast_value> 0x00007fb85bbcb3b2 <+1180>: add $0x10,%rsp 0x00007fb85bbcb3b6 <+1184>: mov %rax,-0x88(%rbp) 0x00007fb85bbcb3bd <+1191>: mov -0x88(%rbp),%rax 0x00007fb85bbcb3c4 <+1198>: mov %rax,-0xb8(%rbp) 0x00007fb85bbcb3cb <+1205>: movsbl -0x11f(%rbp),%eax 0x00007fb85bbcb3d2 <+1212>: movsbq %al,%rax 0x00007fb85bbcb3d6 <+1216>: test %eax,%eax 0x00007fb85bbcb3d8 <+1218>: je 0x7fb85bbcb48f <exec_stmt_fori+1401> 0x00007fb85bbcb3de <+1224>: mov $0x14,%eax 0x00007fb85bbcb3e3 <+1229>: lea 0x18a0e(%rip),%rdx # 0x7fb85bbe3df8 0x00007fb85bbcb3ea <+1236>: mov $0x9d7,%ecx 0x00007fb85bbcb3ef <+1241>: lea 0x19485(%rip),%rbx # 0x7fb85bbe487b <__$Ua> 0x00007fb85bbcb3f6 <+1248>: lea 0x18a37(%rip),%rsi # 0x7fb85bbe3e34 0x00007fb85bbcb3fd <+1255>: mov %eax,%edi 0x00007fb85bbcb3ff <+1257>: mov %rsi,-0x28(%rbp) 0x00007fb85bbcb403 <+1261>: mov %rdx,%rsi 0x00007fb85bbcb406 <+1264>: mov %ecx,%edx 0x00007fb85bbcb408 <+1266>: mov %rbx,%rcx 0x00007fb85bbcb40b <+1269>: mov -0x28(%rbp),%rax 0x00007fb85bbcb40f <+1273>: mov %rax,%r8 0x00007fb85bbcb412 <+1276>: callq 0x7fb85bbb1330 <errstart@plt> 0x00007fb85bbcb417 <+1281>: mov %eax,-0xec(%rbp) 0x00007fb85bbcb41d <+1287>: mov -0xec(%rbp),%eax 0x00007fb85bbcb423 <+1293>: movsbq %al,%rax 0x00007fb85bbcb427 <+1297>: test %eax,%eax 0x00007fb85bbcb429 <+1299>: je 0x7fb85bbcb471 <exec_stmt_fori+1371> 0x00007fb85bbcb42b <+1301>: mov $0x4000082,%eax 0x00007fb85bbcb430 <+1306>: mov %eax,%edi 0x00007fb85bbcb432 <+1308>: callq 0x7fb85bbb1ed0 <errcode@plt> 0x00007fb85bbcb437 <+1313>: mov %eax,-0xe8(%rbp) 0x00007fb85bbcb43d <+1319>: lea 0x193e4(%rip),%rax # 0x7fb85bbe4828 0x00007fb85bbcb444 <+1326>: mov %rax,%rdi 0x00007fb85bbcb447 <+1329>: mov $0x0,%eax 0x00007fb85bbcb44c <+1334>: callq 0x7fb85bbb1d00 <errmsg@plt> 0x00007fb85bbcb451 <+1339>: mov %eax,-0xe4(%rbp) 0x00007fb85bbcb457 <+1345>: mov -0xe8(%rbp),%eax 0x00007fb85bbcb45d <+1351>: mov %eax,%edi 0x00007fb85bbcb45f <+1353>: mov -0xe4(%rbp),%eax 0x00007fb85bbcb465 <+1359>: mov %eax,%esi 0x00007fb85bbcb467 <+1361>: mov $0x0,%eax 0x00007fb85bbcb46c <+1366>: callq 0x7fb85bbb1580 <errfinish@plt> 0x00007fb85bbcb471 <+1371>: mov $0x0,%eax 0x00007fb85bbcb476 <+1376>: cmp $0x1,%eax 0x00007fb85bbcb479 <+1379>: jne 0x7fb85bbcb48a <exec_stmt_fori+1396> 0x00007fb85bbcb47b <+1381>: mov $0x0,%eax 0x00007fb85bbcb480 <+1386>: test %eax,%eax 0x00007fb85bbcb482 <+1388>: jne 0x7fb85bbcb3de <exec_stmt_fori+1224> 0x00007fb85bbcb488 <+1394>: jmp 0x7fb85bbcb48f <exec_stmt_fori+1401> 0x00007fb85bbcb48a <+1396>: callq 0x7fb85bbb1430 <abort@plt> 0x00007fb85bbcb48f <+1401>: mov -0xb8(%rbp),%eax 0x00007fb85bbcb495 <+1407>: mov %eax,-0x108(%rbp) 0x00007fb85bbcb49b <+1413>: mov -0xd0(%rbp),%rax 0x00007fb85bbcb4a2 <+1420>: mov %rax,%rdi 0x00007fb85bbcb4a5 <+1423>: callq 0x7fb85bbcfb7a <exec_eval_cleanup> 0x00007fb85bbcb4aa <+1428>: mov -0x108(%rbp),%eax 0x00007fb85bbcb4b0 <+1434>: test %eax,%eax 0x00007fb85bbcb4b2 <+1436>: jg 0x7fb85bbcb573 <exec_stmt_fori+1629> 0x00007fb85bbcb4b8 <+1442>: mov $0x14,%eax 0x00007fb85bbcb4bd <+1447>: lea 0x18934(%rip),%rdx # 0x7fb85bbe3df8 0x00007fb85bbcb4c4 <+1454>: mov $0x9dd,%ecx 0x00007fb85bbcb4c9 <+1459>: lea 0x193ab(%rip),%rbx # 0x7fb85bbe487b <__$Ua> 0x00007fb85bbcb4d0 <+1466>: lea 0x1895d(%rip),%rsi # 0x7fb85bbe3e34 0x00007fb85bbcb4d7 <+1473>: mov %eax,%edi 0x00007fb85bbcb4d9 <+1475>: mov %rsi,-0x20(%rbp) 0x00007fb85bbcb4dd <+1479>: mov %rdx,%rsi 0x00007fb85bbcb4e0 <+1482>: mov %ecx,%edx 0x00007fb85bbcb4e2 <+1484>: mov %rbx,%rcx 0x00007fb85bbcb4e5 <+1487>: mov -0x20(%rbp),%rax 0x00007fb85bbcb4e9 <+1491>: mov %rax,%r8 0x00007fb85bbcb4ec <+1494>: callq 0x7fb85bbb1330 <errstart@plt> 0x00007fb85bbcb4f1 <+1499>: mov %eax,-0xe0(%rbp) 0x00007fb85bbcb4f7 <+1505>: mov -0xe0(%rbp),%eax 0x00007fb85bbcb4fd <+1511>: movsbq %al,%rax 0x00007fb85bbcb501 <+1515>: test %eax,%eax 0x00007fb85bbcb503 <+1517>: je 0x7fb85bbcb54b <exec_stmt_fori+1589> 0x00007fb85bbcb505 <+1519>: mov $0x3080082,%eax 0x00007fb85bbcb50a <+1524>: mov %eax,%edi 0x00007fb85bbcb50c <+1526>: callq 0x7fb85bbb1ed0 <errcode@plt> 0x00007fb85bbcb511 <+1531>: mov %eax,-0xdc(%rbp) 0x00007fb85bbcb517 <+1537>: lea 0x1932e(%rip),%rax # 0x7fb85bbe484c 0x00007fb85bbcb51e <+1544>: mov %rax,%rdi 0x00007fb85bbcb521 <+1547>: mov $0x0,%eax 0x00007fb85bbcb526 <+1552>: callq 0x7fb85bbb1d00 <errmsg@plt> 0x00007fb85bbcb52b <+1557>: mov %eax,-0xd8(%rbp) 0x00007fb85bbcb531 <+1563>: mov -0xdc(%rbp),%eax 0x00007fb85bbcb537 <+1569>: mov %eax,%edi 0x00007fb85bbcb539 <+1571>: mov -0xd8(%rbp),%eax 0x00007fb85bbcb53f <+1577>: mov %eax,%esi 0x00007fb85bbcb541 <+1579>: mov $0x0,%eax 0x00007fb85bbcb546 <+1584>: callq 0x7fb85bbb1580 <errfinish@plt> 0x00007fb85bbcb54b <+1589>: mov $0x0,%eax 0x00007fb85bbcb550 <+1594>: cmp $0x1,%eax 0x00007fb85bbcb553 <+1597>: jne 0x7fb85bbcb564 <exec_stmt_fori+1614> 0x00007fb85bbcb555 <+1599>: mov $0x0,%eax 0x00007fb85bbcb55a <+1604>: test %eax,%eax 0x00007fb85bbcb55c <+1606>: jne 0x7fb85bbcb4b8 <exec_stmt_fori+1442> 0x00007fb85bbcb562 <+1612>: jmp 0x7fb85bbcb573 <exec_stmt_fori+1629> 0x00007fb85bbcb564 <+1614>: callq 0x7fb85bbb1430 <abort@plt> 0x00007fb85bbcb569 <+1619>: movl $0x1,-0x108(%rbp) 0x00007fb85bbcb573 <+1629>: mov $0x0,%eax 0x00007fb85bbcb578 <+1634>: cmp $0x1,%eax 0x00007fb85bbcb57b <+1637>: je 0x7fb85bbcb7ea <exec_stmt_fori+2260> 0x00007fb85bbcb581 <+1643>: mov -0xc8(%rbp),%rax 0x00007fb85bbcb588 <+1650>: mov 0x30(%rax),%eax 0x00007fb85bbcb58b <+1653>: test %eax,%eax 0x00007fb85bbcb58d <+1655>: je 0x7fb85bbcb5a5 <exec_stmt_fori+1679> 0x00007fb85bbcb58f <+1657>: mov -0x110(%rbp),%eax 0x00007fb85bbcb595 <+1663>: mov -0x10c(%rbp),%edx 0x00007fb85bbcb59b <+1669>: cmp %edx,%eax 0x00007fb85bbcb59d <+1671>: jl 0x7fb85bbcb7ea <exec_stmt_fori+2260> 0x00007fb85bbcb5a3 <+1677>: jmp 0x7fb85bbcb5b9 <exec_stmt_fori+1699> 0x00007fb85bbcb5a5 <+1679>: mov -0x110(%rbp),%eax 0x00007fb85bbcb5ab <+1685>: mov -0x10c(%rbp),%edx 0x00007fb85bbcb5b1 <+1691>: cmp %edx,%eax 0x00007fb85bbcb5b3 <+1693>: jg 0x7fb85bbcb7ea <exec_stmt_fori+2260> 0x00007fb85bbcb5b9 <+1699>: movb $0x1,-0x120(%rbp) 0x00007fb85bbcb5c0 <+1706>: mov -0xd0(%rbp),%rax 0x00007fb85bbcb5c7 <+1713>: mov -0xc0(%rbp),%rdx 0x00007fb85bbcb5ce <+1720>: mov -0x110(%rbp),%ecx 0x00007fb85bbcb5d4 <+1726>: movslq %ecx,%rcx 0x00007fb85bbcb5d7 <+1729>: mov $0x0,%ebx 0x00007fb85bbcb5dc <+1734>: mov $0x0,%esi 0x00007fb85bbcb5e1 <+1739>: mov %rax,%rdi 0x00007fb85bbcb5e4 <+1742>: mov %esi,-0x18(%rbp) 0x00007fb85bbcb5e7 <+1745>: mov %rdx,%rsi 0x00007fb85bbcb5ea <+1748>: mov %rcx,%rdx 0x00007fb85bbcb5ed <+1751>: mov %ebx,%ecx 0x00007fb85bbcb5ef <+1753>: mov -0x18(%rbp),%eax 0x00007fb85bbcb5f2 <+1756>: mov %eax,%r8d 0x00007fb85bbcb5f5 <+1759>: callq 0x7fb85bbd920c <assign_simple_var> 0x00007fb85bbcb5fa <+1764>: mov -0xd0(%rbp),%rax 0x00007fb85bbcb601 <+1771>: mov -0xc8(%rbp),%rdx 0x00007fb85bbcb608 <+1778>: mov 0x38(%rdx),%rdx 0x00007fb85bbcb60c <+1782>: mov %rax,%rdi 0x00007fb85bbcb60f <+1785>: mov %rdx,%rsi 0x00007fb85bbcb612 <+1788>: callq 0x7fb85bbc93d6 <exec_stmts> 0x00007fb85bbcb617 <+1793>: mov %eax,-0xd4(%rbp) 0x00007fb85bbcb61d <+1799>: mov -0xd4(%rbp),%eax 0x00007fb85bbcb623 <+1805>: mov %eax,-0x11c(%rbp) 0x00007fb85bbcb629 <+1811>: mov -0x11c(%rbp),%eax 0x00007fb85bbcb62f <+1817>: cmp $0x2,%eax 0x00007fb85bbcb632 <+1820>: je 0x7fb85bbcb7ea <exec_stmt_fori+2260> 0x00007fb85bbcb638 <+1826>: mov -0x11c(%rbp),%eax 0x00007fb85bbcb63e <+1832>: cmp $0x1,%eax 0x00007fb85bbcb641 <+1835>: je 0x7fb85bbcb70b <exec_stmt_fori+2037> 0x00007fb85bbcb647 <+1841>: mov -0x11c(%rbp),%eax 0x00007fb85bbcb64d <+1847>: cmp $0x3,%eax 0x00007fb85bbcb650 <+1850>: je 0x7fb85bbcb694 <exec_stmt_fori+1918> 0x00007fb85bbcb652 <+1852>: mov -0x11c(%rbp),%eax 0x00007fb85bbcb658 <+1858>: test %eax,%eax 0x00007fb85bbcb65a <+1860>: jne 0x7fb85bbcb66a <exec_stmt_fori+1876> 0x00007fb85bbcb65c <+1862>: mov $0x0,%eax 0x00007fb85bbcb661 <+1867>: test %eax,%eax 0x00007fb85bbcb663 <+1869>: jne 0x7fb85bbcb652 <exec_stmt_fori+1852> 0x00007fb85bbcb665 <+1871>: jmpq 0x7fb85bbcb77f <exec_stmt_fori+2153> 0x00007fb85bbcb66a <+1876>: lea 0x1914f(%rip),%rax # 0x7fb85bbe47c0 0x00007fb85bbcb671 <+1883>: lea 0x186d0(%rip),%rdx # 0x7fb85bbe3d48 0x00007fb85bbcb678 <+1890>: lea 0x18779(%rip),%rcx # 0x7fb85bbe3df8 0x00007fb85bbcb67f <+1897>: mov $0xa01,%ebx 0x00007fb85bbcb684 <+1902>: mov %rax,%rdi 0x00007fb85bbcb687 <+1905>: mov %rdx,%rsi 0x00007fb85bbcb68a <+1908>: mov %rcx,%rdx 0x00007fb85bbcb68d <+1911>: mov %ebx,%ecx 0x00007fb85bbcb68f <+1913>: callq 0x7fb85bbb1930 <ExceptionalCondition@plt> 0x00007fb85bbcb694 <+1918>: mov -0xd0(%rbp),%rax 0x00007fb85bbcb69b <+1925>: mov 0x30(%rax),%rax 0x00007fb85bbcb69f <+1929>: test %rax,%rax 0x00007fb85bbcb6a2 <+1932>: je 0x7fb85bbcb6ff <exec_stmt_fori+2025> 0x00007fb85bbcb6a4 <+1934>: mov -0xc8(%rbp),%rax 0x00007fb85bbcb6ab <+1941>: mov 0x8(%rax),%rax 0x00007fb85bbcb6af <+1945>: test %rax,%rax 0x00007fb85bbcb6b2 <+1948>: je 0x7fb85bbcb7ea <exec_stmt_fori+2260> 0x00007fb85bbcb6b8 <+1954>: mov -0xc8(%rbp),%rax 0x00007fb85bbcb6bf <+1961>: mov 0x8(%rax),%rax 0x00007fb85bbcb6c3 <+1965>: mov -0xd0(%rbp),%rdx 0x00007fb85bbcb6ca <+1972>: mov 0x30(%rdx),%rdx 0x00007fb85bbcb6ce <+1976>: mov %rax,%rdi 0x00007fb85bbcb6d1 <+1979>: mov %rdx,%rsi 0x00007fb85bbcb6d4 <+1982>: callq 0x7fb85bbb1e30 <strcmp@plt> 0x00007fb85bbcb6d9 <+1987>: test %eax,%eax 0x00007fb85bbcb6db <+1989>: jne 0x7fb85bbcb7ea <exec_stmt_fori+2260> 0x00007fb85bbcb6e1 <+1995>: mov -0xd0(%rbp),%rax 0x00007fb85bbcb6e8 <+2002>: movq $0x0,0x30(%rax) 0x00007fb85bbcb6f0 <+2010>: movl $0x0,-0x11c(%rbp) 0x00007fb85bbcb6fa <+2020>: jmpq 0x7fb85bbcb77f <exec_stmt_fori+2153> 0x00007fb85bbcb6ff <+2025>: movl $0x0,-0x11c(%rbp) 0x00007fb85bbcb709 <+2035>: jmp 0x7fb85bbcb77f <exec_stmt_fori+2153> 0x00007fb85bbcb70b <+2037>: mov -0xd0(%rbp),%rax 0x00007fb85bbcb712 <+2044>: mov 0x30(%rax),%rax 0x00007fb85bbcb716 <+2048>: test %rax,%rax 0x00007fb85bbcb719 <+2051>: je 0x7fb85bbcb773 <exec_stmt_fori+2141> 0x00007fb85bbcb71b <+2053>: mov -0xc8(%rbp),%rax 0x00007fb85bbcb722 <+2060>: mov 0x8(%rax),%rax 0x00007fb85bbcb726 <+2064>: test %rax,%rax 0x00007fb85bbcb729 <+2067>: je 0x7fb85bbcb7ea <exec_stmt_fori+2260> 0x00007fb85bbcb72f <+2073>: mov -0xc8(%rbp),%rax 0x00007fb85bbcb736 <+2080>: mov 0x8(%rax),%rax 0x00007fb85bbcb73a <+2084>: mov -0xd0(%rbp),%rdx 0x00007fb85bbcb741 <+2091>: mov 0x30(%rdx),%rdx 0x00007fb85bbcb745 <+2095>: mov %rax,%rdi 0x00007fb85bbcb748 <+2098>: mov %rdx,%rsi 0x00007fb85bbcb74b <+2101>: callq 0x7fb85bbb1e30 <strcmp@plt> 0x00007fb85bbcb750 <+2106>: test %eax,%eax 0x00007fb85bbcb752 <+2108>: jne 0x7fb85bbcb7ea <exec_stmt_fori+2260> 0x00007fb85bbcb758 <+2114>: mov -0xd0(%rbp),%rax 0x00007fb85bbcb75f <+2121>: movq $0x0,0x30(%rax) 0x00007fb85bbcb767 <+2129>: movl $0x0,-0x11c(%rbp) 0x00007fb85bbcb771 <+2139>: jmp 0x7fb85bbcb7ea <exec_stmt_fori+2260> 0x00007fb85bbcb773 <+2141>: movl $0x0,-0x11c(%rbp) 0x00007fb85bbcb77d <+2151>: jmp 0x7fb85bbcb7ea <exec_stmt_fori+2260> 0x00007fb85bbcb77f <+2153>: mov -0xc8(%rbp),%rax 0x00007fb85bbcb786 <+2160>: mov 0x30(%rax),%eax 0x00007fb85bbcb789 <+2163>: test %eax,%eax 0x00007fb85bbcb78b <+2165>: je 0x7fb85bbcb7bb <exec_stmt_fori+2213> 0x00007fb85bbcb78d <+2167>: mov -0x110(%rbp),%eax 0x00007fb85bbcb793 <+2173>: mov $0x80000000,%edx 0x00007fb85bbcb798 <+2178>: add -0x108(%rbp),%edx 0x00007fb85bbcb79e <+2184>: cmp %edx,%eax 0x00007fb85bbcb7a0 <+2186>: jl 0x7fb85bbcb7ea <exec_stmt_fori+2260> 0x00007fb85bbcb7a2 <+2188>: mov -0x108(%rbp),%eax 0x00007fb85bbcb7a8 <+2194>: neg %eax 0x00007fb85bbcb7aa <+2196>: add -0x110(%rbp),%eax 0x00007fb85bbcb7b0 <+2202>: mov %eax,-0x110(%rbp) 0x00007fb85bbcb7b6 <+2208>: jmpq 0x7fb85bbcb573 <exec_stmt_fori+1629> 0x00007fb85bbcb7bb <+2213>: mov -0x110(%rbp),%eax 0x00007fb85bbcb7c1 <+2219>: mov -0x108(%rbp),%edx 0x00007fb85bbcb7c7 <+2225>: neg %edx 0x00007fb85bbcb7c9 <+2227>: add $0x7fffffff,%edx 0x00007fb85bbcb7cf <+2233>: cmp %edx,%eax 0x00007fb85bbcb7d1 <+2235>: jg 0x7fb85bbcb7ea <exec_stmt_fori+2260> 0x00007fb85bbcb7d3 <+2237>: mov -0x108(%rbp),%eax 0x00007fb85bbcb7d9 <+2243>: add -0x110(%rbp),%eax 0x00007fb85bbcb7df <+2249>: mov %eax,-0x110(%rbp) 0x00007fb85bbcb7e5 <+2255>: jmpq 0x7fb85bbcb573 <exec_stmt_fori+1629> 0x00007fb85bbcb7ea <+2260>: mov -0xd0(%rbp),%rax 0x00007fb85bbcb7f1 <+2267>: movsbl -0x120(%rbp),%edx 0x00007fb85bbcb7f8 <+2274>: mov %rax,%rdi 0x00007fb85bbcb7fb <+2277>: mov %edx,%esi 0x00007fb85bbcb7fd <+2279>: callq 0x7fb85bbd8e4c <exec_set_found> 0x00007fb85bbcb802 <+2284>: mov -0x11c(%rbp),%eax 0x00007fb85bbcb808 <+2290>: mov -0x10(%rbp),%rbx 0x00007fb85bbcb80c <+2294>: leaveq 0x00007fb85bbcb80d <+2295>: retq
Dump of assembler code for function exec_stmt_fori: 0x00007f7121944f16 <+0>: push %rbp 0x00007f7121944f17 <+1>: mov %rsp,%rbp 0x00007f7121944f1a <+4>: sub $0x120,%rsp 0x00007f7121944f21 <+11>: mov %rbx,-0x10(%rbp) 0x00007f7121944f25 <+15>: mov %rdi,-0xd0(%rbp) 0x00007f7121944f2c <+22>: mov %rsi,-0xc8(%rbp) => 0x00007f7121944f33 <+29>: movb $0x0,-0x120(%rbp) 0x00007f7121944f3a <+36>: movl $0x0,-0x11c(%rbp) 0x00007f7121944f44 <+46>: mov -0xd0(%rbp),%rax 0x00007f7121944f4b <+53>: mov -0xc8(%rbp),%rdx 0x00007f7121944f52 <+60>: mov 0x10(%rdx),%rdx 0x00007f7121944f56 <+64>: mov 0x4(%rdx),%edx 0x00007f7121944f59 <+67>: movslq %edx,%rdx 0x00007f7121944f5c <+70>: shl $0x3,%rdx 0x00007f7121944f60 <+74>: add 0x70(%rax),%rdx 0x00007f7121944f64 <+78>: mov (%rdx),%rax 0x00007f7121944f67 <+81>: mov %rax,-0xc0(%rbp) 0x00007f7121944f6e <+88>: mov -0xd0(%rbp),%rax 0x00007f7121944f75 <+95>: mov -0xc8(%rbp),%rdx 0x00007f7121944f7c <+102>: mov 0x18(%rdx),%rdx 0x00007f7121944f80 <+106>: lea -0x11f(%rbp),%rcx 0x00007f7121944f87 <+113>: lea -0x118(%rbp),%rbx 0x00007f7121944f8e <+120>: lea -0x114(%rbp),%rsi 0x00007f7121944f95 <+127>: mov %rax,%rdi 0x00007f7121944f98 <+130>: mov %rsi,-0x80(%rbp) 0x00007f7121944f9c <+134>: mov %rdx,%rsi 0x00007f7121944f9f <+137>: mov %rcx,%rdx 0x00007f7121944fa2 <+140>: mov %rbx,%rcx 0x00007f7121944fa5 <+143>: mov -0x80(%rbp),%rax 0x00007f7121944fa9 <+147>: mov %rax,%r8 0x00007f7121944fac <+150>: callq 0x7f712194e72c <exec_eval_expr> 0x00007f7121944fb1 <+155>: mov %rax,-0xb0(%rbp) 0x00007f7121944fb8 <+162>: mov -0xb0(%rbp),%rax 0x00007f7121944fbf <+169>: mov %rax,-0xb8(%rbp) 0x00007f7121944fc6 <+176>: add $0xfffffffffffffff0,%rsp 0x00007f7121944fca <+180>: mov -0xd0(%rbp),%rax 0x00007f7121944fd1 <+187>: mov -0xb8(%rbp),%rdx 0x00007f7121944fd8 <+194>: lea -0x11f(%rbp),%rcx 0x00007f7121944fdf <+201>: mov -0x118(%rbp),%ebx 0x00007f7121944fe5 <+207>: mov -0x114(%rbp),%esi 0x00007f7121944feb <+213>: mov -0xc0(%rbp),%rdi 0x00007f7121944ff2 <+220>: mov 0x20(%rdi),%rdi 0x00007f7121944ff6 <+224>: mov 0x8(%rdi),%edi 0x00007f7121944ff9 <+227>: mov -0xc0(%rbp),%r8 0x00007f7121945000 <+234>: mov 0x20(%r8),%r8 0x00007f7121945004 <+238>: mov 0x1c(%r8),%r8d 0x00007f7121945008 <+242>: mov %r8d,(%rsp) 0x00007f712194500c <+246>: mov %edi,-0x78(%rbp) 0x00007f712194500f <+249>: mov %rax,%rdi 0x00007f7121945012 <+252>: mov %esi,-0x70(%rbp) 0x00007f7121945015 <+255>: mov %rdx,%rsi 0x00007f7121945018 <+258>: mov %rcx,%rdx 0x00007f712194501b <+261>: mov %ebx,%ecx 0x00007f712194501d <+263>: mov -0x70(%rbp),%eax 0x00007f7121945020 <+266>: mov %eax,%r8d 0x00007f7121945023 <+269>: mov -0x78(%rbp),%eax 0x00007f7121945026 <+272>: mov %eax,%r9d 0x00007f7121945029 <+275>: callq 0x7f7121951f3e <exec_cast_value> 0x00007f712194502e <+280>: add $0x10,%rsp 0x00007f7121945032 <+284>: mov %rax,-0xa8(%rbp) 0x00007f7121945039 <+291>: mov -0xa8(%rbp),%rax 0x00007f7121945040 <+298>: mov %rax,-0xb8(%rbp) 0x00007f7121945047 <+305>: movsbl -0x11f(%rbp),%eax 0x00007f712194504e <+312>: movsbq %al,%rax 0x00007f7121945052 <+316>: test %eax,%eax 0x00007f7121945054 <+318>: je 0x7f712194510b <exec_stmt_fori+501> 0x00007f712194505a <+324>: mov $0x14,%eax 0x00007f712194505f <+329>: lea 0x18d72(%rip),%rdx # 0x7f712195ddd8 0x00007f7121945066 <+336>: mov $0x9b5,%ecx 0x00007f712194506b <+341>: lea 0x197e9(%rip),%rbx # 0x7f712195e85b <__$Ua> 0x00007f7121945072 <+348>: lea 0x18d9b(%rip),%rsi # 0x7f712195de14 0x00007f7121945079 <+355>: mov %eax,%edi 0x00007f712194507b <+357>: mov %rsi,-0x68(%rbp) 0x00007f712194507f <+361>: mov %rdx,%rsi 0x00007f7121945082 <+364>: mov %ecx,%edx 0x00007f7121945084 <+366>: mov %rbx,%rcx 0x00007f7121945087 <+369>: mov -0x68(%rbp),%rax 0x00007f712194508b <+373>: mov %rax,%r8 0x00007f712194508e <+376>: callq 0x7f712192b330 <errstart@plt> 0x00007f7121945093 <+381>: mov %eax,-0x104(%rbp) 0x00007f7121945099 <+387>: mov -0x104(%rbp),%eax 0x00007f712194509f <+393>: movsbq %al,%rax 0x00007f71219450a3 <+397>: test %eax,%eax 0x00007f71219450a5 <+399>: je 0x7f71219450ed <exec_stmt_fori+471> 0x00007f71219450a7 <+401>: mov $0x4000082,%eax 0x00007f71219450ac <+406>: mov %eax,%edi 0x00007f71219450ae <+408>: callq 0x7f712192bed0 <errcode@plt> 0x00007f71219450b3 <+413>: mov %eax,-0x100(%rbp) 0x00007f71219450b9 <+419>: lea 0x196f8(%rip),%rax # 0x7f712195e7b8 0x00007f71219450c0 <+426>: mov %rax,%rdi 0x00007f71219450c3 <+429>: mov $0x0,%eax 0x00007f71219450c8 <+434>: callq 0x7f712192bd00 <errmsg@plt> 0x00007f71219450cd <+439>: mov %eax,-0xfc(%rbp) 0x00007f71219450d3 <+445>: mov -0x100(%rbp),%eax 0x00007f71219450d9 <+451>: mov %eax,%edi 0x00007f71219450db <+453>: mov -0xfc(%rbp),%eax 0x00007f71219450e1 <+459>: mov %eax,%esi 0x00007f71219450e3 <+461>: mov $0x0,%eax 0x00007f71219450e8 <+466>: callq 0x7f712192b580 <errfinish@plt> 0x00007f71219450ed <+471>: mov $0x0,%eax 0x00007f71219450f2 <+476>: cmp $0x1,%eax 0x00007f71219450f5 <+479>: jne 0x7f7121945106 <exec_stmt_fori+496> 0x00007f71219450f7 <+481>: mov $0x0,%eax 0x00007f71219450fc <+486>: test %eax,%eax 0x00007f71219450fe <+488>: jne 0x7f712194505a <exec_stmt_fori+324> 0x00007f7121945104 <+494>: jmp 0x7f712194510b <exec_stmt_fori+501> 0x00007f7121945106 <+496>: callq 0x7f712192b430 <abort@plt> 0x00007f712194510b <+501>: mov -0xb8(%rbp),%eax 0x00007f7121945111 <+507>: mov %eax,-0x110(%rbp) 0x00007f7121945117 <+513>: mov -0xd0(%rbp),%rax 0x00007f712194511e <+520>: mov %rax,%rdi 0x00007f7121945121 <+523>: callq 0x7f7121949b60 <exec_eval_cleanup> 0x00007f7121945126 <+528>: mov -0xd0(%rbp),%rax 0x00007f712194512d <+535>: mov -0xc8(%rbp),%rdx 0x00007f7121945134 <+542>: mov 0x20(%rdx),%rdx 0x00007f7121945138 <+546>: lea -0x11f(%rbp),%rcx 0x00007f712194513f <+553>: lea -0x118(%rbp),%rbx 0x00007f7121945146 <+560>: lea -0x114(%rbp),%rsi 0x00007f712194514d <+567>: mov %rax,%rdi 0x00007f7121945150 <+570>: mov %rsi,-0x60(%rbp) 0x00007f7121945154 <+574>: mov %rdx,%rsi 0x00007f7121945157 <+577>: mov %rcx,%rdx 0x00007f712194515a <+580>: mov %rbx,%rcx 0x00007f712194515d <+583>: mov -0x60(%rbp),%rax 0x00007f7121945161 <+587>: mov %rax,%r8 0x00007f7121945164 <+590>: callq 0x7f712194e72c <exec_eval_expr> 0x00007f7121945169 <+595>: mov %rax,-0xa0(%rbp) 0x00007f7121945170 <+602>: mov -0xa0(%rbp),%rax 0x00007f7121945177 <+609>: mov %rax,-0xb8(%rbp) 0x00007f712194517e <+616>: add $0xfffffffffffffff0,%rsp 0x00007f7121945182 <+620>: mov -0xd0(%rbp),%rax 0x00007f7121945189 <+627>: mov -0xb8(%rbp),%rdx 0x00007f7121945190 <+634>: lea -0x11f(%rbp),%rcx 0x00007f7121945197 <+641>: mov -0x118(%rbp),%ebx 0x00007f712194519d <+647>: mov -0x114(%rbp),%esi 0x00007f71219451a3 <+653>: mov -0xc0(%rbp),%rdi 0x00007f71219451aa <+660>: mov 0x20(%rdi),%rdi 0x00007f71219451ae <+664>: mov 0x8(%rdi),%edi 0x00007f71219451b1 <+667>: mov -0xc0(%rbp),%r8 0x00007f71219451b8 <+674>: mov 0x20(%r8),%r8 0x00007f71219451bc <+678>: mov 0x1c(%r8),%r8d 0x00007f71219451c0 <+682>: mov %r8d,(%rsp) 0x00007f71219451c4 <+686>: mov %edi,-0x58(%rbp) 0x00007f71219451c7 <+689>: mov %rax,%rdi 0x00007f71219451ca <+692>: mov %esi,-0x50(%rbp) 0x00007f71219451cd <+695>: mov %rdx,%rsi 0x00007f71219451d0 <+698>: mov %rcx,%rdx 0x00007f71219451d3 <+701>: mov %ebx,%ecx 0x00007f71219451d5 <+703>: mov -0x50(%rbp),%eax 0x00007f71219451d8 <+706>: mov %eax,%r8d 0x00007f71219451db <+709>: mov -0x58(%rbp),%eax 0x00007f71219451de <+712>: mov %eax,%r9d 0x00007f71219451e1 <+715>: callq 0x7f7121951f3e <exec_cast_value> 0x00007f71219451e6 <+720>: add $0x10,%rsp 0x00007f71219451ea <+724>: mov %rax,-0x98(%rbp) 0x00007f71219451f1 <+731>: mov -0x98(%rbp),%rax 0x00007f71219451f8 <+738>: mov %rax,-0xb8(%rbp) 0x00007f71219451ff <+745>: movsbl -0x11f(%rbp),%eax 0x00007f7121945206 <+752>: movsbq %al,%rax 0x00007f712194520a <+756>: test %eax,%eax 0x00007f712194520c <+758>: je 0x7f71219452c3 <exec_stmt_fori+941> 0x00007f7121945212 <+764>: mov $0x14,%eax 0x00007f7121945217 <+769>: lea 0x18bba(%rip),%rdx # 0x7f712195ddd8 0x00007f712194521e <+776>: mov $0x9c5,%ecx 0x00007f7121945223 <+781>: lea 0x19631(%rip),%rbx # 0x7f712195e85b <__$Ua> 0x00007f712194522a <+788>: lea 0x18be3(%rip),%rsi # 0x7f712195de14 0x00007f7121945231 <+795>: mov %eax,%edi 0x00007f7121945233 <+797>: mov %rsi,-0x48(%rbp) 0x00007f7121945237 <+801>: mov %rdx,%rsi 0x00007f712194523a <+804>: mov %ecx,%edx 0x00007f712194523c <+806>: mov %rbx,%rcx 0x00007f712194523f <+809>: mov -0x48(%rbp),%rax 0x00007f7121945243 <+813>: mov %rax,%r8 0x00007f7121945246 <+816>: callq 0x7f712192b330 <errstart@plt> 0x00007f712194524b <+821>: mov %eax,-0xf8(%rbp) 0x00007f7121945251 <+827>: mov -0xf8(%rbp),%eax 0x00007f7121945257 <+833>: movsbq %al,%rax 0x00007f712194525b <+837>: test %eax,%eax 0x00007f712194525d <+839>: je 0x7f71219452a5 <exec_stmt_fori+911> 0x00007f712194525f <+841>: mov $0x4000082,%eax 0x00007f7121945264 <+846>: mov %eax,%edi 0x00007f7121945266 <+848>: callq 0x7f712192bed0 <errcode@plt> 0x00007f712194526b <+853>: mov %eax,-0xf4(%rbp) 0x00007f7121945271 <+859>: lea 0x19568(%rip),%rax # 0x7f712195e7e0 0x00007f7121945278 <+866>: mov %rax,%rdi 0x00007f712194527b <+869>: mov $0x0,%eax 0x00007f7121945280 <+874>: callq 0x7f712192bd00 <errmsg@plt> 0x00007f7121945285 <+879>: mov %eax,-0xf0(%rbp) 0x00007f712194528b <+885>: mov -0xf4(%rbp),%eax 0x00007f7121945291 <+891>: mov %eax,%edi 0x00007f7121945293 <+893>: mov -0xf0(%rbp),%eax 0x00007f7121945299 <+899>: mov %eax,%esi 0x00007f712194529b <+901>: mov $0x0,%eax 0x00007f71219452a0 <+906>: callq 0x7f712192b580 <errfinish@plt> 0x00007f71219452a5 <+911>: mov $0x0,%eax 0x00007f71219452aa <+916>: cmp $0x1,%eax 0x00007f71219452ad <+919>: jne 0x7f71219452be <exec_stmt_fori+936> 0x00007f71219452af <+921>: mov $0x0,%eax 0x00007f71219452b4 <+926>: test %eax,%eax 0x00007f71219452b6 <+928>: jne 0x7f7121945212 <exec_stmt_fori+764> 0x00007f71219452bc <+934>: jmp 0x7f71219452c3 <exec_stmt_fori+941> 0x00007f71219452be <+936>: callq 0x7f712192b430 <abort@plt> 0x00007f71219452c3 <+941>: mov -0xb8(%rbp),%eax 0x00007f71219452c9 <+947>: mov %eax,-0x10c(%rbp) 0x00007f71219452cf <+953>: mov -0xd0(%rbp),%rax 0x00007f71219452d6 <+960>: mov %rax,%rdi 0x00007f71219452d9 <+963>: callq 0x7f7121949b60 <exec_eval_cleanup> 0x00007f71219452de <+968>: mov -0xc8(%rbp),%rax 0x00007f71219452e5 <+975>: mov 0x28(%rax),%rax 0x00007f71219452e9 <+979>: test %rax,%rax 0x00007f71219452ec <+982>: je 0x7f7121945569 <exec_stmt_fori+1619> 0x00007f71219452f2 <+988>: mov -0xd0(%rbp),%rax 0x00007f71219452f9 <+995>: mov -0xc8(%rbp),%rdx 0x00007f7121945300 <+1002>: mov 0x28(%rdx),%rdx 0x00007f7121945304 <+1006>: lea -0x11f(%rbp),%rcx 0x00007f712194530b <+1013>: lea -0x118(%rbp),%rbx 0x00007f7121945312 <+1020>: lea -0x114(%rbp),%rsi 0x00007f7121945319 <+1027>: mov %rax,%rdi 0x00007f712194531c <+1030>: mov %rsi,-0x40(%rbp) 0x00007f7121945320 <+1034>: mov %rdx,%rsi 0x00007f7121945323 <+1037>: mov %rcx,%rdx 0x00007f7121945326 <+1040>: mov %rbx,%rcx 0x00007f7121945329 <+1043>: mov -0x40(%rbp),%rax 0x00007f712194532d <+1047>: mov %rax,%r8 0x00007f7121945330 <+1050>: callq 0x7f712194e72c <exec_eval_expr> 0x00007f7121945335 <+1055>: mov %rax,-0x90(%rbp) 0x00007f712194533c <+1062>: mov -0x90(%rbp),%rax 0x00007f7121945343 <+1069>: mov %rax,-0xb8(%rbp) 0x00007f712194534a <+1076>: add $0xfffffffffffffff0,%rsp 0x00007f712194534e <+1080>: mov -0xd0(%rbp),%rax 0x00007f7121945355 <+1087>: mov -0xb8(%rbp),%rdx 0x00007f712194535c <+1094>: lea -0x11f(%rbp),%rcx 0x00007f7121945363 <+1101>: mov -0x118(%rbp),%ebx 0x00007f7121945369 <+1107>: mov -0x114(%rbp),%esi 0x00007f712194536f <+1113>: mov -0xc0(%rbp),%rdi 0x00007f7121945376 <+1120>: mov 0x20(%rdi),%rdi 0x00007f712194537a <+1124>: mov 0x8(%rdi),%edi 0x00007f712194537d <+1127>: mov -0xc0(%rbp),%r8 0x00007f7121945384 <+1134>: mov 0x20(%r8),%r8 0x00007f7121945388 <+1138>: mov 0x1c(%r8),%r8d 0x00007f712194538c <+1142>: mov %r8d,(%rsp) 0x00007f7121945390 <+1146>: mov %edi,-0x38(%rbp) 0x00007f7121945393 <+1149>: mov %rax,%rdi 0x00007f7121945396 <+1152>: mov %esi,-0x30(%rbp) 0x00007f7121945399 <+1155>: mov %rdx,%rsi 0x00007f712194539c <+1158>: mov %rcx,%rdx 0x00007f712194539f <+1161>: mov %ebx,%ecx 0x00007f71219453a1 <+1163>: mov -0x30(%rbp),%eax 0x00007f71219453a4 <+1166>: mov %eax,%r8d 0x00007f71219453a7 <+1169>: mov -0x38(%rbp),%eax 0x00007f71219453aa <+1172>: mov %eax,%r9d 0x00007f71219453ad <+1175>: callq 0x7f7121951f3e <exec_cast_value> 0x00007f71219453b2 <+1180>: add $0x10,%rsp 0x00007f71219453b6 <+1184>: mov %rax,-0x88(%rbp) 0x00007f71219453bd <+1191>: mov -0x88(%rbp),%rax 0x00007f71219453c4 <+1198>: mov %rax,-0xb8(%rbp) 0x00007f71219453cb <+1205>: movsbl -0x11f(%rbp),%eax 0x00007f71219453d2 <+1212>: movsbq %al,%rax 0x00007f71219453d6 <+1216>: test %eax,%eax 0x00007f71219453d8 <+1218>: je 0x7f712194548f <exec_stmt_fori+1401> 0x00007f71219453de <+1224>: mov $0x14,%eax 0x00007f71219453e3 <+1229>: lea 0x189ee(%rip),%rdx # 0x7f712195ddd8 0x00007f71219453ea <+1236>: mov $0x9d7,%ecx 0x00007f71219453ef <+1241>: lea 0x19465(%rip),%rbx # 0x7f712195e85b <__$Ua> 0x00007f71219453f6 <+1248>: lea 0x18a17(%rip),%rsi # 0x7f712195de14 0x00007f71219453fd <+1255>: mov %eax,%edi 0x00007f71219453ff <+1257>: mov %rsi,-0x28(%rbp) 0x00007f7121945403 <+1261>: mov %rdx,%rsi 0x00007f7121945406 <+1264>: mov %ecx,%edx 0x00007f7121945408 <+1266>: mov %rbx,%rcx 0x00007f712194540b <+1269>: mov -0x28(%rbp),%rax 0x00007f712194540f <+1273>: mov %rax,%r8 0x00007f7121945412 <+1276>: callq 0x7f712192b330 <errstart@plt> 0x00007f7121945417 <+1281>: mov %eax,-0xec(%rbp) 0x00007f712194541d <+1287>: mov -0xec(%rbp),%eax 0x00007f7121945423 <+1293>: movsbq %al,%rax 0x00007f7121945427 <+1297>: test %eax,%eax 0x00007f7121945429 <+1299>: je 0x7f7121945471 <exec_stmt_fori+1371> 0x00007f712194542b <+1301>: mov $0x4000082,%eax 0x00007f7121945430 <+1306>: mov %eax,%edi 0x00007f7121945432 <+1308>: callq 0x7f712192bed0 <errcode@plt> 0x00007f7121945437 <+1313>: mov %eax,-0xe8(%rbp) 0x00007f712194543d <+1319>: lea 0x193c4(%rip),%rax # 0x7f712195e808 0x00007f7121945444 <+1326>: mov %rax,%rdi 0x00007f7121945447 <+1329>: mov $0x0,%eax 0x00007f712194544c <+1334>: callq 0x7f712192bd00 <errmsg@plt> 0x00007f7121945451 <+1339>: mov %eax,-0xe4(%rbp) 0x00007f7121945457 <+1345>: mov -0xe8(%rbp),%eax 0x00007f712194545d <+1351>: mov %eax,%edi 0x00007f712194545f <+1353>: mov -0xe4(%rbp),%eax 0x00007f7121945465 <+1359>: mov %eax,%esi 0x00007f7121945467 <+1361>: mov $0x0,%eax 0x00007f712194546c <+1366>: callq 0x7f712192b580 <errfinish@plt> 0x00007f7121945471 <+1371>: mov $0x0,%eax 0x00007f7121945476 <+1376>: cmp $0x1,%eax 0x00007f7121945479 <+1379>: jne 0x7f712194548a <exec_stmt_fori+1396> 0x00007f712194547b <+1381>: mov $0x0,%eax 0x00007f7121945480 <+1386>: test %eax,%eax 0x00007f7121945482 <+1388>: jne 0x7f71219453de <exec_stmt_fori+1224> 0x00007f7121945488 <+1394>: jmp 0x7f712194548f <exec_stmt_fori+1401> 0x00007f712194548a <+1396>: callq 0x7f712192b430 <abort@plt> 0x00007f712194548f <+1401>: mov -0xb8(%rbp),%eax 0x00007f7121945495 <+1407>: mov %eax,-0x108(%rbp) 0x00007f712194549b <+1413>: mov -0xd0(%rbp),%rax 0x00007f71219454a2 <+1420>: mov %rax,%rdi 0x00007f71219454a5 <+1423>: callq 0x7f7121949b60 <exec_eval_cleanup> 0x00007f71219454aa <+1428>: mov -0x108(%rbp),%eax 0x00007f71219454b0 <+1434>: test %eax,%eax 0x00007f71219454b2 <+1436>: jg 0x7f7121945573 <exec_stmt_fori+1629> 0x00007f71219454b8 <+1442>: mov $0x14,%eax 0x00007f71219454bd <+1447>: lea 0x18914(%rip),%rdx # 0x7f712195ddd8 0x00007f71219454c4 <+1454>: mov $0x9dd,%ecx 0x00007f71219454c9 <+1459>: lea 0x1938b(%rip),%rbx # 0x7f712195e85b <__$Ua> 0x00007f71219454d0 <+1466>: lea 0x1893d(%rip),%rsi # 0x7f712195de14 0x00007f71219454d7 <+1473>: mov %eax,%edi 0x00007f71219454d9 <+1475>: mov %rsi,-0x20(%rbp) 0x00007f71219454dd <+1479>: mov %rdx,%rsi 0x00007f71219454e0 <+1482>: mov %ecx,%edx 0x00007f71219454e2 <+1484>: mov %rbx,%rcx 0x00007f71219454e5 <+1487>: mov -0x20(%rbp),%rax 0x00007f71219454e9 <+1491>: mov %rax,%r8 0x00007f71219454ec <+1494>: callq 0x7f712192b330 <errstart@plt> 0x00007f71219454f1 <+1499>: mov %eax,-0xe0(%rbp) 0x00007f71219454f7 <+1505>: mov -0xe0(%rbp),%eax 0x00007f71219454fd <+1511>: movsbq %al,%rax 0x00007f7121945501 <+1515>: test %eax,%eax 0x00007f7121945503 <+1517>: je 0x7f712194554b <exec_stmt_fori+1589> 0x00007f7121945505 <+1519>: mov $0x3080082,%eax 0x00007f712194550a <+1524>: mov %eax,%edi 0x00007f712194550c <+1526>: callq 0x7f712192bed0 <errcode@plt> 0x00007f7121945511 <+1531>: mov %eax,-0xdc(%rbp) 0x00007f7121945517 <+1537>: lea 0x1930e(%rip),%rax # 0x7f712195e82c 0x00007f712194551e <+1544>: mov %rax,%rdi 0x00007f7121945521 <+1547>: mov $0x0,%eax 0x00007f7121945526 <+1552>: callq 0x7f712192bd00 <errmsg@plt> 0x00007f712194552b <+1557>: mov %eax,-0xd8(%rbp) 0x00007f7121945531 <+1563>: mov -0xdc(%rbp),%eax 0x00007f7121945537 <+1569>: mov %eax,%edi 0x00007f7121945539 <+1571>: mov -0xd8(%rbp),%eax 0x00007f712194553f <+1577>: mov %eax,%esi 0x00007f7121945541 <+1579>: mov $0x0,%eax 0x00007f7121945546 <+1584>: callq 0x7f712192b580 <errfinish@plt> 0x00007f712194554b <+1589>: mov $0x0,%eax 0x00007f7121945550 <+1594>: cmp $0x1,%eax 0x00007f7121945553 <+1597>: jne 0x7f7121945564 <exec_stmt_fori+1614> 0x00007f7121945555 <+1599>: mov $0x0,%eax 0x00007f712194555a <+1604>: test %eax,%eax 0x00007f712194555c <+1606>: jne 0x7f71219454b8 <exec_stmt_fori+1442> 0x00007f7121945562 <+1612>: jmp 0x7f7121945573 <exec_stmt_fori+1629> 0x00007f7121945564 <+1614>: callq 0x7f712192b430 <abort@plt> 0x00007f7121945569 <+1619>: movl $0x1,-0x108(%rbp) 0x00007f7121945573 <+1629>: mov $0x0,%eax 0x00007f7121945578 <+1634>: cmp $0x1,%eax 0x00007f712194557b <+1637>: je 0x7f71219457cf <exec_stmt_fori+2233> 0x00007f7121945581 <+1643>: mov -0xc8(%rbp),%rax 0x00007f7121945588 <+1650>: mov 0x30(%rax),%eax 0x00007f712194558b <+1653>: test %eax,%eax 0x00007f712194558d <+1655>: je 0x7f71219455a5 <exec_stmt_fori+1679> 0x00007f712194558f <+1657>: mov -0x110(%rbp),%eax 0x00007f7121945595 <+1663>: mov -0x10c(%rbp),%edx 0x00007f712194559b <+1669>: cmp %edx,%eax 0x00007f712194559d <+1671>: jl 0x7f71219457cf <exec_stmt_fori+2233> 0x00007f71219455a3 <+1677>: jmp 0x7f71219455b9 <exec_stmt_fori+1699> 0x00007f71219455a5 <+1679>: mov -0x110(%rbp),%eax 0x00007f71219455ab <+1685>: mov -0x10c(%rbp),%edx 0x00007f71219455b1 <+1691>: cmp %edx,%eax 0x00007f71219455b3 <+1693>: jg 0x7f71219457cf <exec_stmt_fori+2233> 0x00007f71219455b9 <+1699>: movb $0x1,-0x120(%rbp) 0x00007f71219455c0 <+1706>: mov -0xd0(%rbp),%rax 0x00007f71219455c7 <+1713>: mov -0xc0(%rbp),%rdx 0x00007f71219455ce <+1720>: mov -0x110(%rbp),%ecx 0x00007f71219455d4 <+1726>: movslq %ecx,%rcx 0x00007f71219455d7 <+1729>: mov $0x0,%ebx 0x00007f71219455dc <+1734>: mov $0x0,%esi 0x00007f71219455e1 <+1739>: mov %rax,%rdi 0x00007f71219455e4 <+1742>: mov %esi,-0x18(%rbp) 0x00007f71219455e7 <+1745>: mov %rdx,%rsi 0x00007f71219455ea <+1748>: mov %rcx,%rdx 0x00007f71219455ed <+1751>: mov %ebx,%ecx 0x00007f71219455ef <+1753>: mov -0x18(%rbp),%eax 0x00007f71219455f2 <+1756>: mov %eax,%r8d 0x00007f71219455f5 <+1759>: callq 0x7f71219531f2 <assign_simple_var> 0x00007f71219455fa <+1764>: mov -0xd0(%rbp),%rax 0x00007f7121945601 <+1771>: mov -0xc8(%rbp),%rdx 0x00007f7121945608 <+1778>: mov 0x38(%rdx),%rdx 0x00007f712194560c <+1782>: mov %rax,%rdi 0x00007f712194560f <+1785>: mov %rdx,%rsi 0x00007f7121945612 <+1788>: callq 0x7f71219433d6 <exec_stmts> 0x00007f7121945617 <+1793>: mov %eax,-0xd4(%rbp) 0x00007f712194561d <+1799>: mov -0xd4(%rbp),%eax 0x00007f7121945623 <+1805>: mov %eax,-0x11c(%rbp) 0x00007f7121945629 <+1811>: mov -0x11c(%rbp),%eax 0x00007f712194562f <+1817>: cmp $0x2,%eax 0x00007f7121945632 <+1820>: je 0x7f71219457cf <exec_stmt_fori+2233> 0x00007f7121945638 <+1826>: mov -0x11c(%rbp),%eax 0x00007f712194563e <+1832>: cmp $0x1,%eax 0x00007f7121945641 <+1835>: je 0x7f712194570b <exec_stmt_fori+2037> 0x00007f7121945647 <+1841>: mov -0x11c(%rbp),%eax 0x00007f712194564d <+1847>: cmp $0x3,%eax 0x00007f7121945650 <+1850>: je 0x7f7121945694 <exec_stmt_fori+1918> 0x00007f7121945652 <+1852>: mov -0x11c(%rbp),%eax 0x00007f7121945658 <+1858>: test %eax,%eax 0x00007f712194565a <+1860>: jne 0x7f712194566a <exec_stmt_fori+1876> 0x00007f712194565c <+1862>: mov $0x0,%eax 0x00007f7121945661 <+1867>: test %eax,%eax 0x00007f7121945663 <+1869>: jne 0x7f7121945652 <exec_stmt_fori+1852> 0x00007f7121945665 <+1871>: jmpq 0x7f712194577b <exec_stmt_fori+2149> 0x00007f712194566a <+1876>: lea 0x1912f(%rip),%rax # 0x7f712195e7a0 0x00007f7121945671 <+1883>: lea 0x186b0(%rip),%rdx # 0x7f712195dd28 0x00007f7121945678 <+1890>: lea 0x18759(%rip),%rcx # 0x7f712195ddd8 0x00007f712194567f <+1897>: mov $0xa01,%ebx 0x00007f7121945684 <+1902>: mov %rax,%rdi 0x00007f7121945687 <+1905>: mov %rdx,%rsi 0x00007f712194568a <+1908>: mov %rcx,%rdx 0x00007f712194568d <+1911>: mov %ebx,%ecx 0x00007f712194568f <+1913>: callq 0x7f712192b930 <ExceptionalCondition@plt> 0x00007f7121945694 <+1918>: mov -0xd0(%rbp),%rax 0x00007f712194569b <+1925>: mov 0x30(%rax),%rax 0x00007f712194569f <+1929>: test %rax,%rax 0x00007f71219456a2 <+1932>: je 0x7f71219456ff <exec_stmt_fori+2025> 0x00007f71219456a4 <+1934>: mov -0xc8(%rbp),%rax 0x00007f71219456ab <+1941>: mov 0x8(%rax),%rax 0x00007f71219456af <+1945>: test %rax,%rax 0x00007f71219456b2 <+1948>: je 0x7f71219457cf <exec_stmt_fori+2233> 0x00007f71219456b8 <+1954>: mov -0xc8(%rbp),%rax 0x00007f71219456bf <+1961>: mov 0x8(%rax),%rax 0x00007f71219456c3 <+1965>: mov -0xd0(%rbp),%rdx 0x00007f71219456ca <+1972>: mov 0x30(%rdx),%rdx 0x00007f71219456ce <+1976>: mov %rax,%rdi 0x00007f71219456d1 <+1979>: mov %rdx,%rsi 0x00007f71219456d4 <+1982>: callq 0x7f712192be30 <strcmp@plt> 0x00007f71219456d9 <+1987>: test %eax,%eax 0x00007f71219456db <+1989>: jne 0x7f71219457cf <exec_stmt_fori+2233> 0x00007f71219456e1 <+1995>: mov -0xd0(%rbp),%rax 0x00007f71219456e8 <+2002>: movq $0x0,0x30(%rax) 0x00007f71219456f0 <+2010>: movl $0x0,-0x11c(%rbp) 0x00007f71219456fa <+2020>: jmpq 0x7f712194577b <exec_stmt_fori+2149> 0x00007f71219456ff <+2025>: movl $0x0,-0x11c(%rbp) 0x00007f7121945709 <+2035>: jmp 0x7f712194577b <exec_stmt_fori+2149> 0x00007f712194570b <+2037>: mov -0xd0(%rbp),%rax 0x00007f7121945712 <+2044>: mov 0x30(%rax),%rax 0x00007f7121945716 <+2048>: test %rax,%rax 0x00007f7121945719 <+2051>: je 0x7f712194576f <exec_stmt_fori+2137> 0x00007f712194571b <+2053>: mov -0xc8(%rbp),%rax 0x00007f7121945722 <+2060>: mov 0x8(%rax),%rax 0x00007f7121945726 <+2064>: test %rax,%rax 0x00007f7121945729 <+2067>: je 0x7f71219457cf <exec_stmt_fori+2233> 0x00007f712194572f <+2073>: mov -0xc8(%rbp),%rax 0x00007f7121945736 <+2080>: mov 0x8(%rax),%rax 0x00007f712194573a <+2084>: mov -0xd0(%rbp),%rdx 0x00007f7121945741 <+2091>: mov 0x30(%rdx),%rdx 0x00007f7121945745 <+2095>: mov %rax,%rdi 0x00007f7121945748 <+2098>: mov %rdx,%rsi 0x00007f712194574b <+2101>: callq 0x7f712192be30 <strcmp@plt> 0x00007f7121945750 <+2106>: test %eax,%eax 0x00007f7121945752 <+2108>: jne 0x7f71219457cf <exec_stmt_fori+2233> 0x00007f7121945754 <+2110>: mov -0xd0(%rbp),%rax 0x00007f712194575b <+2117>: movq $0x0,0x30(%rax) 0x00007f7121945763 <+2125>: movl $0x0,-0x11c(%rbp) 0x00007f712194576d <+2135>: jmp 0x7f71219457cf <exec_stmt_fori+2233> 0x00007f712194576f <+2137>: movl $0x0,-0x11c(%rbp) 0x00007f7121945779 <+2147>: jmp 0x7f71219457cf <exec_stmt_fori+2233> 0x00007f712194577b <+2149>: mov -0xc8(%rbp),%rax 0x00007f7121945782 <+2156>: mov 0x30(%rax),%eax 0x00007f7121945785 <+2159>: test %eax,%eax 0x00007f7121945787 <+2161>: je 0x7f71219457ae <exec_stmt_fori+2200> 0x00007f7121945789 <+2163>: mov -0x108(%rbp),%eax 0x00007f712194578f <+2169>: neg %eax 0x00007f7121945791 <+2171>: test %eax,%eax 0x00007f7121945793 <+2173>: jg 0x7f71219457cf <exec_stmt_fori+2233> 0x00007f7121945795 <+2175>: mov -0x108(%rbp),%eax 0x00007f712194579b <+2181>: neg %eax 0x00007f712194579d <+2183>: add -0x110(%rbp),%eax 0x00007f71219457a3 <+2189>: mov %eax,-0x110(%rbp) 0x00007f71219457a9 <+2195>: jmpq 0x7f7121945573 <exec_stmt_fori+1629> 0x00007f71219457ae <+2200>: mov -0x108(%rbp),%eax 0x00007f71219457b4 <+2206>: test %eax,%eax 0x00007f71219457b6 <+2208>: jl 0x7f71219457cf <exec_stmt_fori+2233> 0x00007f71219457b8 <+2210>: mov -0x108(%rbp),%eax 0x00007f71219457be <+2216>: add -0x110(%rbp),%eax 0x00007f71219457c4 <+2222>: mov %eax,-0x110(%rbp) 0x00007f71219457ca <+2228>: jmpq 0x7f7121945573 <exec_stmt_fori+1629> 0x00007f71219457cf <+2233>: mov -0xd0(%rbp),%rax 0x00007f71219457d6 <+2240>: movsbl -0x120(%rbp),%edx 0x00007f71219457dd <+2247>: mov %rax,%rdi 0x00007f71219457e0 <+2250>: mov %edx,%esi 0x00007f71219457e2 <+2252>: callq 0x7f7121952e32 <exec_set_found> 0x00007f71219457e7 <+2257>: mov -0x11c(%rbp),%eax 0x00007f71219457ed <+2263>: mov -0x10(%rbp),%rbx 0x00007f71219457f1 <+2267>: leaveq 0x00007f71219457f2 <+2268>: retq 0x00007f71219457f3 <+2269>: nop