mips适配liteos架构汇编代码走读

📅 2026/7/2 21:21:57 👁️ 阅读次数 📝 编程学习
mips适配liteos架构汇编代码走读

一,任务调度汇编代码实现

/* * VOID OsStartToRun(LosTaskCB * topTask) * $4(a0): new task */ OsStartToRun: lw sp, 0(a0) RESTORE_ALL eret nop /* * VOID OsTaskSchedule(LOS_TASK_CB *newtask, LOS_TASK_CB *runtask); * $4(a0): new task * $5(a1): run task */ OsTaskSchedule: mtc0 ra, CP0_EPC SAVE_ALL sw sp, 0(a1) lw sp, 0(a0) RESTORE_ALL eret nop

二,核心处理程序 ,中断处理函数

NESTED(handle_reserved_entry, PT_SIZE, sp)
    .set push
    .set noat
    lw      gp, -4(sp)
    lw      t9, -8(sp)
    lw      ra, -12(sp)
    SAVE_ALL
    /* 可选使用独立中断栈(LOSCFG_IRQ_USE_STANDALONE_S