fromHudsonMacros.h revision 7997
17997Ssaidi@eecs.umich.edu#ifndef HUDSON_MACROS_LOADED
27997Ssaidi@eecs.umich.edu#define	HUDSON_MACROS_LOADED	    1
37997Ssaidi@eecs.umich.edu
47997Ssaidi@eecs.umich.edu/*
57997Ssaidi@eecs.umich.edu *      VID: [T1.2] PT: [Fri Apr 21 16:47:16 1995] SF: [macros.h]
67997Ssaidi@eecs.umich.edu *       TI: [/sae_users/cruz/bin/vice -iplatform.s -l// -p# -DEB164 -h -m -aeb164 ]
77997Ssaidi@eecs.umich.edu */
87997Ssaidi@eecs.umich.edu/*
97997Ssaidi@eecs.umich.edu*****************************************************************************
107997Ssaidi@eecs.umich.edu**                                                                          *
117997Ssaidi@eecs.umich.edu**  Copyright � 1993, 1994						    *
127997Ssaidi@eecs.umich.edu**  by Digital Equipment Corporation, Maynard, Massachusetts.		    *
137997Ssaidi@eecs.umich.edu**                                                                          *
147997Ssaidi@eecs.umich.edu**  All Rights Reserved							    *
157997Ssaidi@eecs.umich.edu**                                                                          *
167997Ssaidi@eecs.umich.edu**  Permission  is  hereby  granted  to  use, copy, modify and distribute   *
177997Ssaidi@eecs.umich.edu**  this  software  and  its  documentation,  in  both  source  code  and   *
187997Ssaidi@eecs.umich.edu**  object  code  form,  and without fee, for the purpose of distribution   *
197997Ssaidi@eecs.umich.edu**  of this software  or  modifications  of this software within products   *
207997Ssaidi@eecs.umich.edu**  incorporating  an  integrated   circuit  implementing  Digital's  AXP   *
217997Ssaidi@eecs.umich.edu**  architecture,  regardless  of the  source of such integrated circuit,   *
227997Ssaidi@eecs.umich.edu**  provided that the  above copyright  notice and this permission notice   *
237997Ssaidi@eecs.umich.edu**  appear  in  all copies,  and  that  the  name  of  Digital  Equipment   *
247997Ssaidi@eecs.umich.edu**  Corporation  not  be  used  in advertising or publicity pertaining to   *
257997Ssaidi@eecs.umich.edu**  distribution of the  document  or  software without specific, written   *
267997Ssaidi@eecs.umich.edu**  prior permission.							    *
277997Ssaidi@eecs.umich.edu**                                                                          *
287997Ssaidi@eecs.umich.edu**  Digital  Equipment  Corporation   disclaims  all   warranties  and/or   *
297997Ssaidi@eecs.umich.edu**  guarantees  with  regard  to  this  software,  including  all implied   *
307997Ssaidi@eecs.umich.edu**  warranties of fitness for  a  particular purpose and merchantability,   *
317997Ssaidi@eecs.umich.edu**  and makes  no  representations  regarding  the use of, or the results   *
327997Ssaidi@eecs.umich.edu**  of the use of, the software and documentation in terms of correctness,  *
337997Ssaidi@eecs.umich.edu**  accuracy,  reliability,  currentness  or  otherwise;  and you rely on   *
347997Ssaidi@eecs.umich.edu**  the software, documentation and results solely at your own risk.	    *
357997Ssaidi@eecs.umich.edu**                                                                          *
367997Ssaidi@eecs.umich.edu**  AXP is a trademark of Digital Equipment Corporation.		    *
377997Ssaidi@eecs.umich.edu**                                                                          *
387997Ssaidi@eecs.umich.edu*****************************************************************************
397997Ssaidi@eecs.umich.edu**
407997Ssaidi@eecs.umich.edu**  FACILITY:
417997Ssaidi@eecs.umich.edu**
427997Ssaidi@eecs.umich.edu**	DECchip 21164 PALcode
437997Ssaidi@eecs.umich.edu**
447997Ssaidi@eecs.umich.edu**  MODULE:
457997Ssaidi@eecs.umich.edu**
467997Ssaidi@eecs.umich.edu**	macros.h
477997Ssaidi@eecs.umich.edu**
487997Ssaidi@eecs.umich.edu**  MODULE DESCRIPTION:
497997Ssaidi@eecs.umich.edu**
507997Ssaidi@eecs.umich.edu**      DECchip 21164 PALcode macro definitions
517997Ssaidi@eecs.umich.edu**
527997Ssaidi@eecs.umich.edu**  AUTHOR: ER
537997Ssaidi@eecs.umich.edu**
547997Ssaidi@eecs.umich.edu**  CREATION DATE:  29-Nov-1993
557997Ssaidi@eecs.umich.edu**
567997Ssaidi@eecs.umich.edu**  $Id: fromHudsonMacros.h,v 1.1.1.1 1997/10/30 23:27:19 verghese Exp $
577997Ssaidi@eecs.umich.edu**
587997Ssaidi@eecs.umich.edu**  MODIFICATION HISTORY:
597997Ssaidi@eecs.umich.edu**
607997Ssaidi@eecs.umich.edu**  $Log: fromHudsonMacros.h,v $
617997Ssaidi@eecs.umich.edu**  Revision 1.1.1.1  1997/10/30 23:27:19  verghese
627997Ssaidi@eecs.umich.edu**  current 10/29/97
637997Ssaidi@eecs.umich.edu**
647997Ssaidi@eecs.umich.edu**  Revision 1.1  1995/11/18 01:46:23  boyle
657997Ssaidi@eecs.umich.edu**  Initial revision
667997Ssaidi@eecs.umich.edu**
677997Ssaidi@eecs.umich.edu**  Revision 1.5  1994/07/08  17:03:12  samberg
687997Ssaidi@eecs.umich.edu**  Changes to support platform specific additions
697997Ssaidi@eecs.umich.edu**
707997Ssaidi@eecs.umich.edu**  Revision 1.4  1994/05/20  19:24:19  ericr
717997Ssaidi@eecs.umich.edu**  Moved STALL macro from osfpal.s to here
727997Ssaidi@eecs.umich.edu**  Added LDLI macro
737997Ssaidi@eecs.umich.edu**
747997Ssaidi@eecs.umich.edu**  Revision 1.3  1994/05/20  18:08:14  ericr
757997Ssaidi@eecs.umich.edu**  Changed line comments to C++ style comment character
767997Ssaidi@eecs.umich.edu**
777997Ssaidi@eecs.umich.edu**  Revision 1.2  1994/02/28  18:45:51  ericr
787997Ssaidi@eecs.umich.edu**  Fixed EGORE related bugs
797997Ssaidi@eecs.umich.edu**
807997Ssaidi@eecs.umich.edu**  Revision 1.1  1993/12/16  21:55:05  eric
817997Ssaidi@eecs.umich.edu**  Initial revision
827997Ssaidi@eecs.umich.edu**
837997Ssaidi@eecs.umich.edu**
847997Ssaidi@eecs.umich.edu**--
857997Ssaidi@eecs.umich.edu*/
867997Ssaidi@eecs.umich.edu
877997Ssaidi@eecs.umich.edu#define	STALL \
887997Ssaidi@eecs.umich.edu    mfpr    r31, pt0
897997Ssaidi@eecs.umich.edu
907997Ssaidi@eecs.umich.edu#define	NOP \
917997Ssaidi@eecs.umich.edu    bis	    $31, $31, $31
927997Ssaidi@eecs.umich.edu
937997Ssaidi@eecs.umich.edu/*
947997Ssaidi@eecs.umich.edu** Align code on an 8K byte page boundary.
957997Ssaidi@eecs.umich.edu*/
967997Ssaidi@eecs.umich.edu
977997Ssaidi@eecs.umich.edu#define	ALIGN_PAGE \
987997Ssaidi@eecs.umich.edu    .align  13
997997Ssaidi@eecs.umich.edu
1007997Ssaidi@eecs.umich.edu/*
1017997Ssaidi@eecs.umich.edu** Align code on a 32 byte block boundary.
1027997Ssaidi@eecs.umich.edu*/
1037997Ssaidi@eecs.umich.edu
1047997Ssaidi@eecs.umich.edu#define	ALIGN_BLOCK \
1057997Ssaidi@eecs.umich.edu    .align  5
1067997Ssaidi@eecs.umich.edu
1077997Ssaidi@eecs.umich.edu/*
1087997Ssaidi@eecs.umich.edu** Align code on a quadword boundary.
1097997Ssaidi@eecs.umich.edu*/
1107997Ssaidi@eecs.umich.edu
1117997Ssaidi@eecs.umich.edu#define ALIGN_BRANCH \
1127997Ssaidi@eecs.umich.edu    .align  3
1137997Ssaidi@eecs.umich.edu
1147997Ssaidi@eecs.umich.edu/*
1157997Ssaidi@eecs.umich.edu** Hardware vectors go in .text 0 sub-segment.
1167997Ssaidi@eecs.umich.edu*/
1177997Ssaidi@eecs.umich.edu
1187997Ssaidi@eecs.umich.edu#define	HDW_VECTOR(offset) \
1197997Ssaidi@eecs.umich.edu    . = offset
1207997Ssaidi@eecs.umich.edu
1217997Ssaidi@eecs.umich.edu/*
1227997Ssaidi@eecs.umich.edu** Privileged CALL_PAL functions are in .text 1 sub-segment.
1237997Ssaidi@eecs.umich.edu*/
1247997Ssaidi@eecs.umich.edu
1257997Ssaidi@eecs.umich.edu#define	CALL_PAL_PRIV(vector) \
1267997Ssaidi@eecs.umich.edu    . = (PAL_CALL_PAL_PRIV_ENTRY+(vector<<6))
1277997Ssaidi@eecs.umich.edu
1287997Ssaidi@eecs.umich.edu/*
1297997Ssaidi@eecs.umich.edu** Unprivileged CALL_PAL functions are in .text 1 sub-segment,
1307997Ssaidi@eecs.umich.edu** the privileged bit is removed from these vectors.
1317997Ssaidi@eecs.umich.edu*/
1327997Ssaidi@eecs.umich.edu
1337997Ssaidi@eecs.umich.edu#define CALL_PAL_UNPRIV(vector) \
1347997Ssaidi@eecs.umich.edu    . = (PAL_CALL_PAL_UNPRIV_ENTRY+((vector&0x3F)<<6))
1357997Ssaidi@eecs.umich.edu
1367997Ssaidi@eecs.umich.edu/*
1377997Ssaidi@eecs.umich.edu** Implements a load "immediate" longword function
1387997Ssaidi@eecs.umich.edu*/
1397997Ssaidi@eecs.umich.edu#define LDLI(reg,val) \
1407997Ssaidi@eecs.umich.edu        ldah	reg, ((val+0x8000) >> 16)(zero); \
1417997Ssaidi@eecs.umich.edu        lda	reg, (val&0xffff)(reg)
1427997Ssaidi@eecs.umich.edu
1437997Ssaidi@eecs.umich.edu
1447997Ssaidi@eecs.umich.edu
1457997Ssaidi@eecs.umich.edu#endif
146