change to uint8_t for bytecode to reduce wasted bytes
This commit is contained in:
@@ -7,8 +7,8 @@
|
||||
#include <stddef.h>
|
||||
#include <stdint.h>
|
||||
|
||||
typedef enum { OP_LOAD_CONST = 255, OP_DECLARE, OP_LOAD_NULL, OP_LOAD_FUNCTION } OperationType;
|
||||
typedef enum { TYPE_OP_STRING = 255, TYPE_OP_NUMBER } types;
|
||||
typedef enum { OP_LOAD_CONST, OP_DECLARE, OP_LOAD_NULL, OP_LOAD_FUNCTION } OperationType;
|
||||
typedef enum { TYPE_OP_STRING, TYPE_OP_NUMBER } types;
|
||||
|
||||
typedef struct {
|
||||
void *data;
|
||||
@@ -17,7 +17,7 @@ typedef struct {
|
||||
} ConstantArena;
|
||||
|
||||
typedef struct {
|
||||
size_t registerCount;
|
||||
uint8_t registerCount;
|
||||
DArray bytecode;
|
||||
ConstantArena constants;
|
||||
} Translated;
|
||||
@@ -26,11 +26,11 @@ void *arena_get(ConstantArena *arena, size_t offset);
|
||||
|
||||
size_t arena_push(ConstantArena *arena, const void *data, size_t length);
|
||||
|
||||
void set_instruction_code(Translated * translator, size_t offset, uint64_t code);
|
||||
size_t push_instruction_byte(Translated *translator, uint8_t byte);
|
||||
|
||||
size_t push_instruction_code(Translated *translator, uint64_t code);
|
||||
|
||||
void set_registers(Translated *translator, size_t count);
|
||||
void set_registers(Translated *translator, uint8_t count);
|
||||
|
||||
Translated init_translator();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user