| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
This is a residual of the $FreeBSD$ removal.
MFC After: 3 days (though I'll just run the command on the branches)
Sponsored by: Netflix
|
|
|
|
| |
Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
|
|
|
|
| |
Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Most architectures we support (except for riscv64) have instructions
to compute these functions very quickly. Replace old code with the
ffs and clz builtin functions, allowing clang to generate good code
for all architectures.
As a consequence, toss out arm and i386 ffs() implementations.
Sponsored by: FreeBSD Foundation
Approved by: mhorne
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D40730
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bde reports (in a reply to r351700 commit mail):
This uses scasb, which was last optimal on the 8086, or perhaps the
original i386. On freefall, it is several times slower than the
naive translation of the naive C code.
Reported by: bde
Reviewed by: kib, markj
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D21785
Notes:
svn path=/head/; revision=352689
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The change resembles what was done in r334537 for kernel routines.
While here take care of i386 variants. Note that primitives remain
suboptimal.
Reviewed by: kib (previous version)
Approved by: re (gjb)
Differential Revision: https://reviews.freebsd.org/D17167
Notes:
svn path=/head/; revision=338713
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Remove .c files which duplicate entries in MISRCS.
- Use the same, less merge conflict prone style in all cases.
- Use MDSRCS for mips (.c and .S files both ended up in SRCS).
- Remove pointless sparc64 Makefile.inc.
- Remove uninformative foreign VCS ID entries.
Reviewed by: emaste, imp, jhb
MFC after: 1 week
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D9841
Notes:
svn path=/head/; revision=314556
|
|
|
|
|
|
|
|
|
|
|
|
| |
Renumber cluase 4 to 3, per what everybody else did when BSD granted
them permission to remove clause 3. My insistance on keeping the same
numbering for legal reasons is too pedantic, so give up on that point.
Submitted by: Jan Schaumann <jschauma@stevens.edu>
Pull Request: https://github.com/freebsd/freebsd/pull/96
Notes:
svn path=/head/; revision=314436
|
|
|
|
|
|
|
|
|
| |
get rid of the __CONCAT and CNAME macros.
Reviewed by: bde, kib
Notes:
svn path=/head/; revision=258451
|
|
|
|
|
|
|
| |
Submitted by: Christoph Mallon <christoph.mallon@gmx.de> (via private mail)
Notes:
svn path=/head/; revision=249582
|
|
|
|
|
|
|
|
|
|
|
| |
This allows people to still write statically linked applications that
call strchr() or strrchr() and have a local variable or function called
index.
Discussed with: bde@
Notes:
svn path=/head/; revision=229571
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As I looked through the C library, I noticed the FreeBSD MIPS port has a
hand-written version of index(). This is nice, if it weren't for the
fact that most applications call strchr() instead.
Also, on the other architectures index() and strchr() are identical,
meaning we have two identical pieces of code in the C library and
statically linked applications.
Solve this by naming the actual file strchr.[cS] and let it use
__strong_reference()/STRONG_ALIAS() to provide the index() routine. Do
the same for rindex()/strrchr().
This seems to make the C libraries and static binaries slightly smaller,
but this reduction in size seems negligible.
Notes:
svn path=/head/; revision=229368
|
|
|
|
|
|
|
|
|
| |
made the neccessary provisions.
Reported by: arundel
Notes:
svn path=/head/; revision=218303
|
|
|
|
| |
Notes:
svn path=/head/; revision=217106
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On anything modern, the C version, which processes a word at a time, is much
faster. The Intel optimization manual explicitly warns against using REP
prefixes with SCAS or CMPS, which is exactly what the assembler version
does.
A simple test on a Phenom II showed the C version, compiled with -O2, to be
about twice as fast determining the length of 100000 strings between 0 and
255 bytes long.
MFC after: 2 weeks
Notes:
svn path=/head/; revision=213326
|
|
|
|
|
|
|
| |
is mostly harmless, but it does upset some of valgrind's functionality.
Notes:
svn path=/head/; revision=184548
|
|
|
|
|
|
|
|
|
| |
clause.
# If I've done so improperly on a file, please let me know.
Notes:
svn path=/head/; revision=165903
|
|
|
|
|
|
|
| |
Reviewed by: bde
Notes:
svn path=/head/; revision=145383
|
|
|
|
| |
Notes:
svn path=/head/; revision=113103
|
|
|
|
| |
Notes:
svn path=/head/; revision=112232
|
|
|
|
|
|
|
| |
are at the top of loops.
Notes:
svn path=/head/; revision=112132
|
|
|
|
| |
Notes:
svn path=/head/; revision=112129
|
|
|
|
|
|
|
| |
better than the code generated by gcc in many cases.
Notes:
svn path=/head/; revision=112059
|
|
|
|
|
|
|
| |
especially in troff files.
Notes:
svn path=/head/; revision=108533
|
|
|
|
|
|
|
|
| |
Obtained from: NetBSD
MFC after: 1 week
Notes:
svn path=/head/; revision=105149
|
|
|
|
|
|
|
| |
Spotted by: bde
Notes:
svn path=/head/; revision=98910
|
|
|
|
|
|
|
|
|
|
|
| |
re-read from the stack mid copy. This may help mitigate the recent
Apache buffer overrun and future overruns of the sort.
Reviewed by: jdp
MFC after: 2 days
Notes:
svn path=/head/; revision=98899
|
|
|
|
|
|
|
|
| |
Spotted and suggested by: des
MFC after: 3 weeks
Notes:
svn path=/head/; revision=97748
|
|
|
|
| |
Notes:
svn path=/head/; revision=93000
|
|
|
|
| |
Notes:
svn path=/head/; revision=91999
|
|
|
|
|
|
|
|
|
| |
with <machine/asm.h>.
Reviewed by: bde
Notes:
svn path=/head/; revision=85437
|
|
|
|
| |
Notes:
svn path=/head/; revision=81586
|
|
|
|
| |
Notes:
svn path=/head/; revision=50476
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The names of m-d variants are now added (manually) to MDSRCS instead
of to SRCS, and the names of all machine-independent (m-i) variants
that can reasonably be replaced by an m-d variant are now added
(manually) to MISRCS instead of to SRCS, so that a simple substitution
can be used to discard the unused m-i variants. MISRCS is potentially
all m-i sources, but the substitution is too simple to be fast, so
MISRCS should be kept reasonably small.
libc/Makefile.inc:
Do the substitution.
libc/i386/string/Makefile.inc:
Add to MDSRCS instead of to SRCS. Add the names of all sources in this
directory, but no others.
libc/string/Makefile.inc
Add to MISRCS instead of to SRCS. Add the names of all sources in this
directory. Don't use (broken) explicit rules for special cases.
Notes:
svn path=/head/; revision=30481
|
|
|
|
| |
Notes:
svn path=/head/; revision=27369
|
|\
| |
| |
| |
| |
| |
| | |
which included commits to RCS files with non-trunk default branches.
Notes:
svn path=/head/; revision=27181
|
| |
| |
| |
| |
| |
| |
| |
| | |
libc/db, libc/gen/crypt.* and libtelnet. All affected files except 3
unimportant ones have already left the vendor branch.
Notes:
svn path=/vendor/CSRG/dist/; revision=27180
|
|
|
|
| |
Notes:
svn path=/vendor/CSRG/dist/; revision=23658
|
|
|
|
|
|
|
|
|
|
| |
the (buggy) support for alternative entry points. ALTENTRY() was only
used for memmove(). Optimizing for space was particularly silly because
memcpy() is rarely used (gcc normally inlines it).
Obtained from: NetBSD
Notes:
svn path=/head/; revision=25045
|
|
|
|
|
|
|
|
|
|
|
| |
the (buggy) support for alternative entry points. ALTENTRY() was only
used for memmove(). Optimizing for space was particularly silly because
memcpy() is rarely used (gcc normally inlines it).
Obtained from: NetBSD
Notes:
svn path=/head/; revision=25044
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- use a slightly less bogus copyright. This file was never contributed
to Berkeley. It still claims to be copright by the Regents.
- use <machine/asm.h> instead of "DEFS.h".
- use RCSID($Id$) instead of explicit assembly code and messy ifdefs.
The rcsid won't be put into the object file until we make RCSID()
non-null. NetBSD uses a LIBC_SCCS ifdef here. We used a LIBC_RCS
instead, but I want RCSID() to be controlled directly by LIBC_RCS
(actually by LIB_RCS). This is the only difference with the NetBSD
version.
- added ifdefs to support generation of memcpy() and memmove(). The
other changes are "while I'm here" to get this.
- improved style of the copy backwards case.
Notes:
svn path=/head/; revision=25043
|
|
|
|
| |
Notes:
svn path=/head/; revision=22993
|
|
|
|
|
|
|
|
|
|
|
| |
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.
Notes:
svn path=/head/; revision=21673
|
|
|
|
|
|
|
| |
which included commits to RCS files with non-trunk default branches.
Notes:
svn path=/head/; revision=13123
|
|
|
|
|
|
|
|
|
| |
is really necessary. Going backwards on a P6 is much slower than forwards
and it's a little slower on a P5. Also moved the count mask and 'std'
down a few lines - it's a couple percent faster this way on a P5.
Notes:
svn path=/head/; revision=13064
|
|
|
|
|
|
|
|
|
|
|
| |
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.
Notes:
svn path=/head/; revision=5790
|
|
|
|
| |
Notes:
svn path=/head/; revision=5780
|
|
|
|
| |
Notes:
svn path=/head/; revision=5243
|
|
|
|
|
|
|
|
|
| |
pointer if len is 0. I should have looked at the revision history - I would
have found that Bruce already fixed the bug with len=0 over a month ago.
Whoever said that the bug was in 2.0 was wrong.
Notes:
svn path=/head/; revision=4811
|
|
|
|
| |
Notes:
svn path=/head/; revision=4809
|