xref: /csrg-svn/sys/tahoe/align/Alnd.c (revision 45699)
1 /*	Alnd.c	1.2	90/12/04	*/
2 
3 #include "align.h"
4 lnd(infop)	process_info *infop;
5 /*
6 /*	Load a negated double operand into accumulator.
7 /*
8 /*******************************************************/
9 {
10 	register struct oprnd *oprnd_pnt;
11 
12 	oprnd_pnt = operand(infop,0);
13 	if ( reserved( oprnd_pnt->data ) )
14 		exception(infop, ILL_OPRND);
15 	if ( oprnd_pnt->data == 0 ) acc_high = 0;
16 	else acc_high = 0x80000000 ^ oprnd_pnt->data ;
17 	acc_low = oprnd_pnt->data2 ;
18 	psl |= PSL_DBL;
19 	infop->acc_dbl = 1;
20 }
21