summaryrefslogtreecommitdiff
path: root/libhurd-mm
diff options
context:
space:
mode:
authorneal <neal>2008-02-13 10:44:37 +0000
committerneal <neal>2008-02-13 10:44:37 +0000
commit1d8af503782ea5e90c27354392dc6820b8068e7f (patch)
tree12a6c215efcd16a92a0c4cf6e4b7b105e2f911fe /libhurd-mm
parentd0aeec3d78a04a0eecd0a5fb324c8521322124c7 (diff)
2008-02-13 Neal H. Walfield <neal@gnu.org>
* ia32-exception-entry.S (ACTIVATED_MODE_BIT): New define. (PENDING_MESSAGE_BIT): Likewise. (INTERRUPT_IN_TRANSITION_BIT): Likewise. (_exception_handler_entry): When testing bits, use the above defines instead of embedded constants.
Diffstat (limited to 'libhurd-mm')
-rw-r--r--libhurd-mm/ChangeLog8
-rw-r--r--libhurd-mm/ia32-exception-entry.S8
2 files changed, 14 insertions, 2 deletions
diff --git a/libhurd-mm/ChangeLog b/libhurd-mm/ChangeLog
index f08b191..a73ae6e 100644
--- a/libhurd-mm/ChangeLog
+++ b/libhurd-mm/ChangeLog
@@ -1,3 +1,11 @@
+2008-02-13 Neal H. Walfield <neal@gnu.org>
+
+ * ia32-exception-entry.S (ACTIVATED_MODE_BIT): New define.
+ (PENDING_MESSAGE_BIT): Likewise.
+ (INTERRUPT_IN_TRANSITION_BIT): Likewise.
+ (_exception_handler_entry): When testing bits, use the above
+ defines instead of embedded constants.
+
2008-02-11 Neal H. Walfield <neal@gnu.org>
* as.h (as_insert): Change return type to struct cap *.
diff --git a/libhurd-mm/ia32-exception-entry.S b/libhurd-mm/ia32-exception-entry.S
index 0569098..ba92354 100644
--- a/libhurd-mm/ia32-exception-entry.S
+++ b/libhurd-mm/ia32-exception-entry.S
@@ -45,6 +45,10 @@
#define EF_STACK_START (5*4)
#define EF_NEXT (5*4)
+#define ACTIVATED_MODE_BIT 0
+#define PENDING_MESSAGE_BIT 1
+#define INTERRUPT_IN_TRANSITION_BIT 2
+
/* Handle an exception. */
.globl exception_handler_entry, _exception_handler_entry
exception_handler_entry:
@@ -70,7 +74,7 @@ _exception_handler_entry:
and $0xfffff000, %edx
/* Now check if the interrupt in transition flag is set. */
- bt $0x4, MODE(%edx)
+ bt $INTERRUPT_IN_TRANSITION_BIT, MODE(%edx)
jc after_save
/* Nope; we need to save the current EAX, ECX and eflags. */
@@ -148,7 +152,7 @@ after_adjust:
/* Check for pending messages. This does not need to be
atomic as if we get interrupted here, we automatically
transition back to activated mode. */
- bt $0x2, MODE(%edx)
+ bt $PENDING_MESSAGE_BIT, MODE(%edx)
jc process_pending
/* Restore the user stack. */