It means that reading the disassembled code requires us to mentally map %rax not to the return value, but to just another scratch reg. I am struggling on a homework because i do not understand what these lines are supposed to mean I just want to read values that are currently in those registers
Rax, rbx, rcx, rdx, rsp This is x64 assembly generated from gcc 4.8 compiling c++ code. Rbp, rsi, rdi and print them out, thats it.
In at&t syntax, the instruction Mov (%rax), %eax # at&t syntax or, equivalently in intel syntax Mov eax, dword ptr [rax] Thus (%rax) means to get the value of the pointer currently stored in %rax
What does the star decoration do on that Does that further dereference that value (thus (%rax) is itself a pointer) I'm having trouble googling *( assembly syntax