Annotation of sys/arch/hppa/spmath/hppa.h, Revision 1.1.1.1
1.1 nbrk 1: /* $OpenBSD: hppa.h,v 1.5 2002/05/07 22:19:30 mickey Exp $ */
2: /*
3: (c) Copyright 1986 HEWLETT-PACKARD COMPANY
4: To anyone who acknowledges that this file is provided "AS IS"
5: without any express or implied warranty:
6: permission to use, copy, modify, and distribute this file
7: for any purpose is hereby granted without fee, provided that
8: the above copyright notice and this notice appears in all
9: copies, and that the name of Hewlett-Packard Company not be
10: used in advertising or publicity pertaining to distribution
11: of the software without specific, written prior permission.
12: Hewlett-Packard Company makes no representations about the
13: suitability of this software for any purpose.
14: */
15: /* @(#)hppa.h: Revision: 2.7.88.1 Date: 93/12/07 15:06:26 */
16:
17: /* amount is assumed to be a constant between 0 and 32 (non-inclusive) */
18: #define Shiftdouble(left,right,amount,dest) \
19: /* int left, right, amount, dest; */ \
20: dest = ((left) << (32-(amount))) | ((unsigned int)(right) >> (amount))
21:
22: /* amount must be less than 32 */
23: #define Variableshiftdouble(left,right,amount,dest) \
24: /* unsigned int left, right; int amount, dest; */ \
25: if (amount == 0) dest = right; \
26: else dest = ((((unsigned) left)&0x7fffffff) << (32-(amount))) | \
27: ((unsigned) right >> (amount))
28:
29: /* amount must be between 0 and 32 (non-inclusive) */
30: #define Variable_shift_double(left,right,amount,dest) \
31: /* unsigned int left, right; int amount, dest; */ \
32: dest = (left << (32-(amount))) | ((unsigned) right >> (amount))
CVSweb