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

📄 arm2x86_movl.c

📁 skyeye 仿真软件
💻 C
📖 第 1 页 / 共 3 页
字号:
	return (ret);}uint8_t *get_op_movl_r7_T1 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r7_T1");	st->Reg[7] = T1;	OP_END ("get_op_movl_r7_T1");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r8_T1 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r8_T1");	st->Reg[8] = T1;	OP_END ("get_op_movl_r8_T1");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r9_T1 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r9_T1");	st->Reg[9] = T1;	OP_END ("get_op_movl_r9_T1");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r10_T1 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r10_T1");	st->Reg[10] = T1;	OP_END ("get_op_movl_r10_T1");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r11_T1 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r11_T1");	st->Reg[11] = T1;	OP_END ("get_op_movl_r11_T1");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r12_T1 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r12_T1");	st->Reg[12] = T1;	OP_END ("get_op_movl_r12_T1");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r13_T1 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r13_T1");	st->Reg[13] = T1;	OP_END ("get_op_movl_r13_T1");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r14_T1 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r14_T1");	st->Reg[14] = T1;	OP_END ("get_op_movl_r14_T1");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r15_T1 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r15_T1");	st->Reg[15] = (T1 & (~3)) + 4;	OP_END ("get_op_movl_r15_T1");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r0_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r0_T2");	st->Reg[0] = T2;	OP_END ("get_op_movl_r0_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r1_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r1_T2");	st->Reg[1] = T2;	OP_END ("get_op_movl_r1_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r2_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r2_T2");	st->Reg[2] = T2;	OP_END ("get_op_movl_r2_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r3_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r3_T2");	st->Reg[3] = T2;	OP_END ("get_op_movl_r3_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r4_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r4_T2");	st->Reg[4] = T2;	OP_END ("get_op_movl_r4_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r5_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r5_T2");	st->Reg[5] = T2;	OP_END ("get_op_movl_r5_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r6_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r6_T2");	st->Reg[6] = T2;	OP_END ("get_op_movl_r6_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r7_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r7_T2");	st->Reg[7] = T2;	OP_END ("get_op_movl_r7_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r8_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r8_T2");	st->Reg[8] = T2;	OP_END ("get_op_movl_r8_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r9_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r9_T2");	st->Reg[9] = T2;	OP_END ("get_op_movl_r9_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r10_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r10_T2");	st->Reg[10] = T2;	OP_END ("get_op_movl_r10_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r11_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r11_T2");	st->Reg[11] = T2;	OP_END ("get_op_movl_r11_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r12_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r12_T2");	st->Reg[12] = T2;	OP_END ("get_op_movl_r12_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r13_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r13_T2");	st->Reg[13] = T2;	OP_END ("get_op_movl_r13_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r14_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r14_T2");	st->Reg[14] = T2;	OP_END ("get_op_movl_r14_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_r15_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_r15_T2");	st->Reg[15] = (T2 & (~3)) + 4;	OP_END ("get_op_movl_r15_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}int op_movl_reg_Tx_maxlen;int op_movl_reg_Tx_array_maxlen[Tx_MAX + 1];op_table_t op_movl_reg_Tx[Tx_MAX + 1][16];intop_movl_reg_Tx_init (){	int i, j;	op_movl_reg_Tx[0][0].op =		get_op_movl_r0_T0 (&op_movl_reg_Tx[0][0].len);	op_movl_reg_Tx[0][1].op =		get_op_movl_r1_T0 (&op_movl_reg_Tx[0][1].len);	op_movl_reg_Tx[0][2].op =		get_op_movl_r2_T0 (&op_movl_reg_Tx[0][2].len);	op_movl_reg_Tx[0][3].op =		get_op_movl_r3_T0 (&op_movl_reg_Tx[0][3].len);	op_movl_reg_Tx[0][4].op =		get_op_movl_r4_T0 (&op_movl_reg_Tx[0][4].len);	op_movl_reg_Tx[0][5].op =		get_op_movl_r5_T0 (&op_movl_reg_Tx[0][5].len);	op_movl_reg_Tx[0][6].op =		get_op_movl_r6_T0 (&op_movl_reg_Tx[0][6].len);	op_movl_reg_Tx[0][7].op =		get_op_movl_r7_T0 (&op_movl_reg_Tx[0][7].len);	op_movl_reg_Tx[0][8].op =		get_op_movl_r8_T0 (&op_movl_reg_Tx[0][8].len);	op_movl_reg_Tx[0][9].op =		get_op_movl_r9_T0 (&op_movl_reg_Tx[0][9].len);	op_movl_reg_Tx[0][10].op =		get_op_movl_r10_T0 (&op_movl_reg_Tx[0][10].len);	op_movl_reg_Tx[0][11].op =		get_op_movl_r11_T0 (&op_movl_reg_Tx[0][11].len);	op_movl_reg_Tx[0][12].op =		get_op_movl_r12_T0 (&op_movl_reg_Tx[0][12].len);	op_movl_reg_Tx[0][13].op =		get_op_movl_r13_T0 (&op_movl_reg_Tx[0][13].len);	op_movl_reg_Tx[0][14].op =		get_op_movl_r14_T0 (&op_movl_reg_Tx[0][14].len);	op_movl_reg_Tx[0][15].op =		get_op_movl_r15_T0 (&op_movl_reg_Tx[0][15].len);	op_movl_reg_Tx[1][0].op =		get_op_movl_r0_T1 (&op_movl_reg_Tx[1][0].len);	op_movl_reg_Tx[1][1].op =		get_op_movl_r1_T1 (&op_movl_reg_Tx[1][1].len);	op_movl_reg_Tx[1][2].op =		get_op_movl_r2_T1 (&op_movl_reg_Tx[1][2].len);	op_movl_reg_Tx[1][3].op =		get_op_movl_r3_T1 (&op_movl_reg_Tx[1][3].len);	op_movl_reg_Tx[1][4].op =		get_op_movl_r4_T1 (&op_movl_reg_Tx[1][4].len);	op_movl_reg_Tx[1][5].op =		get_op_movl_r5_T1 (&op_movl_reg_Tx[1][5].len);	op_movl_reg_Tx[1][6].op =		get_op_movl_r6_T1 (&op_movl_reg_Tx[1][6].len);	op_movl_reg_Tx[1][7].op =		get_op_movl_r7_T1 (&op_movl_reg_Tx[1][7].len);	op_movl_reg_Tx[1][8].op =		get_op_movl_r8_T1 (&op_movl_reg_Tx[1][8].len);	op_movl_reg_Tx[1][9].op =		get_op_movl_r9_T1 (&op_movl_reg_Tx[1][9].len);	op_movl_reg_Tx[1][10].op =		get_op_movl_r10_T1 (&op_movl_reg_Tx[1][10].len);	op_movl_reg_Tx[1][11].op =		get_op_movl_r11_T1 (&op_movl_reg_Tx[1][11].len);	op_movl_reg_Tx[1][12].op =		get_op_movl_r12_T1 (&op_movl_reg_Tx[1][12].len);	op_movl_reg_Tx[1][13].op =		get_op_movl_r13_T1 (&op_movl_reg_Tx[1][13].len);	op_movl_reg_Tx[1][14].op =		get_op_movl_r14_T1 (&op_movl_reg_Tx[1][14].len);	op_movl_reg_Tx[1][15].op =		get_op_movl_r15_T1 (&op_movl_reg_Tx[1][15].len);	op_movl_reg_Tx[2][0].op =		get_op_movl_r0_T2 (&op_movl_reg_Tx[2][0].len);	op_movl_reg_Tx[2][1].op =		get_op_movl_r1_T2 (&op_movl_reg_Tx[2][1].len);	op_movl_reg_Tx[2][2].op =		get_op_movl_r2_T2 (&op_movl_reg_Tx[2][2].len);	op_movl_reg_Tx[2][3].op =		get_op_movl_r3_T2 (&op_movl_reg_Tx[2][3].len);	op_movl_reg_Tx[2][4].op =		get_op_movl_r4_T2 (&op_movl_reg_Tx[2][4].len);	op_movl_reg_Tx[2][5].op =		get_op_movl_r5_T2 (&op_movl_reg_Tx[2][5].len);	op_movl_reg_Tx[2][6].op =		get_op_movl_r6_T2 (&op_movl_reg_Tx[2][6].len);	op_movl_reg_Tx[2][7].op =		get_op_movl_r7_T2 (&op_movl_reg_Tx[2][7].len);	op_movl_reg_Tx[2][8].op =		get_op_movl_r8_T2 (&op_movl_reg_Tx[2][8].len);	op_movl_reg_Tx[2][9].op =		get_op_movl_r9_T2 (&op_movl_reg_Tx[2][9].len);	op_movl_reg_Tx[2][10].op =		get_op_movl_r10_T2 (&op_movl_reg_Tx[2][10].len);	op_movl_reg_Tx[2][11].op =		get_op_movl_r11_T2 (&op_movl_reg_Tx[2][11].len);	op_movl_reg_Tx[2][12].op =		get_op_movl_r12_T2 (&op_movl_reg_Tx[2][12].len);	op_movl_reg_Tx[2][13].op =		get_op_movl_r13_T2 (&op_movl_reg_Tx[2][13].len);	op_movl_reg_Tx[2][14].op =		get_op_movl_r14_T2 (&op_movl_reg_Tx[2][14].len);	op_movl_reg_Tx[2][15].op =		get_op_movl_r15_T2 (&op_movl_reg_Tx[2][15].len);	op_movl_reg_Tx_maxlen = 0;	for (i = 0; i <= Tx_MAX; i++) {		op_movl_reg_Tx_array_maxlen[i] = 0;		for (j = 0; j <= 15; j++) {			if (op_movl_reg_Tx[i][j].len <= 0) {				return (-1);			}			if (op_movl_reg_Tx[i][j].len >			    op_movl_reg_Tx_array_maxlen[i]) {				op_movl_reg_Tx_array_maxlen[i] =					op_movl_reg_Tx[i][j].len;			}		}		if (op_movl_reg_Tx_array_maxlen[i] > op_movl_reg_Tx_maxlen) {			op_movl_reg_Tx_maxlen =				op_movl_reg_Tx_array_maxlen[i];		}	}	return (0);}//--------------------------------------------------------------------------------------------------uint8_t *get_op_movl_eax_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_eax_T2");	__asm__ __volatile__ ("movl	%" AREG_T2 ", %eax");	OP_END ("get_op_movl_eax_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}op_table_t op_movl_eax_T2;//--------------------------------------------------------------------------------------------------uint8_t *get_op_movl_trap_im (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_trap_im");	st->trap = ULONG_MAX;	OP_END ("get_op_movl_trap_im");	*len = end - begin;	if (*len <= sizeof (ULONG_MAX)) {		return (NULL);	}	else {		*len -= sizeof (ULONG_MAX);	}	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_trap_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_trap_T2");	st->trap = T2;	OP_END ("get_op_movl_trap_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}op_table_t op_movl_trap_im;op_table_t op_movl_trap_T2;//--------------------------------------------------------------------------------------------------uint8_t *get_op_movl_T0_T2 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_T0_T2");	T0 = T2;	OP_END ("get_op_movl_T0_T2");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}uint8_t *get_op_movl_T2_T1 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_T2_T1");	T2 = T1;	OP_END ("get_op_movl_T2_T1");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}//teawater add for xscale(arm v5) 2005.09.22------------------------------------uint8_t *get_op_movl_T1_T0 (int *len){	uint8_t *ret;	unsigned int begin = 0, end = 0;	OP_BEGIN ("get_op_movl_T1_T0");	T1 = T0;	OP_END ("get_op_movl_T1_T0");	*len = end - begin;	ret = (uint8_t *) begin;	return (ret);}//AJ2D--------------------------------------------------------------------------op_table_t op_movl_T0_T2;op_table_t op_movl_T2_T1;//teawater add for xscale(arm v5) 2005.09.22------------------------------------op_table_t op_movl_T1_T0;//AJ2D--------------------------------------------------------------------------//--------------------------------------------------------------------------------------------------intarm2x86_movl_init (){	if (op_movl_Tx_im_init ()) {		return (-1);	}	if (op_movl_tmpx_im_init ()) {		return (-1);	}	if (op_movl_Tx_reg_init ()) {		return (-1);	}	if (op_movl_reg_Tx_init ()) {		return (-1);	}	op_movl_eax_T2.op = get_op_movl_eax_T2 (&op_movl_eax_T2.len);	if (op_movl_eax_T2.len <= 0)		return (-1);	op_movl_trap_im.op = get_op_movl_trap_im (&op_movl_trap_im.len);	if (op_movl_trap_im.len <= 0)		return (-1);	op_movl_trap_T2.op = get_op_movl_trap_T2 (&op_movl_trap_T2.len);	if (op_movl_trap_T2.len <= 0)		return (-1);	op_movl_T0_T2.op = get_op_movl_T0_T2 (&op_movl_T0_T2.len);	if (op_movl_T0_T2.len <= 0)		return (-1);	op_movl_T2_T1.op = get_op_movl_T2_T1 (&op_movl_T2_T1.len);	if (op_movl_T2_T1.len <= 0)		return (-1);//teawater add for xscale(arm v5) 2005.09.22------------------------------------	op_movl_T1_T0.op = get_op_movl_T1_T0 (&op_movl_T1_T0.len);	if (op_movl_T1_T0.len <= 0)		return (-1);//AJ2D--------------------------------------------------------------------------	return (0);}

⌨️ 快捷键说明

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