xref: /csrg-svn/sys/tahoe/align/Amovzb.c (revision 29618)
1*29618Ssam /*	Amovzb.c	1.1	86/07/20	*/
2*29618Ssam 
3*29618Ssam #include "../tahoealign/align.h"
4*29618Ssam movzb(infop) 	process_info *infop;
5*29618Ssam /*
6*29618Ssam /*	Move byte to word or longword, zero-extended
7*29618Ssam /*
8*29618Ssam /****************************************/
9*29618Ssam {
10*29618Ssam 	register long result;
11*29618Ssam 	register struct oprnd *oppnt;
12*29618Ssam 
13*29618Ssam 	oppnt = operand(infop,0);
14*29618Ssam 	result = oppnt->data;
15*29618Ssam 	negative_0;
16*29618Ssam 	if (result == 0 )  zero_1 ; else zero_0;
17*29618Ssam 	overflow_0;  carry_1;
18*29618Ssam 	if ((oppnt->mode & 0xff) == Dir)
19*29618Ssam 		write_back (infop, result , operand(infop,1) );
20*29618Ssam 	else write_back (infop, result & 0xff, operand(infop,1) );
21*29618Ssam }
22