Skip to content
Snippets Groups Projects
Commit 8f24f9f8 authored by a2-stratford's avatar a2-stratford
Browse files

Update populate_stack.c

parent 45eca51d
No related branches found
No related tags found
1 merge request!5Alex/6 implement populate stack process
......@@ -24,25 +24,27 @@ void populate_stack(void* stack_pointer, int argc, char** argv) {
memcpy(*stack_pointer, argv[i], strlen(argv[i]) + 1);
}
*stack_pointer = move_stack_pointer(*stack_pointer, -4); //Moves the stack pointer back 4
move_stack_pointer(*stack_pointer, -4); //Moves the stack pointer back 4
(*(int *)(*stack_pointer)) = 0;//sentinel
i = argc;
while (--i >= 0)
{
*stack_pointer = move_stack_pointer(*stack_pointer, -4); //32bit Moves the stack pointer back 4
move_stack_pointer(*stack_pointer, -4); //32bit Moves the stack pointer back 4
(*(uint32_t **)(*stack_pointer)) = arr[i];
}
*stack_pointer = move_stack_pointer(*stack_pointer, -4);
move_stack_pointer(*stack_pointer, -4);
move_stack_pointer(*stack_pointer, 4); //Moves the stack pointer forwards 4
// TODO: Test if still required in later version
(*(uintptr_t **)(*stack_pointer)) = *stack_pointer = move_stack_pointer(*stack_pointer, 4); //Moves the stack pointer forwards 4
*stack_pointer = move_stack_pointer(*stack_pointer, -4); //Moves the stack pointer back 4
(*(uintptr_t **)(*stack_pointer)) = *stack_pointer
move_stack_pointer(*stack_pointer, -4); //Moves the stack pointer back 4
*(int *)(*stack_pointer) = argc;
*stack_pointer = move_stack_pointer(*stack_pointer, -4); //Moves the stack pointer back 4
move_stack_pointer(*stack_pointer, -4); //Moves the stack pointer back 4
(*(int *)(*stack_pointer)) = 0;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment