diff options
Diffstat (limited to 'src/arch/amd64/cpu/registers.h')
| -rw-r--r-- | src/arch/amd64/cpu/registers.h | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/src/arch/amd64/cpu/registers.h b/src/arch/amd64/cpu/registers.h new file mode 100644 index 0000000..59cd8b8 --- /dev/null +++ b/src/arch/amd64/cpu/registers.h @@ -0,0 +1,67 @@ +#pragma once + +#include <stdint.h> + +struct dr6 { + uint64_t b0 : 1, + b1 : 1, + b2 : 1, + b3 : 1, + : 7, + bld : 1, + : 1, + bd : 1, + bs : 1, + bt : 1, + rtm : 1, + : 47; +}; + +struct dr7 { + uint64_t l0 : 1, + g0 : 1, + l1 : 1, + g1 : 1, + l2 : 1, + g2 : 1, + l3 : 1, + g3 : 1, + : 8, + rw0 : 2, + len0 : 2, + rw1 : 2, + len1 : 2, + rw2 : 2, + len2 : 2, + rw3 : 2, + len3 : 2, + : 32; +}; + +struct rflags { + uint64_t cf : 1, + : 1, + pf : 1, + : 1, + af : 1, + : 1, + zf : 1, + sf : 1, + + tf : 1, + if_ : 1, + df : 1, + of : 1, + iopl : 2, + nt : 1, + md : 1, + + rf : 1, + vm : 1, + ac : 1, + vif : 1, + vip : 1, + id : 1, + : 42; +}; + |