1*29634Ssam /* Ashrl.c 1.1 86/07/20 */ 2*29634Ssam 3*29634Ssam 4*29634Ssam #include "../tahoealign/align.h" 5*29634Ssam shrl(infop) process_info *infop; 6*29634Ssam /* 7*29634Ssam /* Shift logical right (longword). 8*29634Ssam /* 9*29634Ssam /*******************************/ 10*29634Ssam { 11*29634Ssam register long Register_12; /* Has to be first reg ! */ 12*29634Ssam register long Register_11; 13*29634Ssam register long Register_10; 14*29634Ssam 15*29634Ssam Register_12 = operand(infop,0)->data; 16*29634Ssam Register_11 = operand(infop,1)->data; 17*29634Ssam Register_10=psl; 18*29634Ssam Set_psl(r10); /* restore the user psl */ 19*29634Ssam asm (" shrl r12,r11,r10"); 20*29634Ssam asm (" movpsl r12"); 21*29634Ssam New_cc (Register_12); 22*29634Ssam write_back (infop, Register_10, operand(infop,2)); 23*29634Ssam } 24