BSD 4_3_Tahoe development
[unix-history] / usr / src / sys / tahoealign / Ashlq.c
CommitLineData
c8cccbb7
C
1/* Ashlq.c 1.1 86/07/20 */
2
3#include "../tahoealign/align.h"
4shlq(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}