aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/base.h4
-rw-r--r--src/runtime.c4
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)