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

📄 sparc_matrix.h

📁 mesa-6.5-minigui源码
💻 H
字号:
/* * SPARC assembly matrix code. */#ifndef _SPARC_MATRIX_H#define _SPARC_MATRIX_H#ifdef __arch64__#define LDPTR		ldx#define MAT_M		0x00#define MAT_INV		0x08#define V4F_DATA	0x00#define V4F_START	0x08#define V4F_COUNT	0x10#define V4F_STRIDE	0x14#define V4F_SIZE	0x18#define V4F_FLAGS	0x1c#else#define LDPTR		ld#define MAT_M		0x00#define MAT_INV		0x04#define V4F_DATA	0x00#define V4F_START	0x04#define V4F_COUNT	0x08#define V4F_STRIDE	0x0c#define V4F_SIZE	0x10#define V4F_FLAGS	0x14#endif#define VEC_SIZE_1   	1#define VEC_SIZE_2   	3#define VEC_SIZE_3   	7#define VEC_SIZE_4   	15#define M0		%f16#define M1		%f17#define M2		%f18#define M3		%f19#define M4		%f20#define M5		%f21#define M6		%f22#define M7		%f23#define M8		%f24#define M9		%f25#define M10		%f26#define M11		%f27#define M12		%f28#define M13		%f29#define M14		%f30#define M15		%f31#define LDMATRIX_0_1_2_3_12_13_14_15(BASE)	\	ldd	[BASE + ( 0 * 0x4)], M0;	\	ldd	[BASE + ( 2 * 0x4)], M2;	\	ldd	[BASE + (12 * 0x4)], M12;	\	ldd	[BASE + (14 * 0x4)], M14#define LDMATRIX_0_1_12_13(BASE)		\	ldd	[BASE + ( 0 * 0x4)], M0;	\	ldd	[BASE + (12 * 0x4)], M12#define LDMATRIX_0_12_13(BASE)			\	ld	[BASE + ( 0 * 0x4)], M0;	\	ldd	[BASE + (12 * 0x4)], M12#define LDMATRIX_0_1_2_12_13_14(BASE)		\	ldd	[BASE + ( 0 * 0x4)], M0;	\	ld	[BASE + ( 2 * 0x4)], M2;	\	ldd	[BASE + (12 * 0x4)], M12;	\	ld	[BASE + (14 * 0x4)], M14#define LDMATRIX_0_12_13_14(BASE)		\	ld	[BASE + ( 0 * 0x4)], M0;	\	ldd	[BASE + (12 * 0x4)], M12;	\	ld	[BASE + (14 * 0x4)], M14#define LDMATRIX_0_14(BASE)			\	ld	[BASE + ( 0 * 0x4)], M0;	\	ld	[BASE + (14 * 0x4)], M14#define LDMATRIX_0_1_2_3_4_5_6_7_12_13_14_15(BASE) \	ldd	[BASE + ( 0 * 0x4)], M0;	\	ldd	[BASE + ( 2 * 0x4)], M2;	\	ldd	[BASE + ( 4 * 0x4)], M4;	\	ldd	[BASE + ( 6 * 0x4)], M6;	\	ldd	[BASE + (12 * 0x4)], M12;	\	ldd	[BASE + (14 * 0x4)], M14#define LDMATRIX_0_5_12_13(BASE) 		\	ld	[BASE + ( 0 * 0x4)], M0;	\	ld	[BASE + ( 5 * 0x4)], M5;	\	ldd	[BASE + (12 * 0x4)], M12#define LDMATRIX_0_1_2_3_4_5_6_12_13_14(BASE)	\	ldd	[BASE + ( 0 * 0x4)], M0;	\	ldd	[BASE + ( 2 * 0x4)], M2;	\	ldd	[BASE + ( 4 * 0x4)], M4;	\	ld	[BASE + ( 6 * 0x4)], M6;	\	ldd	[BASE + (12 * 0x4)], M12;	\	ld	[BASE + (14 * 0x4)], M14#define LDMATRIX_0_5_12_13_14(BASE)		\	ld	[BASE + ( 0 * 0x4)], M0;	\	ld	[BASE + ( 5 * 0x4)], M5;	\	ldd	[BASE + (12 * 0x4)], M12;	\	ld	[BASE + (14 * 0x4)], M14#define LDMATRIX_0_5_14(BASE)			\	ld	[BASE + ( 0 * 0x4)], M0;	\	ld	[BASE + ( 5 * 0x4)], M5;	\	ld	[BASE + (14 * 0x4)], M14#define LDMATRIX_0_1_2_3_4_5_6_7_8_9_10_11_12_13_14_15(BASE) \	ldd	[BASE + ( 0 * 0x4)], M0;	\	ldd	[BASE + ( 2 * 0x4)], M2;	\	ldd	[BASE + ( 4 * 0x4)], M4;	\	ldd	[BASE + ( 6 * 0x4)], M6;	\	ldd	[BASE + ( 8 * 0x4)], M8;	\	ldd	[BASE + (10 * 0x4)], M10;	\	ldd	[BASE + (12 * 0x4)], M12;	\	ldd	[BASE + (14 * 0x4)], M14#define LDMATRIX_0_1_4_5_12_13(BASE) 		\	ldd	[BASE + ( 0 * 0x4)], M0;	\	ldd	[BASE + ( 4 * 0x4)], M4;	\	ldd	[BASE + (12 * 0x4)], M12#define LDMATRIX_0_5_12_13(BASE) 		\	ld	[BASE + ( 0 * 0x4)], M0;	\	ld	[BASE + ( 5 * 0x4)], M5;	\	ldd	[BASE + (12 * 0x4)], M12#define LDMATRIX_0_1_2_4_5_6_8_9_10(BASE) \	ldd	[BASE + ( 0 * 0x4)], M0;	\	ld	[BASE + ( 2 * 0x4)], M2;	\	ldd	[BASE + ( 4 * 0x4)], M4;	\	ld	[BASE + ( 6 * 0x4)], M6;	\	ldd	[BASE + ( 8 * 0x4)], M8;	\	ld	[BASE + (10 * 0x4)], M10#define LDMATRIX_0_1_2_4_5_6_8_9_10_12_13_14(BASE) \	ldd	[BASE + ( 0 * 0x4)], M0;	\	ld	[BASE + ( 2 * 0x4)], M2;	\	ldd	[BASE + ( 4 * 0x4)], M4;	\	ld	[BASE + ( 6 * 0x4)], M6;	\	ldd	[BASE + ( 8 * 0x4)], M8;	\	ld	[BASE + (10 * 0x4)], M10;	\	ldd	[BASE + (12 * 0x4)], M12;	\	ld	[BASE + (14 * 0x4)], M14#define LDMATRIX_0_5_10(BASE) 			\	ld	[BASE + ( 0 * 0x4)], M0;	\	ld	[BASE + ( 5 * 0x4)], M5;	\	ld	[BASE + (10 * 0x4)], M10;	\#define LDMATRIX_0_5_10_12_13_14(BASE) 		\	ld	[BASE + ( 0 * 0x4)], M0;	\	ld	[BASE + ( 5 * 0x4)], M5;	\	ld	[BASE + (10 * 0x4)], M10;	\	ldd	[BASE + (12 * 0x4)], M12;	\	ld	[BASE + (14 * 0x4)], M14#define LDMATRIX_0_5_8_9_10_14(BASE) 		\	ld	[BASE + ( 0 * 0x4)], M0;	\	ld	[BASE + ( 5 * 0x4)], M5;	\	ldd	[BASE + ( 8 * 0x4)], M8;	\	ld	[BASE + (10 * 0x4)], M10;	\	ld	[BASE + (14 * 0x4)], M14#endif /* !(_SPARC_MATRIX_H) */

⌨️ 快捷键说明

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