From f5f8e53b9d4c7ad2bd635a0b2273cd2fa90ff8b4 Mon Sep 17 00:00:00 2001 From: A404M Date: Wed, 5 Feb 2025 10:25:56 +0330 Subject: cleaning up --- src/compiler/code-generator.c | 16 +--------------- src/compiler/code-generator.h | 1 - stdlib/main.asm | 5 ++--- 3 files changed, 3 insertions(+), 19 deletions(-) diff --git a/src/compiler/code-generator.c b/src/compiler/code-generator.c index b1c5604..cfa7476 100644 --- a/src/compiler/code-generator.c +++ b/src/compiler/code-generator.c @@ -18,8 +18,7 @@ void codeGeneratorDelete(CodeGeneratorCodes *code) { for (size_t i = 0; i < code->codes_size; ++i) { CodeGeneratorCode current = code->codes[i]; switch (current.instruction) { - case CODE_GENERATOR_INSTRUCTION_PRINT_U64: - case CODE_GENERATOR_INSTRUCTION_DEF_VAR64: { + case CODE_GENERATOR_INSTRUCTION_PRINT_U64: { CodeGeneratorOperand *metadata = current.metadata; codeGeneratorOperandDestroy(*metadata); free(metadata); @@ -408,19 +407,6 @@ char *codeGeneratorToFlatASM(const CodeGeneratorCodes *codes) { strlen(INST)); } continue; - case CODE_GENERATOR_INSTRUCTION_DEF_VAR64: { - CodeGeneratorOperand *metadata = code.metadata; - char *inst; - if (metadata->isReference) { - asprintf(&inst, "dq [%s]\n", metadata->value.reference); - } else { - asprintf(&inst, "dq %lu\n", metadata->value.value); - } - codeGeneratorAppendFlatASMCommand(&fasm, &fasm_size, &fasm_inserted, inst, - strlen(inst)); - free(inst); - } - continue; case CODE_GENERATOR_INSTRUCTION_MOV: { CodeGeneratorMov *metadata = code.metadata; char *inst; diff --git a/src/compiler/code-generator.h b/src/compiler/code-generator.h index 3399ee3..dc09386 100644 --- a/src/compiler/code-generator.h +++ b/src/compiler/code-generator.h @@ -8,7 +8,6 @@ typedef enum CodeGeneratorInstruction : uint8_t { CODE_GENERATOR_INSTRUCTION_PRINT_U64, CODE_GENERATOR_INSTRUCTION_CALL, CODE_GENERATOR_INSTRUCTION_RET, - CODE_GENERATOR_INSTRUCTION_DEF_VAR64, CODE_GENERATOR_INSTRUCTION_MOV, } CodeGeneratorInstruction; diff --git a/stdlib/main.asm b/stdlib/main.asm index 61a6fac..ac8bcea 100644 --- a/stdlib/main.asm +++ b/stdlib/main.asm @@ -79,16 +79,15 @@ macro funCall id, name { segment readable executable entry _start -; rdi = the number +; rax = the number print_u64: mov rcx, rsp - mov rax, rdi mov rbx, 10 .L: xor rdx, rdx div rbx - add dl, '0' + add edx, '0' dec rcx mov [rcx],dl cmp rax, 0 -- cgit v1.2.3