refactor(strdup): only one exit can change to .exit
.restore_exit => .exit
This commit is contained in:
parent
93a750ca6a
commit
b5172551b8
1 changed files with 3 additions and 3 deletions
|
|
@ -10,18 +10,18 @@ section .text
|
|||
ft_strdup:
|
||||
push rbx ; save rbx
|
||||
cmp rdi, 0 ; check s is NULL
|
||||
je .restore_exit ; exit (with restore of rbx) if true
|
||||
je .exit ; exit (with restore of rbx) if true
|
||||
mov rbx, rdi ; save rdi value in rbx
|
||||
call ft_strlen ; call ft_strlen on rdi
|
||||
lea rdi, [rax + 1] ; calculation of the malloc size
|
||||
call malloc ; malloc is called return value on rax
|
||||
test rax, rax ; check the return value of malloc
|
||||
je .restore_exit ; exit (with restore of rbx) if true
|
||||
je .exit ; exit (with restore of rbx) if true
|
||||
mov rdi, rax ; set the dest string (for ft_strcpy)
|
||||
mov rsi, rbx ; set the source string (for ft_strcpy)
|
||||
pop rbx ; restore rbx
|
||||
jmp ft_strcpy ; call ft_strcpy
|
||||
|
||||
.restore_exit:
|
||||
.exit:
|
||||
pop rbx ; restore rbx
|
||||
ret ; return rax (NULL)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue