1 /* Acmpd.c 1.1 86/07/20 */ 2 3 #include "../tahoealign/align.h" 4 cmpd(infop) process_info *infop; 5 /* 6 /* Compare accumulator (double) with operand. 7 /* 8 /****************************************************/ 9 { 10 register float *Register_12; /* Has to be first reg ! */ 11 register float *Register_11; 12 register long Register_10; 13 14 Register_12 = (float *) &acc_high; 15 Register_11 = (float *) &operand(infop,0)->data; 16 if ( reserved( *(long *)Register_11 ) ) 17 exception(infop, ILL_OPRND); 18 asm (" ldd (r12)"); 19 Register_10=psl; 20 Set_psl(r10); /* restore the user psl */ 21 asm (" cmpd (r11)"); 22 asm (" movpsl r10"); 23 New_cc (Register_10); 24 } 25