long -> sword, int -> shword, char -> sbyte

This commit is contained in:
2024-06-19 20:19:21 +01:00
parent bdc6e15ae9
commit 213d4afcfd
5 changed files with 77 additions and 77 deletions

View File

@@ -44,11 +44,11 @@ typedef float f32;
typedef double f64;
typedef u8 byte_t;
typedef i8 char_t;
typedef i8 sbyte_t;
typedef u32 hword_t;
typedef i32 int_t;
typedef i32 shword_t;
typedef u64 word_t;
typedef i64 long_t;
typedef i64 sword_t;
/* Macros for the sizes of common base data types. */
#define HWORD_SIZE sizeof(hword_t)
@@ -73,11 +73,11 @@ typedef i64 long_t;
typedef union
{
byte_t as_byte;
char_t as_char;
sbyte_t as_sbyte;
hword_t as_hword;
int_t as_int;
shword_t as_shword;
word_t as_word;
long_t as_long;
sword_t as_sword;
} data_t;
/**

View File

@@ -125,50 +125,50 @@ const char *opcode_as_cstr(opcode_t code)
return "EQ_WORD";
case OP_LT_BYTE:
return "LT_BYTE";
case OP_LT_CHAR:
return "LT_CHAR";
case OP_LT_SBYTE:
return "LT_SBYTE";
case OP_LT_HWORD:
return "LT_HWORD";
case OP_LT_INT:
return "LT_INT";
case OP_LT_LONG:
return "LT_LONG";
case OP_LT_SHWORD:
return "LT_SHWORD";
case OP_LT_SWORD:
return "LT_SWORD";
case OP_LT_WORD:
return "LT_WORD";
case OP_LTE_BYTE:
return "LTE_BYTE";
case OP_LTE_CHAR:
return "LTE_CHAR";
case OP_LTE_SBYTE:
return "LTE_SBYTE";
case OP_LTE_HWORD:
return "LTE_HWORD";
case OP_LTE_INT:
return "LTE_INT";
case OP_LTE_LONG:
return "LTE_LONG";
case OP_LTE_SHWORD:
return "LTE_SHWORD";
case OP_LTE_SWORD:
return "LTE_SWORD";
case OP_LTE_WORD:
return "LTE_WORD";
case OP_GT_BYTE:
return "GT_BYTE";
case OP_GT_CHAR:
return "GT_CHAR";
case OP_GT_SBYTE:
return "GT_SBYTE";
case OP_GT_HWORD:
return "GT_HWORD";
case OP_GT_INT:
return "GT_INT";
case OP_GT_LONG:
return "GT_LONG";
case OP_GT_SHWORD:
return "GT_SHWORD";
case OP_GT_SWORD:
return "GT_SWORD";
case OP_GT_WORD:
return "GT_WORD";
case OP_GTE_BYTE:
return "GTE_BYTE";
case OP_GTE_CHAR:
return "GTE_CHAR";
case OP_GTE_SBYTE:
return "GTE_SBYTE";
case OP_GTE_HWORD:
return "GTE_HWORD";
case OP_GTE_INT:
return "GTE_INT";
case OP_GTE_LONG:
return "GTE_LONG";
case OP_GTE_SHWORD:
return "GTE_SHWORD";
case OP_GTE_SWORD:
return "GTE_SWORD";
case OP_GTE_WORD:
return "GTE_WORD";
case OP_PLUS_BYTE:
@@ -205,16 +205,16 @@ const char *opcode_as_cstr(opcode_t code)
return "CALL_STACK";
case OP_RET:
return "RET";
case OP_PRINT_CHAR:
return "PRINT_CHAR";
case OP_PRINT_SBYTE:
return "PRINT_SBYTE";
case OP_PRINT_BYTE:
return "PRINT_BYTE";
case OP_PRINT_INT:
return "PRINT_INT";
case OP_PRINT_SHWORD:
return "PRINT_SHWORD";
case OP_PRINT_HWORD:
return "PRINT_HWORD";
case OP_PRINT_LONG:
return "PRINT_LONG";
case OP_PRINT_SWORD:
return "PRINT_SWORD";
case OP_PRINT_WORD:
return "PRINT_WORD";
case OP_HALT:

View File

@@ -20,7 +20,7 @@
(((OPCODE) >= OP_TYPE##_BYTE) && ((OPCODE) <= OP_TYPE##_WORD))
#define SIGNED_OPCODE_IS_TYPE(OPCODE, OP_TYPE) \
(((OPCODE) >= OP_TYPE##_BYTE) && ((OPCODE) <= OP_TYPE##_LONG))
(((OPCODE) >= OP_TYPE##_BYTE) && ((OPCODE) <= OP_TYPE##_SWORD))
#define OPCODE_DATA_TYPE(OPCODE, OP_TYPE) (OPCODE - OP_TYPE##_BYTE)
@@ -114,40 +114,40 @@ typedef enum
// Comparison operations
OP_LT_BYTE,
OP_LT_CHAR,
OP_LT_SBYTE,
OP_LT_HWORD,
OP_LT_INT,
OP_LT_SHWORD,
OP_LT_WORD,
OP_LT_LONG,
OP_LT_SWORD,
OP_LTE_BYTE,
OP_LTE_CHAR,
OP_LTE_SBYTE,
OP_LTE_HWORD,
OP_LTE_INT,
OP_LTE_SHWORD,
OP_LTE_WORD,
OP_LTE_LONG,
OP_LTE_SWORD,
OP_GT_BYTE,
OP_GT_CHAR,
OP_GT_SBYTE,
OP_GT_HWORD,
OP_GT_INT,
OP_GT_SHWORD,
OP_GT_WORD,
OP_GT_LONG,
OP_GT_SWORD,
OP_GTE_BYTE,
OP_GTE_CHAR,
OP_GTE_SBYTE,
OP_GTE_HWORD,
OP_GTE_INT,
OP_GTE_SHWORD,
OP_GTE_WORD,
OP_GTE_LONG,
OP_GTE_SWORD,
// Simple I/O
OP_PRINT_BYTE,
OP_PRINT_CHAR,
OP_PRINT_SBYTE,
OP_PRINT_HWORD,
OP_PRINT_INT,
OP_PRINT_SHWORD,
OP_PRINT_WORD,
OP_PRINT_LONG,
OP_PRINT_SWORD,
// Program control flow
OP_JUMP_ABS,