xref: /original-bsd/sys/tahoe/align/Amovob.c (revision cd18b70b)
1 /*	Amovob.c	1.1	86/07/20	*/
2 
3 #include "../tahoealign/align.h"
4 movob_op(infop)
5 process_info *infop;
6 /*
7 /*	Move output byte
8 /*
9 /****************************************/
10 {
11 	register	long	Register_12;	/* Has to be first reg ! */
12 	register	long	Register_11;
13 	register	long	Register_10;
14 	register	long	code;
15 
16 
17 	Register_12 = operand(infop,0)->data;
18 	Register_11 = operand(infop,1)->address;
19 	code = writeable(infop, Register_11, 1);
20 	if ( code == TRUE ) {
21 		Register_10=psl;
22 		Set_psl(r10);	/* restore the user psl */
23 		asm ("	movob	r12,(r11)");
24 		asm ("	movpsl	r12");
25 		New_cc (Register_12);
26 	} else exception (infop, ILL_ACCESS, Register_11, code);
27 }
28