summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--twasm/asm/main.asm25
-rw-r--r--twasm/asm/tests.asm48
2 files changed, 3 insertions, 70 deletions
diff --git a/twasm/asm/main.asm b/twasm/asm/main.asm
index 7262a8f..a48c652 100644
--- a/twasm/asm/main.asm
+++ b/twasm/asm/main.asm
@@ -390,7 +390,8 @@ assemble:
mov cx, di
mov di, [.first_argument]
mov si, cx
- call get_direct_addressing_ModRM
+ mov dl, 11b
+ call get_ModRM
; al = ModR/M byte
push rax
mov al, [.pending_operator_opcode]
@@ -547,26 +548,6 @@ get_tte_typed_metadata:
ret
; ------------------------------------------------------------------------------
-; get_direct_addressing_ModRM
-;
-; description:
-; given 2 register tokens, returns the ModR/M byte in direct addressing
-; (mod = 11b) mode
-;
-; parameters:
-; di = token table entry `reg`
-; si = token table entry `R/M`
-;
-; returned:
-; al = ModR/M byte; the rest of rax is zeroed
-; ------------------------------------------------------------------------------
-
-get_direct_addressing_ModRM:
- mov dl, 11b
- call get_ModRM
- ret
-
-; ------------------------------------------------------------------------------
; get_ModRM
;
; description:
@@ -1449,7 +1430,7 @@ elemb:
; djb2
;
; description:
-; gets the djb2 hash of a given string
+; gets the 64-bit djb2 hash of a given string
;
; parameters:
; rdi = size of string
diff --git a/twasm/asm/tests.asm b/twasm/asm/tests.asm
index ab1cc5c..9d24b81 100644
--- a/twasm/asm/tests.asm
+++ b/twasm/asm/tests.asm
@@ -26,9 +26,6 @@ run_tests:
call test_get_tte_typed_metadata
call clear_test_arena
- call test_get_direct_addressing_ModRM
-
- call clear_test_arena
call test_get_opcode
call clear_test_arena
@@ -258,51 +255,6 @@ test_get_tte_typed_metadata:
.msg db "test_get_tte_typed_metadata...", 0x00
; ------------------------------------------------------------------------------
-; test_get_direct_addressing_ModRM
-;
-; description:
-; tests get_direct_addressing_ModRM described functionality
-; ------------------------------------------------------------------------------
-
-test_get_direct_addressing_ModRM:
- mov rsi, .msg
- call print.test
-
- mov di, 0x0000 ; rax
- mov si, 0x0000 ; rax
- call get_direct_addressing_ModRM
- cmp al, 11000000b ; Mod Reg R/M: 11b 000b 000b
- jne .fail
-
- mov di, 0x0000 ; rax
- mov si, 0x0003 ; rdx
- call get_direct_addressing_ModRM
- cmp al, 11000010b ; Mod Reg R/M: 11b 000b 010b
- jne .fail
-
- mov di, 0x0003 ; rdx
- mov si, 0x0000 ; rax
- call get_direct_addressing_ModRM
- cmp al, 11010000b ; Mod Reg R/M: 11b 010b 000b
- jne .fail
-
- mov di, 0x0003 ; rdx
- mov si, 0x0003 ; rdx
- call get_direct_addressing_ModRM
- cmp al, 11010010b ; Mod Reg R/M 11b 010b 010b
- jne .fail
-
- .pass:
- mov rsi, msg_pass
- call print
- ret
- .fail:
- mov rsi, msg_fail
- call print
- ret
- .msg db "test_get_direct_addressing_ModRM...", 0x00
-
-; ------------------------------------------------------------------------------
; test_get_opcode
;
; description: