1*45699Sbostic /* Acmpd2.c 1.2 90/12/04 */ 229597Ssam 3*45699Sbostic #include "align.h" 429597Ssam cmpd2(infop) process_info *infop; 529597Ssam /* 629597Ssam /* Compare operand 1 with operand 2 (double). 729597Ssam /* 829597Ssam /****************************************************/ 929597Ssam { 1029597Ssam register double *Register_12; /* Has to be first reg ! */ 1129597Ssam register double *Register_11; 1229597Ssam register long Register_10; 1329597Ssam 1429597Ssam Register_12 = (double *) &operand(infop,0)->data; 1529597Ssam Register_11 = (double *) &operand(infop,1)->data; 1629597Ssam if ( reserved( *(long *)Register_12 ) || 1729597Ssam reserved( *(long *)Register_11 ) ) 1829597Ssam exception(infop, ILL_OPRND); 1929597Ssam Register_10=psl; 2029597Ssam Set_psl(r10); /* restore the user psl */ 2129597Ssam asm (" cmpd2 (r12),(r11)"); 2229597Ssam asm (" movpsl r10"); 2329597Ssam New_cc (Register_10); 2429597Ssam } 25