RTEMS 5.2
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
registers.h
Go to the documentation of this file.
1
11/*
12 * COPYRIGHT (c) 1998 valette@crf.canon.fr
13 *
14 * The license and distribution terms for this file may be
15 * found in the file LICENSE in this distribution or at
16 * http://www.rtems.org/license/LICENSE.
17 */
18
19#ifndef _RTEMS_SCORE_REGISTERS_H
20#define _RTEMS_SCORE_REGISTERS_H
21
22/*
23 * definition related to EFLAGS
24 */
25#define EFLAGS_CARRY 0x1
26#define EFLAGS_PARITY 0x4
27
28#define EFLAGS_AUX_CARRY 0x10
29#define EFLAGS_ZERO 0x40
30#define EFLAGS_SIGN 0x80
31
32#define EFLAGS_TRAP 0x100
33#define EFLAGS_INTR_ENABLE 0x200
34#define EFLAGS_DIRECTION 0x400
35#define EFLAGS_OVERFLOW 0x800
36
37#define EFLAGS_IOPL_MASK 0x3000
38#define EFLAGS_NESTED_TASK 0x8000
39
40#define EFLAGS_RESUME 0x10000
41#define EFLAGS_VIRTUAL_MODE 0x20000
42#define EFLAGS_ALIGN_CHECK 0x40000
43#define EFLAGS_VIRTUAL_INTR 0x80000
44
45#define EFLAGS_VIRTUAL_INTR_PEND 0x100000
46#define EFLAGS_ID 0x200000
47
48/*
49 * definitions related to CR0
50 */
51#define CR0_PROTECTION_ENABLE 0x1
52#define CR0_MONITOR_COPROC 0x2
53#define CR0_COPROC_SOFT_EMUL 0x4
54#define CR0_FLOATING_INSTR_EXCEPTION 0x8
55
56#define CR0_EXTENSION_TYPE 0x10
57#define CR0_NUMERIC_ERROR 0x20
58
59#define CR0_WRITE_PROTECT 0x10000
60#define CR0_ALIGMENT_MASK 0x40000
61
62#define CR0_NO_WRITE_THROUGH 0x20000000
63#define CR0_PAGE_LEVEL_CACHE_DISABLE 0x40000000
64#define CR0_PAGING 0x80000000
65
66/*
67 * definitions related to CR3
68 */
69
70#define CR3_PAGE_CACHE_DISABLE 0x10
71#define CR3_PAGE_WRITE_THROUGH 0x8
72#define CR3_PAGE_DIRECTORY_MASK 0xFFFFF000
73
74#endif