Comment Comment by bd01 This is pretty bad. Let's start with the very first instruction: mov rax, 1 An actual "mov rax, 1" would assemble to 48 B8 01 00 00 00 00 00 00 00, a whopping TEN bytes.nasm will optimize this to the equivalent "mov eax, 1", that's 6 bytes, but still: xor eax, eax ; 2 bytes inc eax ; 2 bytes would be much smaller. Second line: mov rdi, 1 You already have the value 1 in eax, so a "mov edi, eax" (two bytes) would suffice. Etc. etc. parent bd01 1 year ago
nasm will optimize this to the equivalent "mov eax, 1", that's 6 bytes, but still:
would be much smaller. Second line: You already have the value 1 in eax, so a "mov edi, eax" (two bytes) would suffice. Etc. etc.