1 /* Ashll.c 1.1 86/07/20 */ 2 3 4 #include "../tahoealign/align.h" 5 6 shll(infop) process_info *infop; 7 /* 8 /* Shift logical left (longword). 9 /* Checks for overflow. 10 /* 11 /*******************************/ 12 { 13 register long Register_12; /* Has to be first reg ! */ 14 register long Register_11; 15 register long Register_10; 16 17 Register_12 = operand(infop,0)->data; 18 Register_11 = operand(infop,1)->data; 19 Register_10 = psl; 20 Set_psl(r10); /*save the orig CC bits of the psl */ 21 asm(" shll r12,r11,r10"); 22 asm(" movpsl r12"); 23 New_cc (Register_12); 24 write_back (infop, Register_10, operand(infop,2)); 25 } 26