jzmedia.h
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· C头文件 代码 · 共 1,192 行 · 第 1/4 页
H
1,192 行
#ifndef _MXU_H_#define _MXU_H_#define xr0 0#define xr1 1#define xr2 2#define xr3 3#define xr4 4#define xr5 5#define xr6 6#define xr7 7#define xr8 8#define xr9 9#define xr10 10#define xr11 11#define xr12 12#define xr13 13#define xr14 14#define xr15 15#define xr16 16#define ptn0 0#define ptn1 1#define ptn2 2#define ptn3 3/***********************************LD/SD***********************************/#define S32LDD(xra,rb,s12) \ do { \ __asm__ __volatile ("S32LDD xr%0,%z1,%2" \ : \ :"K"(xra),"d" (rb),"I"(s12)); \ } while (0) #define S32STD(xra,rb,s12) \ do { \ __asm__ __volatile ("S32STD xr%0,%z1,%2" \ : \ :"K"(xra),"d" (rb),"I"(s12):"memory"); \ } while (0)#define S32LDDV(xra,rb,rc,strd2) \ do { \ __asm__ __volatile ("S32LDDV xr%0,%z1,%z2,%3" \ : \ :"K"(xra),"d" (rb),"d"(rc),"K"(strd2)); \ } while (0) #define S32STDV(xra,rb,rc,strd2) \ do { \ __asm__ __volatile ("S32STDV xr%0,%z1,%z2,%3" \ : \ :"K"(xra),"d" (rb),"d"(rc),"K"(strd2):"memory"); \ } while (0) #define S32LDI(xra,rb,s12) \ do { \ __asm__ __volatile ("S32LDI xr%1,%z0,%2" \ :"+d" (rb) \ :"K"(xra),"I"(s12)); \ } while (0) #define S32SDI(xra,rb,s12) \ do { \ __asm__ __volatile ("S32SDI xr%1,%z0,%2" \ :"+d" (rb) \ :"K"(xra),"I"(s12):"memory"); \ } while (0)#define S32LDIV(xra,rb,rc,strd2) \ do { \ __asm__ __volatile ("S32LDIV xr%1,%z0,%z2,%3" \ :"+d" (rb) \ :"K"(xra),"d"(rc),"K"(strd2)); \ } while (0) #define S32SDIV(xra,rb,rc,strd2) \ do { \ __asm__ __volatile ("S32SDIV xr%1,%z0,%z2,%3" \ :"+d" (rb) \ :"K"(xra),"d"(rc),"K"(strd2):"memory"); \ } while (0)/***********************************D16MUL***********************************/ #define D16MUL_WW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MUL xr%0,xr%1,xr%2,xr%3,WW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MUL_LW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MUL xr%0,xr%1,xr%2,xr%3,LW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MUL_HW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MUL xr%0,xr%1,xr%2,xr%3,HW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MUL_XW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MUL xr%0,xr%1,xr%2,xr%3,XW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) /**********************************D16MULF*******************************/ #define D16MULF_WW(xra,xrb,xrc) \ do { \ __asm__ __volatile ("D16MULF xr%0,xr%1,xr%2,WW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc)); \ } while (0) #define D16MULF_LW(xra,xrb,xrc) \ do { \ __asm__ __volatile ("D16MULF xr%0,xr%1,xr%2,LW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc)); \ } while (0) #define D16MULF_HW(xra,xrb,xrc) \ do { \ __asm__ __volatile ("D16MULF xr%0,xr%1,xr%2,HW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc)); \ } while (0) #define D16MULF_XW(xra,xrb,xrc) \ do { \ __asm__ __volatile ("D16MULF xr%0,xr%1,xr%2,XW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc)); \ } while (0) /***********************************D16MAC********************************/#define D16MAC_AA_WW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MAC xr%0,xr%1,xr%2,xr%3,AA,WW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MAC_AA_LW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MAC xr%0,xr%1,xr%2,xr%3,AA,LW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MAC_AA_HW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MAC xr%0,xr%1,xr%2,xr%3,AA,HW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MAC_AA_XW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MAC xr%0,xr%1,xr%2,xr%3,AA,XW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0)#define D16MAC_AS_WW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MAC xr%0,xr%1,xr%2,xr%3,AS,WW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MAC_AS_LW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MAC xr%0,xr%1,xr%2,xr%3,AS,LW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MAC_AS_HW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MAC xr%0,xr%1,xr%2,xr%3,AS,HW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MAC_AS_XW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MAC xr%0,xr%1,xr%2,xr%3,AS,XW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0)#define D16MAC_SA_WW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MAC xr%0,xr%1,xr%2,xr%3,SA,WW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MAC_SA_LW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MAC xr%0,xr%1,xr%2,xr%3,SA,LW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MAC_SA_HW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MAC xr%0,xr%1,xr%2,xr%3,SA,HW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MAC_SA_XW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MAC xr%0,xr%1,xr%2,xr%3,SA,XW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MAC_SS_WW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MAC xr%0,xr%1,xr%2,xr%3,SS,WW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MAC_SS_LW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MAC xr%0,xr%1,xr%2,xr%3,SS,LW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MAC_SS_HW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MAC xr%0,xr%1,xr%2,xr%3,SS,HW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MAC_SS_XW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MAC xr%0,xr%1,xr%2,xr%3,SS,XW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) /**********************************D16MACF*******************************/#define D16MACF_AA_WW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MACF xr%0,xr%1,xr%2,xr%3,AA,WW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MACF_AA_LW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MACF xr%0,xr%1,xr%2,xr%3,AA,LW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MACF_AA_HW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MACF xr%0,xr%1,xr%2,xr%3,AA,HW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MACF_AA_XW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MACF xr%0,xr%1,xr%2,xr%3,AA,XW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0)#define D16MACF_AS_WW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MACF xr%0,xr%1,xr%2,xr%3,AS,WW" \ : \ :"K"(xra),"K"(xrb),"K"(xrc),"K"(xrd)); \ } while (0) #define D16MACF_AS_LW(xra,xrb,xrc,xrd) \ do { \ __asm__ __volatile ("D16MACF xr%0,xr%1,xr%2,xr%3,AS,LW" \
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?