1*45760Sbostic /*- 2*45760Sbostic * Copyright (c) 1986 The Regents of the University of California. 3*45760Sbostic * All rights reserved. 4*45760Sbostic * 5*45760Sbostic * This code is derived from software contributed to Berkeley by 6*45760Sbostic * Computer Consoles Inc. 7*45760Sbostic * 8*45760Sbostic * %sccs.include.redist.c% 9*45760Sbostic * 10*45760Sbostic * @(#)Acvld.c 7.1 (Berkeley) 12/06/90 11*45760Sbostic */ 1229600Ssam 1345699Sbostic #include "align.h" cvld(infop)1429600Ssamcvld(infop) process_info *infop; 1529600Ssam /* 1629600Ssam /* Convert integer to double (into accumulator). 1729600Ssam /* 1829600Ssam /******************************************************/ 1929600Ssam { 2029600Ssam register long Register_12; /* Has to be first reg ! */ 2129600Ssam register double *Register_11; 2229600Ssam register long Register_10; 2329600Ssam 2429600Ssam Register_11 = (double *) &acc_high; 2529600Ssam Register_10 = operand(infop,0)->data; 2629600Ssam Register_12=psl; 2729600Ssam Set_psl(r12); /* restore the user psl */ 2829600Ssam asm (" cvld r10"); /* Don't change the order !! */ 2929600Ssam asm (" movpsl r12"); 3029600Ssam asm (" std (r11)"); 3129600Ssam New_cc (Register_12); 3229600Ssam } 33