diff options
Diffstat (limited to 'src/main.s')
| -rw-r--r-- | src/main.s | 24 |
1 files changed, 12 insertions, 12 deletions
@@ -10,18 +10,18 @@ _start: cmpq $2, (%rsp) # Check if there are only two arguments - jne algorithm_selected # If not, go to algorithm_selected + jne .algorithm_selected # If not, go to algorithm_selected -default: +.default: movq 16(%rsp), %rdi # Select first argument as file name movq $0, %rsi # Select read only movq $0, %rdx # Unused mode for read only movq $2, %rax # Select open syscall syscall # Open file, file descriptor returned in rax movq %rax, %r13 # Save file descriptor in r13 - jmp select_quicksort # Select quicksort + jmp .select_quicksort # Select quicksort -algorithm_selected: +.algorithm_selected: movq 32(%rsp), %rdi # Select third argument as file name movq $0, %rsi # Select read only movq $0, %rdx # Unused mode for read only @@ -34,29 +34,29 @@ algorithm_selected: movq $isort, %rsi # Select "isort" to compare with call strcmp # Compare cmp $1, %rax # If the strings where equal - je select_insertionsort # Select insertionsort + je .select_insertionsort # Select insertionsort .check_quicksort: movq 24(%rsp), %rdi # Select algorithm string movq $qsort, %rsi # Select "qsort" to compare with call strcmp # Compare cmp $1, %rax # If the strings where equal - je select_quicksort # Go to selection_done + je .select_quicksort # Go to selection_done .else_invalid_algorithm: movq $60, %rax # Select exit syscall movq $1, %rdi # Exit code 1 syscall # Exit -select_insertionsort: +.select_insertionsort: movq $insertion_sort, %r14 # Select insertion_sort in r14 - jmp the_rest + jmp .the_rest -select_quicksort: - movq $quicksort, %r14 # Select quicksort in r14 - jmp the_rest +.select_quicksort: + movq $quick_sort, %r14 # Select quicksort in r14 + jmp .the_rest -the_rest: +.the_rest: # Convert to array movq %r13, %rdi # Select file descriptor call make_array_from_file # Convert file to array format |