Rev 1917 | Rev 2071 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 1917 | Rev 1972 | ||
|---|---|---|---|
| Line 28... | Line 28... | ||
| 28 | # |
28 | # |
| 29 | 29 | ||
| 30 | #include <stack.h> |
30 | #include <stack.h> |
| 31 | #include <register.h> |
31 | #include <register.h> |
| 32 | 32 | ||
| 33 | #define INITIAL_STACK_SIZE 1024 |
33 | #define INITIAL_STACK_SIZE 8192 |
| - | 34 | ||
| - | 35 | #define NWINDOWS 8 |
|
| 34 | 36 | ||
| 35 | .register %g2, #scratch |
37 | .register %g2, #scratch |
| 36 | .register %g3, #scratch |
38 | .register %g3, #scratch |
| 37 | .register %g6, #scratch |
39 | .register %g6, #scratch |
| 38 | .register %g7, #scratch |
40 | .register %g7, #scratch |
| Line 52... | Line 54... | ||
| 52 | .word 0 |
54 | .word 0 |
| 53 | .half 0 |
55 | .half 0 |
| 54 | 56 | ||
| 55 | .align 8 |
57 | .align 8 |
| 56 | 1: |
58 | 1: |
| 57 | flushw |
- | |
| 58 | - | ||
| 59 | /* |
59 | /* |
| 60 | * Disable interrupts and disable address masking. |
60 | * Disable interrupts and disable address masking. |
| 61 | */ |
61 | */ |
| 62 | wrpr %g0, PSTATE_PRIV_BIT, %pstate |
62 | wrpr %g0, PSTATE_PRIV_BIT, %pstate |
| - | 63 | ||
| - | 64 | wrpr %g0, NWINDOWS - 2, %cansave ! set maximum saveable windows |
|
| - | 65 | wrpr %g0, 0, %canrestore ! get rid of windows we will never need again |
|
| - | 66 | wrpr %g0, 0, %otherwin ! make sure the window state is consistent |
|
| - | 67 | wrpr %g0, NWINDOWS - 1, %cleanwin ! prevent needless clean_window traps for kernel |
|
| 63 | 68 | ||
| 64 | set initial_stack_top, %sp |
69 | set initial_stack_top, %sp |
| 65 | add %sp, -STACK_BIAS, %sp |
70 | add %sp, -STACK_BIAS, %sp |
| 66 | 71 | ||
| 67 | set ofw_cif, %l0 |
72 | set ofw_cif, %l0 |