| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2012 The Native Client Authors. All rights reserved. | 2 * Copyright (c) 2012 The Native Client Authors. All rights reserved. |
| 3 * Use of this source code is governed by a BSD-style license that can be | 3 * Use of this source code is governed by a BSD-style license that can be |
| 4 * found in the LICENSE file. | 4 * found in the LICENSE file. |
| 5 */ | 5 */ |
| 6 | 6 |
| 7 #include "native_client/src/trusted/service_runtime/nacl_config.h" | 7 #include "native_client/src/trusted/service_runtime/nacl_config.h" |
| 8 | 8 |
| 9 .text | 9 .text |
| 10 | 10 |
| (...skipping 16 matching lines...) Expand all Loading... |
| 27 * registers are overwritten by the code that follows after. | 27 * registers are overwritten by the code that follows after. |
| 28 */ | 28 */ |
| 29 | 29 |
| 30 mov r2, #0 | 30 mov r2, #0 |
| 31 mov r3, #0 | 31 mov r3, #0 |
| 32 mov lr, #0 | 32 mov lr, #0 |
| 33 msr cpsr_fs, #0 | 33 msr cpsr_fs, #0 |
| 34 | 34 |
| 35 ldmia r0!, NACL_CALLEE_SAVE_LIST | 35 ldmia r0!, NACL_CALLEE_SAVE_LIST |
| 36 add r0, #4 /* skip prog_ctr in struct NaClThreadContext */ | 36 add r0, #4 /* skip prog_ctr in struct NaClThreadContext */ |
| 37 /* Read sysret and new_eip from struct NaClThreadContext */ | 37 /* Read sysret and new_prog_ctr from struct NaClThreadContext */ |
| 38 ldmia r0, {r0, r1} | 38 ldmia r0, {r0, r1} |
| 39 /* Pop 4 arguments saved on the stack by the trampoline code */ | 39 /* Pop 4 arguments saved on the stack by the trampoline code */ |
| 40 add sp, #16 | 40 add sp, #16 |
| 41 /* Transfer control to untrusted code */ | 41 /* Transfer control to untrusted code */ |
| 42 bx r1 | 42 bx r1 |
| OLD | NEW |