diff options
| author | forsyth <forsyth@vitanuova.com> | 2011-01-16 20:43:29 +0000 |
|---|---|---|
| committer | forsyth <forsyth@vitanuova.com> | 2011-01-16 20:43:29 +0000 |
| commit | 9202ebf7c2a850851d3f34cb54101b238f2482ec (patch) | |
| tree | 990adf9f348c28b434fa1dc39db45c104a722613 /emu/Plan9 | |
| parent | b6b4a404e6ed49b8fb36ecc728a134b1274609d4 (diff) | |
20110116-2042
Diffstat (limited to 'emu/Plan9')
| -rw-r--r-- | emu/Plan9/asm-arm.s | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/emu/Plan9/asm-arm.s b/emu/Plan9/asm-arm.s new file mode 100644 index 00000000..4b9ab724 --- /dev/null +++ b/emu/Plan9/asm-arm.s @@ -0,0 +1,22 @@ + TEXT tramp(SB), 1, $0 + MOVW fn+4(FP), R1 /* func to exec */ + MOVW arg+8(FP), R2 /* argument */ + SUB $8, R0 /* new stack */ + MOVW R0, SP + MOVW R2, R0 + BL (R1) + + MOVW $0, R0 + BL _exits(SB) + RET + + TEXT vstack(SB), 1, $0 + MOVW ustack(SB), SP + BL exectramp(SB) + RET + + TEXT FPsave(SB), 1, $0 + RET + + TEXT FPrestore(SB), 1, $0 + RET |
