summaryrefslogtreecommitdiffstats
path: root/lib/libc/amd64/sys/brk.S
Commit message (Collapse)AuthorAgeFilesLines
* libc/amd64: Do not export .cerror.jilles2012-09-061-5/+0
| | | | | | | | | | | | | | | | | For some reason, libc exports the symbol .cerror (HIDENAME(cerror)), albeit in the FBSDprivate_1.0 version. It looks like there is no reason for this since it is not used from other libraries. Given that it cannot be accessed from C and its strange calling convention, it is rather unlikely that other things rely on it. Perhaps it is from a time when symbols could not be hidden. Most of the amd64 assembler code jumps to .cerror using the GOT. It can jump to it directly now, as in non-PIC mode. There are also some minor size optimizations to instructions but they yield virtually no benefit in the size of libc.so.7 due to padding. Reviewed by: kib
* Add section .note.GNU-stack for assembly files used by 386 and amd64.kib2011-01-071-0/+2
|
* We've been lax about matching END() macros in asm code for some time. Thispeter2008-11-021-0/+2
| | | | | | | is used to set the ELF size attribute for functions. It isn't normally critical but some things can make use of it (gdb for stack traces). Valgrind needs it so I'm adding it in. The problem is present on all branches and on both i386 and amd64.
* Per Regents of the University of Calfornia letter, remove advertisingimp2007-01-091-4/+0
| | | | | | clause. # If I've done so improperly on a file, please let me know.
* Fix brk(3). The stack was unbalanced when we jumped to cerror. Oops!peter2004-10-271-0/+1
| | | | | | This causes nasty things like SEGV or a cpu spin when we return. Submitted by: "James R. Van Artsalen" <james@jrv.org>
* Repair PIC mode. It seems I was a bit too excited about thepeter2003-05-241-4/+23
| | | | implications of native PC relative addressing.
* Update for AMD64 after repocopy from i386/sys/*. This means:peter2003-04-301-33/+10
| | | | | | | - strip out the nasty PIC_PROLOGUE/EPILOGUE stuff, since we dont have to lose a register in PIC mode anymore (we use %rip-relative addressing). - update for C register argument passing conventions. - convert 32 bit to 64 bit register sizes etc.
* Restore CSRG ID's lost in January 1995.obrien2002-03-231-4/+5
|
* Use 'mov' instead of 'lea' for setting the syscall number in %eax as thatjhb2001-11-271-2/+2
| | | | | | is clearer about what we are actually doing. Requested by: bde
* Removed duplicate VCS ID tags, as per style(9).ru2001-08-131-2/+0
|
* $Id$ -> $FreeBSD$peter1999-08-281-2/+2
|
* Revert $FreeBSD$ to $Id$peter1997-02-221-2/+2
|
* Make the long-awaited change from $Id$ to $FreeBSD$jkh1997-01-141-2/+2
| | | | | | | | This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long. Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise.
* Fixed comparisons so that preposterously large (>= 0x80000000) brk valuesbde1996-06-251-5/+5
| | | | | | | | | | aren't silently converted to minbrk. This stops malloc(INT_MAX) from dumping core. Small values are still silently converted. They should be an error. sbrk() doesn't do any range checking or conversions or overflow checking. Moved PIC_EPILOGUE invocation to a more natural place where it obviously doesn't interfere with the comparison.
* Add support to enable libc to be compiled in ELF format. (#ifdef __ELF__)peter1996-05-051-17/+16
| | | | | | | | | | | In a nutshell, this macroizes the local/global symbol scoping rules that are different in a.out and ELF. It also makes the i386 assembler stubs conform to i386 PIC calling conventions - the a.out ld.so didn't object, but the ELF one needs it as it implements PIC jumps via PLT's as well as calls. The a.out rtld only worked because it was accidently snooping the grandparent calling function's return address off the stack.. This also affects the libc_r code a little, because of cpp macro nesting.
* First round of changes to clean up the RCSID mess in libc:dg1995-01-231-4/+5
| | | | | | | | 1) Changed LIB_SCCS and SYSLIB_SCCS to LIB_RCS and SYSLIB_RCS. 2) Changed sccsid[] variables to rcsid[] 3) Moved all RCSID strings into .text 4) Converted all SCCSID's to RCS $Id$'s 5) Added missing $Id$'s after copyright.
* First crack at making libc work with the new make macros. It compiles onwollman1994-08-051-0/+91
my machine, and a simple static (genassym) and shared (sysctl) executable both work. Still to be done: RPCand YP merge.
OpenPOWER on IntegriCloud