aboutsummaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
authorAryadev Chavali <aryadev@aryadevchavali.com>2023-11-02 20:41:36 +0000
committerAryadev Chavali <aryadev@aryadevchavali.com>2023-11-02 20:41:36 +0000
commit114fb829905cce1e1f63ff1fee6fdbe11bb72715 (patch)
tree7c25829f1ba547effc7720a22b42d0085e303398 /asm
parent99b0ebdfa6e05b202e4ce900f95aef12f2214f69 (diff)
downloadovm-114fb829905cce1e1f63ff1fee6fdbe11bb72715.tar.gz
ovm-114fb829905cce1e1f63ff1fee6fdbe11bb72715.tar.bz2
ovm-114fb829905cce1e1f63ff1fee6fdbe11bb72715.zip
Removed instruction OP_JUMP_REGISTER
Not necessary when you can just push the relevant word onto the stack then just do OP_JUMP_STACK.
Diffstat (limited to 'asm')
-rw-r--r--asm/lexer.c2
-rw-r--r--asm/parser.c10
2 files changed, 1 insertions, 11 deletions
diff --git a/asm/lexer.c b/asm/lexer.c
index 01c2e5d..836dd08 100644
--- a/asm/lexer.c
+++ b/asm/lexer.c
@@ -137,7 +137,7 @@ bool is_valid_hex_char(char c)
token_t tokenise_symbol(buffer_t *buffer, size_t *column)
{
- static_assert(NUMBER_OF_OPCODES == 96, "tokenise_buffer: Out of date!");
+ static_assert(NUMBER_OF_OPCODES == 95, "tokenise_buffer: Out of date!");
size_t sym_size = 0;
for (; sym_size < space_left(buffer) &&
diff --git a/asm/parser.c b/asm/parser.c
index f9eb975..da0c93c 100644
--- a/asm/parser.c
+++ b/asm/parser.c
@@ -413,16 +413,6 @@ perr_t parse_next(token_stream_t *stream, presult_t *ret)
return PERR_EXPECTED_OPERAND;
return parse_word_label_or_relative(stream, ret);
}
- else if (token.str_size == 9 && strncmp(token.str, ".REGISTER", 9) == 0)
- {
- *ret = (presult_t){.instruction = INST_JUMP_REGISTER(0),
- .type = PRES_COMPLETE_RESULT};
- ++stream->used;
- if (stream->used >= stream->available)
- return PERR_EXPECTED_OPERAND;
- return parse_word(TOKEN_STREAM_AT(stream->data, stream->used),
- &ret->instruction.operand.as_word);
- }
else if (token.str_size == 6 && strncmp(token.str, ".STACK", 6) == 0)
*ret = (presult_t){.instruction = INST_JUMP_STACK,
.type = PRES_COMPLETE_RESULT};