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 |