Rewrite X2str functions to itoa/utoa ; it was a stupid idea to have seperate functions (=> more maintenance)

This commit is contained in:
2025-07-15 07:58:18 +02:00
parent 954bc21eee
commit 9f33e36883
3 changed files with 223 additions and 359 deletions

View File

@@ -31,9 +31,7 @@ extern bin2str
section .rodata
TEST_print equ 1
TEST_puts equ 1
TEST_dec2str equ 1 ;includes udec2str
TEST_hex2str equ 1
TEST_bin2str equ 1
TEST_itoa equ 1 ;includes utoa
TEST_printf equ 1
TEST_strlen equ 1
TEST_strcpy equ 1
@@ -61,12 +59,8 @@ section .rodata
; puts()
msgPuts db NL,"TEST puts()",EOS
; START LAZY SECTION
; [u]dec2str() / hex2str() / bin2str()
msgDec2str db NL,"TEST dec2str() / udec2str()",NL,"See printf outputs",NL,EOS
msgHex2str db NL,"TEST hex2str()",NL,TAB,"See printf outputs",NL,EOS
msgBin2str db NL,"TEST bin2str()",NL,TAB,"See printf outputs",NL,EOS ;Even more lazy
; END LAZY SECTION
; itoa() / utoa9)
msgItoa db NL,"TEST itoa() / utoa()",NL,TAB,"See printf outputs",NL,EOS
; printf()
msgPrintf db NL,"TEST printf()",NL,EOS
@@ -241,69 +235,8 @@ _start:
call puts
%endif
;---
;--- dec2str() / udec2str()
;---
%if TEST_dec2str
lea rdi, [rel msgDec2str]
call print
; TEST 1
mov rdi, -569384
call dec2str
; TEST 2
mov rdi, -569384
call udec2str
; TEST 3
mov rdi, 0xFFFFFFFFFFFFFFFF
call dec2str
; TEST 4
mov rdi, 0xFFFFFFFFFFFFFFFF
call udec2str
%endif
;---
;--- hex2str()
;---
%if TEST_hex2str
lea rdi, [rel msgHex2str]
call print
; TEST 1
xor rdi, rdi
mov rsi, 0
call hex2str
mov rdi, -1
mov rsi, 0
call hex2str
; TEST 2
xor rdi, rdi
mov rsi, 1
call hex2str
mov rdi, -1
mov rsi, 1
call hex2str
; TEST 3
mov rdi, 0x123456789ABCDEF
mov rsi, 0
call hex2str
mov rdi, 0x123456789ABCDEF
mov rsi, 1
call hex2str
; TEST 4
mov rdi, 128
mov rsi, 0
call hex2str
%endif
;---
;--- bin2str()
;---
%if TEST_bin2str
lea rdi, [rel msgBin2str]
%if TEST_itoa
lea rdi, [rel msgItoa]
call print
%endif