summaryrefslogtreecommitdiff
path: root/src/bytecode.c
diff options
context:
space:
mode:
authorAdrian Thurston <thurston@colm.net>2018-05-15 00:24:57 -0400
committerAdrian Thurston <thurston@colm.net>2018-05-15 00:24:57 -0400
commit63db79925f869f0fa5336764325d80e80668af76 (patch)
tree21ef32b930eb6efce6ac127b7ccdd1dc5154eda8 /src/bytecode.c
parentc923930f14224b5b46ddc7e95352247e698bcfe8 (diff)
downloadcolm-63db79925f869f0fa5336764325d80e80668af76.tar.gz
added an instruction for the final reduce commit
Was doing this in the parse finish instruction. Moving this out is the last change to make the frag and finish parses identical.
Diffstat (limited to 'src/bytecode.c')
-rw-r--r--src/bytecode.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/bytecode.c b/src/bytecode.c
index ed2a464b..124d8d61 100644
--- a/src/bytecode.c
+++ b/src/bytecode.c
@@ -2748,7 +2748,6 @@ again:
break;
}
-
case IN_PARSE_FINISH_W: {
half_t stop_id;
read_half( stop_id );
@@ -2817,6 +2816,17 @@ again:
break;
}
+ case IN_REDUCE_COMMIT: {
+ stream_t *stream = vm_pop_stream();
+ vm_push_stream( stream );
+
+ debug( prg, REALM_BYTECODE, "IN_REDUCE_COMMIT\n" );
+
+ colm_parse_reduce_commit( prg, sp, stream->parser->pda_run );
+ break;
+ }
+
+
case IN_INPUT_PULL_WV: {
debug( prg, REALM_BYTECODE, "IN_INPUT_PULL_WV\n" );