xref: /csrg-svn/sys/i386/include/psl.h (revision 63359)
141058Swilliam /*-
2*63359Sbostic  * Copyright (c) 1990, 1993
3*63359Sbostic  *	The Regents of the University of California.  All rights reserved.
441058Swilliam  *
541058Swilliam  * This code is derived from software contributed to Berkeley by
641058Swilliam  * William Jolitz.
741058Swilliam  *
846006Swilliam  * %sccs.include.redist.c%
941058Swilliam  *
10*63359Sbostic  *	@(#)psl.h	8.1 (Berkeley) 06/11/93
1141058Swilliam  */
1241058Swilliam 
1340464Sbill /*
1440464Sbill  * 386 processor status longword.
1540464Sbill  */
1640464Sbill #define	PSL_C		0x00000001	/* carry bit */
1740464Sbill #define	PSL_PF		0x00000004	/* parity bit */
1840464Sbill #define	PSL_AF		0x00000010	/* bcd carry bit */
1940464Sbill #define	PSL_Z		0x00000040	/* zero bit */
2040464Sbill #define	PSL_N		0x00000080	/* negative bit */
2140464Sbill #define	PSL_ALLCC	0x000000d5	/* all cc bits - unlikely */
2240464Sbill #define	PSL_T		0x00000100	/* trace enable bit */
2340464Sbill #define	PSL_I		0x00000200	/* interrupt enable bit */
2440464Sbill #define	PSL_D		0x00000400	/* string instruction direction bit */
2540464Sbill #define	PSL_V		0x00000800	/* overflow bit */
2640464Sbill #define	PSL_IOPL	0x00003000	/* i/o priviledge level enable */
2740464Sbill #define	PSL_NT		0x00004000	/* nested task bit */
2840464Sbill #define	PSL_RF		0x00010000	/* restart flag bit */
2940464Sbill #define	PSL_VM		0x00020000	/* virtual 8086 mode bit */
3040464Sbill 
3140464Sbill #define	PSL_MBZ		0xfffc7fb7	/* must be zero bits */
3240464Sbill #define	PSL_MBO		0x00000002	/* must be one bits */
3340464Sbill 
3440464Sbill #define	PSL_USERSET	(PSL_IOPL)
3540464Sbill #define	PSL_USERCLR	(PSL_I|PSL_NT)
36