Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/mips32/src/start.S

    r996df189 r9d58539  
    3232#include <arch/context_offset.h>
    3333#include <arch/stack.h>
    34 #include <arch/istate_struct.h>
    3534
    3635.text
     
    5251#define REG_SAVE_MASK 0x1f
    5352
     53#define ISTATE_OFFSET_A0        0
     54#define ISTATE_OFFSET_A1        4
     55#define ISTATE_OFFSET_A2        8
     56#define ISTATE_OFFSET_A3        12
     57#define ISTATE_OFFSET_T0        16
     58#define ISTATE_OFFSET_T1        20
     59#define ISTATE_OFFSET_V0        24
     60#define ISTATE_OFFSET_V1        28
     61#define ISTATE_OFFSET_AT        32
     62#define ISTATE_OFFSET_T2        36
     63#define ISTATE_OFFSET_T3        40
     64#define ISTATE_OFFSET_T4        44
     65#define ISTATE_OFFSET_T5        48
     66#define ISTATE_OFFSET_T6        52
     67#define ISTATE_OFFSET_T7        56
     68#define ISTATE_OFFSET_S0        60
     69#define ISTATE_OFFSET_S1        64
     70#define ISTATE_OFFSET_S2        68
     71#define ISTATE_OFFSET_S3        72
     72#define ISTATE_OFFSET_S4        76
     73#define ISTATE_OFFSET_S5        80
     74#define ISTATE_OFFSET_S6        84
     75#define ISTATE_OFFSET_S7        88
     76#define ISTATE_OFFSET_T8        92
     77#define ISTATE_OFFSET_T9        96
     78#define ISTATE_OFFSET_KT0       100
     79#define ISTATE_OFFSET_KT1       104
     80#define ISTATE_OFFSET_GP        108
     81#define ISTATE_OFFSET_SP        112
     82#define ISTATE_OFFSET_S8        116
     83#define ISTATE_OFFSET_RA        120
     84#define ISTATE_OFFSET_LO        124
     85#define ISTATE_OFFSET_HI        128
     86#define ISTATE_OFFSET_STATUS    132
     87#define ISTATE_OFFSET_EPC       136
     88#define ISTATE_OFFSET_ALIGNMENT 140
     89
     90#define ISTATE_SOFT_SIZE        144
     91
    5492/*
    5593 * The fake ABI prologue is never executed and may not be part of the
     
    5997 */
    6098.macro FAKE_ABI_PROLOGUE
    61         sub $sp, ISTATE_SIZE
     99        sub $sp, ISTATE_SOFT_SIZE
    62100        sw $ra, ISTATE_OFFSET_EPC($sp)
    63101.endm
     
    227265        KERNEL_STACK_TO_K0
    228266       
    229         sub $k0, ISTATE_SIZE
     267        sub $k0, ISTATE_SOFT_SIZE
    230268        sw $sp, ISTATE_OFFSET_SP($k0)
    231269        move $sp, $k0
     
    317355tlb_refill_handler:
    318356        KERNEL_STACK_TO_K0
    319         sub $k0, ISTATE_SIZE
     357        sub $k0, ISTATE_SOFT_SIZE
    320358        REGISTERS_STORE_AND_EXC_RESET $k0
    321359        sw $sp, ISTATE_OFFSET_SP($k0)
     
    333371cache_error_handler:
    334372        KERNEL_STACK_TO_K0
    335         sub $k0, ISTATE_SIZE
     373        sub $k0, ISTATE_SOFT_SIZE
    336374        REGISTERS_STORE_AND_EXC_RESET $k0
    337375        sw $sp, ISTATE_OFFSET_SP($k0)
Note: See TracChangeset for help on using the changeset viewer.