From 20030e364cd869e5651b2e2fb63cfb8881fbf5b7 Mon Sep 17 00:00:00 2001 From: Aryadev Chavali Date: Mon, 23 Oct 2023 00:53:44 +0100 Subject: Moved macros to extract nth (byte|hword) from a word to base.h --- src/base.h | 4 ++++ src/runtime.c | 4 ---- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/base.h b/src/base.h index a135061..dbeec80 100644 --- a/src/base.h +++ b/src/base.h @@ -56,6 +56,10 @@ typedef enum #define HWORD_SIZE sizeof(hword) #define WORD_SIZE sizeof(word) +// Macros to extract the nth byte or nth hword from a word +#define WORD_NTH_BYTE(WORD, N) (((WORD) >> ((N)*8)) & 0xff) +#define WORD_NTH_HWORD(WORD, N) (((WORD) >> ((N)*2)) & 0xFFFFFFFF) + // Assume array contains 4 bytes. hword convert_bytes_to_hword(byte *); void convert_hword_to_bytes(hword, byte *); diff --git a/src/runtime.c b/src/runtime.c index 6308eb9..2d3f1e8 100644 --- a/src/runtime.c +++ b/src/runtime.c @@ -403,10 +403,6 @@ err_t vm_push_word(vm_t *vm, data_t w) return ERR_OK; } -#define WORD_NTH_BYTE(WORD, N) (((WORD) >> ((N)*8)) & 0b11111111) -#define WORD_NTH_HWORD(WORD, N) \ - (((WORD) >> ((N)*2)) & 0b11111111111111111111111111111111) - err_t vm_push_byte_register(vm_t *vm, byte reg) { if (reg >= VM_REGISTERS * 8) -- cgit v1.2.3-13-gbd6f