aboutsummaryrefslogtreecommitdiff
path: root/src/lexer
diff options
context:
space:
mode:
authorhachem <im@hachem.wtf>2026-09-08 11:26:42 +0200
committerhachem <im@hachem.wtf>2026-09-08 11:26:42 +0200
commit21be45a904a0afc767214298721bd2bbce19a054 (patch)
tree4e97ae690457f82cbedd30bb8f7cf67898e578a5 /src/lexer
parent8d73e3f2cdba9ce3591bab5c02e5d90ce62a8de3 (diff)
feat: add signed memory loads
Diffstat (limited to 'src/lexer')
-rw-r--r--src/lexer/lexer.c2
-rw-r--r--src/lexer/lexer.h1
2 files changed, 3 insertions, 0 deletions
diff --git a/src/lexer/lexer.c b/src/lexer/lexer.c
index e08a458..4d468e6 100644
--- a/src/lexer/lexer.c
+++ b/src/lexer/lexer.c
@@ -45,6 +45,7 @@ static enum TokenType identifier_type(const char* start, size_t length)
{ "word", 4, TOKEN_WORD },
{ "dword", 5, TOKEN_DWORD },
{ "qword", 5, TOKEN_QWORD },
+ { "signed", 6, TOKEN_SIGNED },
};
for (size_t i = 0; i < sizeof(keywords) / sizeof(keywords[0]); i += 1)
@@ -273,6 +274,7 @@ const char* token_type_name(enum TokenType type)
case TOKEN_WORD: return "word";
case TOKEN_DWORD: return "dword";
case TOKEN_QWORD: return "qword";
+ case TOKEN_SIGNED: return "signed";
case TOKEN_EQUAL: return "equal";
case TOKEN_PLUS: return "plus";
case TOKEN_MINUS: return "minus";
diff --git a/src/lexer/lexer.h b/src/lexer/lexer.h
index 2bc43e0..73de02f 100644
--- a/src/lexer/lexer.h
+++ b/src/lexer/lexer.h
@@ -26,6 +26,7 @@ enum TokenType
TOKEN_WORD,
TOKEN_DWORD,
TOKEN_QWORD,
+ TOKEN_SIGNED,
TOKEN_EQUAL,
TOKEN_PLUS,