📄 asm_sprt.h
字号:
/************************************************************************
*
* asm_sprt.h
*
* (c) Copyright 2001-2004 Analog Devices, Inc. All rights reserved.
* $Revision: 1.10 $
************************************************************************/
#ifndef __ASM_SPRT_DEFINED
#define __ASM_SPRT_DEFINED
#if !defined(__ECC__) /* Don't parse for C code */
#define entry /* nothing */
#define leaf_entry /* nothing */
#ifdef __ADSP21020__
#define ccall(x) r2=i6; i6=i7; jump (pc, x) (db); dm(i7,m7)=r2; dm(i7,m7)=PC
#define leaf_exit i12=dm(m7,i6); jump (m14,i12) (db); i7=i6; i6=dm(0,I6)
#define exit leaf_exit
#else
#define ccall(x) cjump (x) (DB); dm(i7,m7)=r2; dm(i7,m7)=PC
//#ifdef __ADSP21160__
//#define leaf_exit i12=dm(m7,i6); jump (m14,i12) (db); i7=i6; i6=dm(0,I6)
//#else
#define leaf_exit i12=dm(m7,i6); jump (m14,i12) (db); nop; RFRAME
//#endif
#define exit leaf_exit
#endif
#define reads(x) dm(x, i6)
#define puts dm(i7, m7)
#define gets(x) dm(x, i7)
#define alter(x) modify(i7, x)
#define save_reg puts=r0;\
puts=r1;\
puts=r2;\
puts=r3;\
puts=r4;\
puts=r5;\
puts=r6;\
puts=r7;\
puts=r8;\
puts=r9;\
puts=r10;\
puts=r11;\
puts=r12;\
puts=r13;\
puts=r14;\
puts=r15
#define restore_reg r15=gets(1);\
r14=gets(2);\
r13=gets(3);\
r12=gets(4);\
r11=gets(5);\
r10=gets(6);\
r9 =gets(7);\
r8 =gets(8);\
r7 =gets(9);\
r6 =gets(10);\
r5 =gets(11);\
r4 =gets(12);\
r3 =gets(13);\
r2 =gets(14);\
r1 =gets(15);\
r0 =gets(16);\
alter(16)
#endif /* __ECC__ */
#endif /* __ASM_SPRT_DEFINED */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -