aboutsummaryrefslogtreecommitdiff
path: root/core/thread/sem_asm.S
diff options
context:
space:
mode:
Diffstat (limited to 'core/thread/sem_asm.S')
-rw-r--r--core/thread/sem_asm.S16
1 files changed, 16 insertions, 0 deletions
diff --git a/core/thread/sem_asm.S b/core/thread/sem_asm.S
new file mode 100644
index 0000000..ce67471
--- /dev/null
+++ b/core/thread/sem_asm.S
@@ -0,0 +1,16 @@
+ .globl sem_down
+ .type sem_down, @function
+sem_down:
+ decl (%eax)
+ js __sem_down_slow
+ xorl %eax, %eax
+ ret
+ .size sem_down, .-sem_down
+
+ .globl sem_up
+ .type sem_up, @function
+sem_up:
+ incl (%eax)
+ jle __sem_up_slow
+ ret
+ .size sem_up, .-sem_up