Index: src/nonsfi/linux/linux_pthread_private.c |
diff --git a/src/nonsfi/linux/linux_pthread_private.c b/src/nonsfi/linux/linux_pthread_private.c |
index cb9316871374b53bc772317a064405c27fa4fb7d..def51d4f2aa015c46be0ddbc36747e93b8f4fdc1 100644 |
--- a/src/nonsfi/linux/linux_pthread_private.c |
+++ b/src/nonsfi/linux/linux_pthread_private.c |
@@ -95,10 +95,10 @@ static int nacl_irt_thread_create(void (*start_func)(void), void *stack, |
/* |
* In child thread. Clear the frame pointer to |
* prevent debuggers from unwinding beyond this, |
- * pop the stack to get start_func and call it. |
+ * load start_func from the stack and call it. |
*/ |
"mov fp, #0\n" |
- "pop {r0}\n" |
+ "ldr r0, [sp]\n" |
"blx r0\n" |
/* start_func never finishes. */ |
"bkpt #0\n" |