summaryrefslogtreecommitdiff
path: root/lib/libc/arch/amd64/sys/brk.S
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libc/arch/amd64/sys/brk.S')
-rw-r--r--lib/libc/arch/amd64/sys/brk.S22
1 files changed, 3 insertions, 19 deletions
diff --git a/lib/libc/arch/amd64/sys/brk.S b/lib/libc/arch/amd64/sys/brk.S
index c59f0036eb0..26fb2893b58 100644
--- a/lib/libc/arch/amd64/sys/brk.S
+++ b/lib/libc/arch/amd64/sys/brk.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: brk.S,v 1.7 2015/09/05 06:22:47 guenther Exp $ */
+/* $OpenBSD: brk.S,v 1.8 2016/05/07 19:05:21 guenther Exp $ */
/* $NetBSD: brk.S,v 1.2 2002/06/03 18:30:33 fvdl Exp $ */
/*-
@@ -51,22 +51,6 @@ __minbrk:
.weak brk
ENTRY(brk)
-#ifdef __PIC__
- movq PIC_GOT(__minbrk),%rdx
- cmpq %rdi,(%rdx)
- jb 1f
- movq (%rdx),%rdi
-1:
- SYSTRAP(break)
- jc 1f
- movq PIC_GOT(__curbrk),%rdx # set up GOT addressing
- movq %rdi,(%rdx)
- xorl %eax,%eax
- ret
-1:
- movq PIC_GOT(CERROR),%rdx
- jmp *%rdx
-#else
cmpq %rdi,__minbrk(%rip)
jb 1f
movq __minbrk(%rip),%rdi
@@ -77,6 +61,6 @@ ENTRY(brk)
xorl %eax,%eax
ret
1:
- jmp CERROR
-#endif
+ SET_ERRNO
+ ret
END(brk)