Support #byte directive for asm templates

This commit is contained in:
gingerBill
2026-08-17 13:21:40 +01:00
parent c2dfcb3c28
commit 55377f71ef
5 changed files with 77 additions and 0 deletions

View File

@@ -27,6 +27,8 @@ gb_internal Token ast_token(Ast *node) {
return ast_token(node->AsmInstruction.name);
case Ast_AsmMemoryOperand:
return node->AsmMemoryOperand.open;
case Ast_AsmDirective:
return node->AsmDirective.token;
case Ast_TagExpr: return node->TagExpr.token;
case Ast_BadExpr: return node->BadExpr.begin;
@@ -197,6 +199,11 @@ Token ast_end_token(Ast *node) {
return ast_end_token(node->AsmInstruction.operands[node->AsmInstruction.operands.count-1]);
}
return ast_end_token(node->AsmInstruction.name);
case Ast_AsmDirective:
if (node->AsmDirective.operands.count > 0) {
return ast_end_token(node->AsmDirective.operands[node->AsmDirective.operands.count-1]);
}
return node->AsmDirective.name;
case Ast_AsmMemoryOperand:
if (node->AsmMemoryOperand.type) {
return ast_end_token(node->AsmMemoryOperand.type);