summaryrefslogtreecommitdiffstats
path: root/lib/libc/arch/amd64/string/memset.S (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Add retguard macros for libc.mortimer2018-07-031-0/+2
| | | | ok deraadt
* clang doesn't propagate attributes like "asm labels" and "visibility(hidden)"guenther2017-11-291-1/+1
| | | | | | | | | to builtins like mem{set,cpy,move} and __stack_smash_handler. So, when building with clang, instead mark those as protected visibility to get rid of the PLT relocations. We can't take the address of them then, but that's ok: it's a build-time error not a run-time error. ok kettenis@
* Split the non-syscall ASM bits from SYS.h into DEFS.h and use that in theguenther2015-11-141-1/+1
| | | | | | non-syscall .S source ok millert@ miod@
* Add framework for resolving (pun intended) libc namespace issues, usingguenther2015-08-311-2/+2
| | | | | | | | | | | | wrapper .h files and asm labels to let internal calls resolve directly and not be overridable or use the PLT. Then, apply that framework to most of the functions in stdio.h, string.h, err.h, and wchar.h. Delete the should-have-been-hidden-all-along _v?(err|warn)[cx]? symbols while here. tests clean on i386, amd64, sparc64, powerpc, and mips64 naming feedback from kettenis@ and millert@ ok kettenis@
* Sprinkle END() in some straightforward *.S files that have ENTRY(). Theuebayasi2015-05-291-0/+1
| | | | resulting *.o have "FUNC" symbols with size set.
* restructure libc/string + libc/arch/*/string coperation regardingderaadt2014-11-301-0/+55
| | | | | | | | | | | | | | | | (potentially) MD versions (function dependent, not filename dependent) split out memcpy/memmove/bcopy and strchr/index/strrchr/rindex Bring back amd64 .S versions And the final touch: switch all architectures temporarily to MI memcpy.c, which contains syslog + abort for overlapping copies. A nice harsh undefined behaviour. We will clean the entire userland of the remaining issues in this catagory, then switch to the optimised memcpy which skips the memmove check. I tried to cut this change into pieces, but testing each sub-step on every architecture is too time consuming and mindnumbing. ok miod
* One of these optimized stubs creates some incredibly subtle damage,deraadt2014-11-201-54/+0
| | | | | causing as(1) to create a wrong nop-sled for text segment aligns. Revert, until it is found and fixed.
* Add amd64 assembler versions of some standard functions to libc. Thereyk2014-11-201-0/+54
code is already used in the kernel and the files are unmodified copies from src/sys/lib/libkern/arch/amd64/. Depending on the function, this gives us some speedup in userland. ok deraadt@, no objections from miod@