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

📄 asm_sprt.h

📁 2005 Center for Biological & Computational Learning at MIT and MIT All rights reserved. Permissio
💻 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 + -