📄 cpu_insn.h
字号:
/* *---------------------------------------------------------------------- * T-Kernel * * Copyright (C) 2004 by Ken Sakamura. All rights reserved. * T-Kernel is distributed under the T-License. *---------------------------------------------------------------------- * * Version: 1.01.00 * Released by T-Engine Forum(http://www.t-engine.org) at 2004/6/28. * *---------------------------------------------------------------------- *//* * cpu_insn.h (M32104) * M32104-Dependant Operation */#ifndef _CPU_INSN_#define _CPU_INSN_#include <sys/sysinfo.h>/* ------------------------------------------------------------------------ *//* * Control register operation *//* * Get PSW */Inline UINT getPSW( void ){ UINT psw; Asm("mvfc %0, psw" : "=r"(psw)); return psw;}/* ------------------------------------------------------------------------ *//* * EIT-related *//* * Monitor use vector number */#define VECNO_DEFAULT EIT_DEFAULT /* Default handler */#define VECNO_MONITOR EIT_TRAP(0) /* Monitor service call */#define VECNO_BREAK EIT_TRAP(1) /* Break point */#define VECNO_ICU2 EIT_ICU1(2) /* PLD ICU (ICU2) handler */#define VECNO_INT5 EIT_ICU1(6) /* Interrupt switch (INT5) *//* * For saving monitor exception handler */typedef struct monhdr { FP default_hdr; /* Default handler */ FP monitor_hdr; /* Monitor service call */ FP break_hdr; /* Break point */ FP icu2_hdr; /* PLD ICU (ICU2) handler */ FP int5_hdr; /* Interrupt switch (INT5) */} MONHDR;/* For saving monitor exception handler */IMPORT MONHDR SaveMonHdr;/* * Set interrupt handler */Inline void define_inthdr( INT vecno, FP inthdr ){ SCArea->intvec[vecno] = inthdr;}/* * If it is the task-independent part, TRUE * Judge by PSW register's SM (stack mode). * SM = 0 (Use an interrupt stack) Task independent part * SM = 1 (Use a user stack) Task part */Inline BOOL isTaskIndependent( void ){ return ( (getPSW() & PSW_SM) == 0 )? TRUE: FALSE;}/* ------------------------------------------------------------------------ */#endif /* _CPU_INSN_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -