At -O0, gcc stores frame pointers in %rbp and on the stack. These don't work
so well when you copy the stack to an entirely new location. To fix this, put
'fork' back into assembly so that all the copied stack frames are in pure
assembly. The logic of the return value is now in its own C function.
At -O0, gcc stores frame pointers in %rbp and on the stack. These don't work so well when you copy the stack to an entirely new location. To fix this, put 'fork' back into assembly so that all the copied stack frames are in pure assembly. The logic of the return value is now in its own C function.