1*45699Sbostic /* Acmpf2.c 1.2 90/12/04 */ 229598Ssam 3*45699Sbostic #include "align.h" 429598Ssam cmpf2(infop) process_info *infop; 529598Ssam /* 629598Ssam /* Compare operand 1 with operand2 (float). 729598Ssam /* 829598Ssam /*************************************************/ 929598Ssam { 1029598Ssam register float *Register_12; /* Has to be first reg ! */ 1129598Ssam register float *Register_11; 1229598Ssam register long Register_10; 1329598Ssam 1429598Ssam Register_12 = (float *) &operand(infop,0)->data; 1529598Ssam Register_11 = (float *) &operand(infop,1)->data; 1629598Ssam if ( reserved( *(long *)Register_12 ) || 1729598Ssam reserved( *(long *)Register_11 ) ) 1829598Ssam {exception(infop, ILL_OPRND);} 1929598Ssam 2029598Ssam Register_10=psl; 2129598Ssam Set_psl(r10); /* restore the user psl */ 2229598Ssam asm (" cmpf2 (r12),(r11)"); 2329598Ssam asm (" movpsl r10"); 2429598Ssam New_cc (Register_10); 2529598Ssam } 26