summaryrefslogtreecommitdiffstats
path: root/lib/malloc/i386-alloca.s
diff options
context:
space:
mode:
Diffstat (limited to 'lib/malloc/i386-alloca.s')
-rw-r--r--lib/malloc/i386-alloca.s16
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/malloc/i386-alloca.s b/lib/malloc/i386-alloca.s
new file mode 100644
index 0000000..01b2cfe
--- /dev/null
+++ b/lib/malloc/i386-alloca.s
@@ -0,0 +1,16 @@
+ .file "alloca.s"
+ .text
+ .align 4
+ .def alloca; .val alloca; .scl 2; .type 044; .endef
+ .globl alloca
+alloca:
+ popl %edx
+ popl %eax
+ addl $3,%eax
+ andl $0xfffffffc,%eax
+ subl %eax,%esp
+ movl %esp,%eax
+ pushl %eax
+ pushl %edx
+ ret
+ .def alloca; .val .; .scl -1; .endef