Rev 3157 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 3157 | Rev 3169 | ||
|---|---|---|---|
| Line 26... | Line 26... | ||
| 26 | # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
26 | # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| 27 | # |
27 | # |
| 28 | 28 | ||
| 29 | .globl program_run |
29 | .globl program_run |
| 30 | 30 | ||
| 31 | ## void program_run(uintptr_t entry_point); |
31 | ## void program_run(void *entry_point, void *pcb); |
| - | 32 | # |
|
| - | 33 | # %rdi contains entry_point |
|
| - | 34 | # %rsi contains pcb |
|
| 32 | # |
35 | # |
| 33 | # Jump to a program entry point |
36 | # Jump to a program entry point |
| 34 | program_run: |
37 | program_run: |
| - | 38 | # pcb must be passed in %rdi, use %rdx as a scratch register |
|
| - | 39 | mov %rdi, %rdx |
|
| - | 40 | mov %rsi, %rdi |
|
| - | 41 | ||
| - | 42 | # jump to entry point |
|
| 35 | jmp %rdi |
43 | jmp %rdx |