⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dsmarmlib.h

📁 IXP425的BSP代码
💻 H
字号:
/* dsmArmLib.h - ARM disassembler header file *//* Copyright 1996-1997 Wind River Systems, Inc. *//*modification history--------------------01c,09oct97.jpd  added more Thumb instructions.01b,09sep97,cdp  added more instructions.01a,09may96,cdp  created.*/#ifndef	__INCdsmArmLibh#define	__INCdsmArmLibh#ifdef __cplusplusextern "C" {#endif#include "vwModNum.h"/* dsmLib status codes */#define S_dsmLib_UNKNOWN_INSTRUCTION	(M_dsmLib | 1)/* * Macro and definitions for simple decoding of instuctions. * To check an instruction, it is ANDed with the IMASK_ and * the result is compared with the IOP_. The macro INSTR_IS * does this and returns !0 to indicate a match. */#define INSTR_IS(i,o) (((i)&(IMASK_##o))==(IOP_##o))#define IMASK_BL		0x0F000000	/* BL xxx */#define IOP_BL			0x0B000000#define IMASK_STMDB_SPP_FP_IP_LR_PC 0xFFFFF800	/* STMDB sp!,{..fp,ip,lr,pc} */#define IOP_STMDB_SPP_FP_IP_LR_PC   0xE92DD800#define IMASK_SUB_FP_IP_4	0xFFFFFFFF	/* SUB fp,ip,#4 */#define IOP_SUB_FP_IP_4		0xE24CB004#define IMASK_SUB_FP_IP_4PLUS	0xFFFFF000	/* SUB fp,ip,#4+ */#define IOP_SUB_FP_IP_4PLUS	0xE24CB000#define IMASK_MOV_IP_SP		0xFFFFFFFF	/* MOV ip,sp */#define IOP_MOV_IP_SP		0xE1A0C00D#define IMASK_MOVXX_LR_PC	0x0FFFFFFF	/* MOVxx lr,pc */#define IOP_MOVXX_LR_PC		0x01A0E00F#define IMASK_STMDB_SPP_AREGS	0xFFFFFFF0	/* STMDB sp!,{a1-a4} */#define IOP_STMDB_SPP_AREGS	0xE92D0000#define IMASK_SUB_SP_SP		0xFFFFF000	/* SUB sp,sp,#n */#define IOP_SUB_SP_SP		0xE24DD000#define	IMASK_MOVS_PC_LR	0xFFFFFFFF	/* MOVS pc,lr */#define IOP_MOVS_PC_LR		0xE1B0F00E/* Thumb instructions */#define IMASK_T_BL0		0xF800		/* BL prefix */#define IOP_T_BL0		0xF000#define IMASK_T_BL1		0xF800		/* BL */#define IOP_T_BL1		0xF800#define IMASK_T_MOV_LR_PC	0xFFFF		/* MOV lr,pc */#define IOP_T_MOV_LR_PC		0x46FE#define IMASK_T_SUB_SP_16	0xFFFF		/* SUB sp,#16 */#define IOP_T_SUB_SP_16		0xB084#define IMASK_T_MOV_FP_LO	0xFFC7		/* MOV fp,loreg */#define	IOP_T_MOV_FP_LO		0x4683#define IMASK_T_MOV_SP_LO	0xFFC7		/* MOV sp,loreg */#define	IOP_T_MOV_SP_LO		0x4685#define IMASK_T_ADD_LO_SP	0xF800		/* ADD loreg, sp, #Imm */#define IOP_T_ADD_LO_SP		0xA800#define IMASK_T_POP_LO		0xFF00		/* POP {reglist} (not PC) */#define IOP_T_POP_LO		0xBC00#define IMASK_T_PUSH_LO		0xFF00		/* PUSH {reglist} (not LR) */#define IOP_T_PUSH_LO		0xB400#define IMASK_T_PUSH		0xFF00		/* PUSH {reglist} (inc LR) */#define IOP_T_PUSH		0xB500#define IMASK_T_BX_LO		0xFFC0		/* BX loreg */#define IOP_T_BX_LO		0x4700#define IMASK_T_MOV_LO_PC	0xFFF8		/* MOV loreg,pc */#define IOP_T_MOV_LO_PC		0x4678#define IMASK_T_MOV_LO_FP	0xFFF8		/* MOV loreg,fp */#define IOP_T_MOV_LO_FP		0x4658IMPORT int dsmNbytes(FAST INSTR *binInst);IMPORT int dsmInst(FAST INSTR *binInst, int address, VOIDFUNCPTR prtAddress);#ifndef	_ASMLANGUAGE#endif	/* _ASMLANGUAGE */#ifdef __cplusplus}#endif#endif	/* __INCdsmArmLibh */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -