;; Resolves all open branches for the preceding BEGIN and
;; optional several IFBREAK
mov rax,rsp
+p_end_scan:
cmp qword [rax],0
je p_end_resolve
add rax,8
- jmp p_end_DFA
+ jmp p_end_scan
p_end_resolve:
mov rax,qword [rax+8] ; address of BEGIN
p_end_next:
pop rbx
cmp rbx,0
je p_end_ending
- mov rcx,rax
+ mov rcx,qword [p_here_DFA]
sub rcx,rbx
mov qword [rbx-8],rcx
jmp p_end_next