|
|
1.1 ! root 1: /* Ashlq.c 1.1 86/07/20 */ ! 2: ! 3: #include "../tahoealign/align.h" ! 4: shlq(infop) process_info *infop; ! 5: /* ! 6: /* Shift left quadword. ! 7: /* ! 8: /********************************/ ! 9: { ! 10: register long Register_12; /* Has to be first reg ! */ ! 11: register long Register_11; ! 12: register long Register_10; ! 13: register long *Register_9; ! 14: quadword result; ! 15: ! 16: Register_12 = operand(infop,0)->data; /* Counter */ ! 17: Register_9 = &operand(infop,1)->data; /* Source */ ! 18: ! 19: Register_10=psl; ! 20: Set_psl(r10); /* restore the user psl */ ! 21: asm (" shlq r12,(r9),r10"); ! 22: asm (" movpsl r12"); ! 23: New_cc (Register_12); ! 24: result.high = Register_10; ! 25: result.low = Register_11; ! 26: write_quadword (infop, result, operand(infop,2)); ! 27: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.