History log of /freebsd/sys/i386/include/atomic.h (Results 251 – 275 of 723)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 26ab2d1d 27-Dec-2006 Bruce Evans <bde@FreeBSD.org>

Avoid an instruction in atomic_cmpset_{int_long)() in most cases.
These functions are used a lot for mutexes, so this reduces the text
size of an average kernel by about 0.75%. This wasn't intended

Avoid an instruction in atomic_cmpset_{int_long)() in most cases.
These functions are used a lot for mutexes, so this reduces the text
size of an average kernel by about 0.75%. This wasn't intended to
be a significant optimization, but it somehow increased the maximum
number of packets per second that can be transmitted by my bge hardware
from 320000 to 460000 (this benchmark is CPU-bound and remarkably
sensitive to changes in the text section).

Details: we would prefer to leave the result of the cmpxchg in %al,
but cannot tell gcc that it is there, so we have to convert it to an
integer register. We converted to %al, then to %[re]ax, but the
latter step is usually wasted since gcc usually only wants the condition
code and can recover it from %al just as easily as from %[re]ax. Let
gcc promote %al in the few cases where this is needed.

Nearby style fixes;
- let gcc manage the load of `res', and don't abuse `res' for a copy of `exp'
- don't echo `res's name in comments
- consistently spell the condition code as 'e' after comparison for equality
- don't hard-code %al anywhere except in constraints
- for the version that doesn't use cmpxchg, there is no requirement to use
%al anywhere, so don't hard-code it in the constraints either.

Style non-fix:
- for the versions that use cmpxchg, keep using "a" (was %[re]ax, now %al)
for the main output operand, although this is not required. The input
and output operands that use the "a" constraint are now decoupled, and
this makes things clearer except for the reason that the output register
is hard-coded. It is now just a hack to tell gcc that the input "a" has
been clobbered without increasing the number of operands.

show more ...


Revision tags: vendor/resolver/9.3.4, vendor/resolver/9.3.3, vendor/ath/0.9.20.3, vendor/bind9/9.3.3, vendor/pppd/2.3.11, vendor/openssh/4.5p1, vendor/bind9/9.3.2p2, vendor/resolver/9.3.3RC2, vendor/tzdata/tzdata2006n, vendor/openssl/0.9.8-20060929, vendor/openssl/0.9.8d, vendor/openssh/4.4p1, vendor/openbsm/1.0-ALPHA-12, vendor/openbsm/1.0-ALPHA-11, vendor/bind9/9.3.2p1, vendor/tcpdump/3.9.4, vendor/libpcap/0.9.4, vendor/openbsm/1.0-ALPHA-10, vendor/openbsm/1.0-ALPHA9-kwikfix_backout, vendor/NetBSD/lukemftpd/20060831, vendor/openbsm/1.0-ALPHA9-kwikfix, vendor/gcc/3.4.6-20060825-SVN116475, vendor/openbsm/1.0-ALPHA-9, vendor/gdb/6.1.1, vendor/less/v394, vendor/sendmail/8.13.8, vendor/ipfilter/4.1.13, vendor/ipfilter-sys/4-1-13, vendor/openssl/0.9.8b, vendor/libuwx/BETA10, vendor/openbsm/1.0-ALPHA-7, vendor/OpenBSD/cvs_20060501, vendor/file/4.17a, vendor/file/4.17, vendor/sendmail/8.13.7, vendor/binutils/2.15.NOTHING, vendor/ath/0.9.17.2, vendor/openbsm/1.0-ALPHA-6, release/5.5.0_cvs, release/5.5.0, vendor/netcat/3.9, vendor/resolver/9.3.2, vendor/tzdata/tzdata2006g, release/6.1.0_cvs, release/6.1.0
# 6f0f8cca 28-Mar-2006 Dag-Erling Smørgrav <des@FreeBSD.org>

Use wrapper macros for atomic pointer operations in order to perform the
correct casts. This should probably be merged to other architectures.


Revision tags: vendor/libreadline/5.1p1-p4, vendor/libreadline/5.1, vendor/zlib/1.2.3, vendor/openssh/4.3p1, vendor/sendmail/8.13.6, vendor/csup/20060313, vendor/hostapd/0.4.8, vendor/wpa_supplicant/0.4.8, vendor/openbsm/1.0-ALPHA-5, vendor/csup/20060303, vendor/csup/20060302, vendor/bsnmp/1.12, vendor/tcsh/6.14, vendor/openbsm/1.0-ALPHA-4, vendor/ath/0.9.16.16, vendor/openbsm/1.0-ALPHA-3, vendor/openbsm/1.0-ALPHA-2, vendor/openbsm/1.0-ALPHA-1, vendor/bind9/9.3.2-dougb-p1, vendor/ipfilter/4.1.10, vendor/ipfilter-sys/4-1-10, vendor/bind9/9.3.2, vendor/tzdata/tzdata2005r, vendor/tzdata/tzdata2005q, vendor/nve/1.0.0310, release/6.0.0_cvs, release/6.0.0, vendor/acpica/20051021, vendor/acpica/20041119sysinc, vendor/wpa_supplicant/0.3-latest, vendor/groff/1.19.2, vendor/wpa_supplicant/0.3.9, vendor/bsnmp/1.11, vendor/misc-GNU/cpio/2.6
# 3c2bc2bf 27-Sep-2005 John Baldwin <jhb@FreeBSD.org>

Add a new atomic_fetchadd() primitive that atomically adds a value to a
variable and returns the previous value of the variable.

Tested on: i386, alpha, sparc64, arm (cognet)
Reviewed by: arch@
Subm

Add a new atomic_fetchadd() primitive that atomically adds a value to a
variable and returns the previous value of the variable.

Tested on: i386, alpha, sparc64, arm (cognet)
Reviewed by: arch@
Submitted by: cognet (arm)
MFC after: 1 week

show more ...


# 80d52f16 15-Sep-2005 John Baldwin <jhb@FreeBSD.org>

Stop using the '+' constraint modifier with inline assembly. The '+'
constraint is actually only allowed for register operands. Instead, use
separate input and output memory constraints.

Education

Stop using the '+' constraint modifier with inline assembly. The '+'
constraint is actually only allowed for register operands. Instead, use
separate input and output memory constraints.

Education from: alc
Reviewed by: alc
Tested on: i386, alpha
MFC after: 1 week

show more ...


Revision tags: vendor/pf-sys/3.7.001, vendor/openssh/4.2p1, vendor/tzdata/tzdata2005m, vendor/tzdata/tzdata2005l, vendor/bind9/9.3.1p1
# 122eceef 15-Jul-2005 John Baldwin <jhb@FreeBSD.org>

Convert the atomic_ptr() operations over to operating on uintptr_t
variables rather than void * variables. This makes it easier and simpler
to get asm constraints and volatile keywords correct.

MFC

Convert the atomic_ptr() operations over to operating on uintptr_t
variables rather than void * variables. This makes it easier and simpler
to get asm constraints and volatile keywords correct.

MFC after: 3 days
Tested on: i386, alpha, sparc64
Compiled on: ia64, powerpc, amd64
Kernel toolchain busted on: arm

show more ...


Revision tags: vendor/tcpdump/3.9.1, vendor/libpcap/0.9.1
# 48281036 09-Jul-2005 John Baldwin <jhb@FreeBSD.org>

Some cleanups and tweaks to some of the atomic.h files in preparation for
further changes and fixes in the future:
- Use aliases via macros rather than duplicated inlines wherever possible.
- Move al

Some cleanups and tweaks to some of the atomic.h files in preparation for
further changes and fixes in the future:
- Use aliases via macros rather than duplicated inlines wherever possible.
- Move all the aliases to the bottom of these files and the inline
functions to the top.
- Add various comments.
- On alpha, drop atomic_{load_acq,store_rel}_{8,char,16,short}().
- On i386 and amd64, don't duplicate the extern declarations for functions
in the two non-inline cases (KLD_MODULE and compiler doesn't do inlines),
instead, consolidate those two cases.
- Some whitespace fixes.

Approved by: re (scottl)

show more ...


Revision tags: vendor/openpam/FIGWORT, vendor/sendmail/8.13.4_1, vendor/hostapd/0.3.9, vendor/sendmail/8.13.4, vendor/OpenBSD/dhclient_openbsd_3_7, vendor/hostapd/0.3.7, vendor/wpa_supplicant/0.3.8, vendor/openssh/4.1p1, vendor/openssh/4.0p1, vendor/gcc/3.4.4-20050518, vendor/tcpdump/3.9.1-096, vendor/libpcap/0.9.1-096, vendor/ngatm/1.2, vendor/bsnmp/1.10, vendor/misc-GNU/texinfo/4.8, vendor/NetBSD/lukemftp/20050516, vendor/tnftp/20050516, vendor/one-true-awk/20050424, vendor/bzip2/1.0.3, vendor/libregex/fedora-glibc-2.3.4-21, release/5.4.0_cvs, release/5.4.0, vendor/NetBSD/regress_resolv_20050504, vendor/pf/3.7, vendor/pf-sys/3.7, vendor/bsnmp/1.9, vendor/ipfilter/4.1.8, vendor/ipfilter-sys/4-1-8, vendor/zlib/1.2.2, vendor/bind9/9.3.1, vendor/nve/1.0.0301
# a5f50ef9 02-Mar-2005 Joerg Wunsch <joerg@FreeBSD.org>

netchild's mega-patch to isolate compiler dependencies into a central
place.

This moves the dependency on GCC's and other compiler's features into
the central sys/cdefs.h file, while the individual

netchild's mega-patch to isolate compiler dependencies into a central
place.

This moves the dependency on GCC's and other compiler's features into
the central sys/cdefs.h file, while the individual source files can
then refer to #ifdef __COMPILER_FEATURE_FOO where they by now used to
refer to #if __GNUC__ > 3.1415 && __BARC__ <= 42.

By now, GCC and ICC (the Intel compiler) have been actively tested on
IA32 platforms by netchild. Extension to other compilers is supposed
to be possible, of course.

Submitted by: netchild
Reviewed by: various developers on arch@, some time ago

show more ...


Revision tags: vendor/bsnmp/1.8, vendor/openssl/0.9.7e, vendor/heimdal/0.6.3, vendor/NetBSD/lukemftp/20050219, vendor/tnftp/20050219, vendor/sendmail/8.13.3, vendor/netcat/20050204, vendor/openpam/FETERITA, release/4.11.0_cvs, release/4.11.0, vendor/file/4.12, vendor/ath/0.9.14.9, vendor/tzdata/tzdata2004g, vendor/acpica/20041119
# 2d68e3fb 16-Nov-2004 John Baldwin <jhb@FreeBSD.org>

Initiate deorbit burn sequence for 80386 support in FreeBSD: Remove
80386 (I386_CPU) support from the kernel.


# 90baa95f 12-Nov-2004 John Baldwin <jhb@FreeBSD.org>

Spell _KERNEL correctly so that UP kernels are actually optimized again.

Submitted by: pjd


# bd2ed154 12-Nov-2004 John Baldwin <jhb@FreeBSD.org>

- Use the SMP style ops for atomic_load/store() in userland so that
libraries and binaries will work on both UP and SMP machines.
- Remove unnecessary gcc memory barrier from the UP atomic_store()

- Use the SMP style ops for atomic_load/store() in userland so that
libraries and binaries will work on both UP and SMP machines.
- Remove unnecessary gcc memory barrier from the UP atomic_store() op.

Submitted by: bde

show more ...


# 57621b8b 11-Nov-2004 John Baldwin <jhb@FreeBSD.org>

- Place the gcc memory barrier hint in the right place in the 80386 version
of atomic_store_rel().
- Use the 80386 versions of atomic_load_acq() and atomic_store_rel() that
do not use serializing

- Place the gcc memory barrier hint in the right place in the 80386 version
of atomic_store_rel().
- Use the 80386 versions of atomic_load_acq() and atomic_store_rel() that
do not use serializing instructions on all UP kernels since a UP machine
does need to synchronize with other CPUs. This trims lots of cycles from
spin locks on UP kernels among other things.

Benchmarked by: rwatson

show more ...


Revision tags: release/5.3.0_cvs, release/5.3.0, vendor/openssh/3.9p1, vendor/libreadline/5.0p1-p5, vendor/libreadline/5.0, vendor/tzdata/tzdata2004e, vendor/gcc/3.4.2-20041014, vendor/ngatm/1.1.1, vendor/libbegemot/1.1.1, vendor/bind9/9.3.0, vendor/bind9/9.3.0rc4, vendor/pf/3.5.001, vendor/NetBSD/lukemftpd/20040809, vendor/isc-dhcp/3.0.1, vendor/openssl/0.9.7-dev, vendor/pf-sys/3.5.004, vendor/pf-sys/3.5.003, vendor/misc-GNU/sort/20040812, vendor/gcc/3.4.2-20040728, vendor/ngatm/1.1, vendor/file/4.10, vendor/bsnmp/1.7, vendor/sendmail/8.13.1, vendor/ntp/4.2.0, vendor/pf-sys/3.5.002, vendor/tcsh/6.13, vendor/ngatm/1.0, vendor/amd/6.0.10p1, vendor/misc-GNU/grep/2.5.1, vendor/libregex/from-grep-2.5.1, vendor/misc-GNU/sort/5.2.1, vendor/acpica/20040527, vendor/zlib/1.2.1, vendor/isc-dhcp/3.0.1rc14, vendor/gdb/marcel_contrib, vendor/ipfilter/3.4.35, vendor/ipfilter-sys/3-4-35, vendor/tzcode/tzcode2004a, vendor/pf-sys/3.5.001, vendor/pf/3.5, vendor/pf-sys/3.5, vendor/altq/20040607, vendor/misc-GNU/cvs/1.11.17, release/4.10.0_cvs, release/4.10.0, vendor/acpica/20040514, vendor/libuwx/BETA7, vendor/pf-sys/3.4.003, vendor/NetBSD/lukemftp/20040426, vendor/tnftp/20040426, vendor/openssh/3.8.1p1, vendor/less/v381, vendor/misc-GNU/cvs/1.11.15, vendor/bsnmp/1.6, vendor/acpica/20040402, vendor/pf-sys/3.4.002, vendor/openssl/0.9.7d-p1, vendor/heimdal/0.6.1, vendor/com_err/0.6.1, vendor/tcpdump/3.8.3, vendor/libpcap/0.8.3, vendor/pf-sys/3.4.001, vendor/acpica/20040311, vendor/openssl/0.9.7d, vendor/openssl/0.9.7c-patch1
# a122cca9 12-Mar-2004 Tom Rhodes <trhodes@FreeBSD.org>

These are changes to allow to use the Intel C/C++ compiler (lang/icc)
to build the kernel. It doesn't affect the operation if gcc.

Most of the changes are just adding __INTEL_COMPILER to #ifdef's, a

These are changes to allow to use the Intel C/C++ compiler (lang/icc)
to build the kernel. It doesn't affect the operation if gcc.

Most of the changes are just adding __INTEL_COMPILER to #ifdef's, as
icc v8 may define __GNUC__ some parts may look strange but are
necessary.

Additional changes:
- in_cksum.[ch]:
* use a generic C version instead of the assembly version in the !gcc
case (ASM code breaks with the optimizations icc does)
-> no bad checksums with an icc compiled kernel
Help from: andre, grehan, das
Stolen from: alpha version via ppc version
The entire checksum code should IMHO be replaced with the DragonFly
version (because it isn't guaranteed future revisions of gcc will
include similar optimizations) as in:
---snip---
Revision Changes Path
1.12 +1 -0 src/sys/conf/files.i386
1.4 +142 -558 src/sys/i386/i386/in_cksum.c
1.5 +33 -69 src/sys/i386/include/in_cksum.h
1.5 +2 -0 src/sys/netinet/igmp.c
1.6 +0 -1 src/sys/netinet/in.h
1.6 +2 -0 src/sys/netinet/ip_icmp.c

1.4 +3 -4 src/contrib/ipfilter/ip_compat.h
1.3 +1 -2 src/sbin/natd/icmp.c
1.4 +0 -1 src/sbin/natd/natd.c
1.48 +1 -0 src/sys/conf/files
1.2 +0 -1 src/sys/conf/files.amd64
1.13 +0 -1 src/sys/conf/files.i386
1.5 +0 -1 src/sys/conf/files.pc98
1.7 +1 -1 src/sys/contrib/ipfilter/netinet/fil.c
1.10 +2 -3 src/sys/contrib/ipfilter/netinet/ip_compat.h
1.10 +1 -1 src/sys/contrib/ipfilter/netinet/ip_fil.c
1.7 +1 -1 src/sys/dev/netif/txp/if_txp.c
1.7 +1 -1 src/sys/net/ip_mroute/ip_mroute.c
1.7 +1 -2 src/sys/net/ipfw/ip_fw2.c
1.6 +1 -2 src/sys/netinet/igmp.c
1.4 +158 -116 src/sys/netinet/in_cksum.c
1.6 +1 -1 src/sys/netinet/ip_gre.c
1.7 +1 -2 src/sys/netinet/ip_icmp.c
1.10 +1 -1 src/sys/netinet/ip_input.c
1.10 +1 -2 src/sys/netinet/ip_output.c
1.13 +1 -2 src/sys/netinet/tcp_input.c
1.9 +1 -2 src/sys/netinet/tcp_output.c
1.10 +1 -1 src/sys/netinet/tcp_subr.c
1.10 +1 -1 src/sys/netinet/tcp_syncache.c
1.9 +1 -2 src/sys/netinet/udp_usrreq.c

1.5 +1 -2 src/sys/netinet6/ipsec.c
1.5 +1 -2 src/sys/netproto/ipsec/ipsec.c
1.5 +1 -1 src/sys/netproto/ipsec/ipsec_input.c
1.4 +1 -2 src/sys/netproto/ipsec/ipsec_output.c

and finally remove
sys/i386/i386 in_cksum.c
sys/i386/include in_cksum.h
---snip---
- endian.h:
* DTRT in C++ mode
- quad.h:
* we don't use gcc v1 anymore, remove support for it
Suggested by: bde (long ago)
- assym.h:
* avoid zero-length arrays (remove dependency on a gcc specific
feature)
This change changes the contents of the object file, but as it's
only used to generate some values for a header, and the generator
knows how to handle this, there's no impact in the gcc case.
Explained by: bde
Submitted by: Marius Strobl <marius@alchemy.franken.de>
- aicasm.c:
* minor change to teach it about the way icc spells "-nostdinc"
Not approved by: gibbs (no reply to my mail)
- bump __FreeBSD_version (lang/icc needs to know about the changes)

Incarnations of this patch survive gcc compiles since a loooong time,
I use it on my desktop. An icc compiled kernel works since Nov. 2003
(exceptions: snd_* if used as modules), it survives a build of the
entire ports collection with icc.

Parts of this commit contains suggestions or submissions from
Marius Strobl <marius@alchemy.franken.de>.

Reviewed by: -arch
Submitted by: netchild

show more ...


Revision tags: vendor/misc-GNU/grep/2.4.2, vendor/acpica/20040220, vendor/pf/3.4, vendor/openssh/3.8p1, vendor/pf-sys/3.4, vendor/SGI/vjs_20020502, vendor/libregex/from-grep-2.4.2, release/5.2.1_cvs, release/5.2.1, vendor/sendmail/8.12.11, vendor/libreadline/4.3p1-p5, vendor/openpam/EELGRASS, vendor/one-true-awk/20040207, vendor/one-true-awk/20030731, vendor/bsnmp/1.5a, vendor/gdtoa/20040118, release/5.2.0_cvs, release/5.2.0, vendor/alsa/1.9, vendor/openssh/3.7.1p2, vendor/acpica/20031203, vendor/ath/0.9.6.3, vendor/ath/0.9.6.1, vendor/bind/8.3.7
# 6d800f89 17-Nov-2003 Bruce Evans <bde@FreeBSD.org>

Fixed pedantic syntax errors. Many macros didn't permit a semicolon after
their invocation in the !KLD_MODULE case, but a semicolon is provided after
all invocations and is required in the KLD_MODUL

Fixed pedantic syntax errors. Many macros didn't permit a semicolon after
their invocation in the !KLD_MODULE case, but a semicolon is provided after
all invocations and is required in the KLD_MODULE case.

show more ...


# ed9800b4 17-Nov-2003 Bruce Evans <bde@FreeBSD.org>

Avoid a warning for compiling with `gcc -Wbad-function cast'. (This
is the warning that points to the bug in `(char *)malloc(...)' where
malloc() is implicitly declared as returning int. We do simi

Avoid a warning for compiling with `gcc -Wbad-function cast'. (This
is the warning that points to the bug in `(char *)malloc(...)' where
malloc() is implicitly declared as returning int. We do similar things
here, but they work because u_int is the same as uintptr_t on i386's.)

show more ...


Revision tags: vendor/bsnmp/1.4, vendor/ngatm/0.91, vendor/gcc/3.3.3-20031106, vendor/NetBSD/lukemftp/20031103, vendor/tnftp/20031103, vendor/ath/0.9.5.17, vendor/ngatm/0.9, vendor/libuwx/BETA6, release/4.9.0_cvs, release/4.9.0, vendor/tzdata/tzdata2003d, vendor/heimdal/cvs-20030922, vendor/heimdal/0.6, vendor/libuwx/BETA5, vendor/openssl/0.9.7c, vendor/sendmail/8.12.10, vendor/sendmail/200309_parseaddr_patch, vendor/openssh/200309-xrealloc-patch, vendor/openssh/200309-buffer-patch, vendor/amd/6.0.9, vendor/isc-dhcp/3.0.1rc12, vendor/libreadline/4.3, vendor/misc-GNU/sort/2.1, vendor/gcc/3.3.1, vendor/acpica/20030619, vendor/ath/0.9.5.2, vendor/one-true-awk/20030729, vendor/openpam/DOGWOOD, vendor/gcc/3.3.1-20030711, vendor/NetBSD/lukemftp/20030630, vendor/tnftp/20030630, vendor/ath/0.9.4.0, vendor/misc-GNU/texinfo/4.6, vendor/bind/8.3.6, vendor/NetBSD/lukemftp/20030615, vendor/tnftp/20030615, release/5.1.0_cvs, release/5.1.0, vendor/openpam/DIGITALIS, vendor/acpica/20030228b, vendor/acpica/20030228a, vendor/libuwx/BETA4, vendor/openpam/DIANTHUS, vendor/misc-GNU/texinfo/4.5, vendor/groff/1.19, vendor/acpica/20030228, vendor/tzdata/tzdata2003a, vendor/openssh/3.6.1p1, vendor/alsa/1.8, vendor/alsa/1.51, vendor/alsa/1.39, release/4.8.0_cvs, release/4.8.0, vendor/sendmail/8.12.9, vendor/gdtoa/20030324, vendor/openssl/secfix-20030317, vendor/openssl/secfix-20030319, vendor/gdtoa/20030318, vendor/one-true-awk/20030314, vendor/gdtoa/20030305, vendor/sendmail/8.12.8, vendor/tcpdump/3.7.2, vendor/file/3.41, vendor/ext2fs/2.4.3-rh7.1, vendor/openssl/0.9.7a, vendor/file/3.40, vendor/ipfilter/3.4.31, vendor/ipfilter-sys/3-4-31, vendor/sendmail/8.12.7-protofix, vendor/gcc/3.2.2-20030205, vendor/sendmail/8.12.7, vendor/NetBSD/lukemftpd/20030122, vendor/openssl/0.9.7-stable-1, vendor/openssl/0.9.7, vendor/bind/8.3.4, vendor/misc-GNU/cvs/1.11.5, vendor/heimdal/0.5.1-patch, release/5.0.0_cvs, release/5.0.0, vendor/isc-dhcp/3.0.1rc11, vendor/isc-dhcp/3.0.1rc10, vendor/openpam/DAFFODIL, vendor/NetBSD/lukemftpd/20030105, vendor/one-true-awk/20021213, vendor/openpam/CYCLAMEN, vendor/one-true-awk/20021129, vendor/gcc/3.2.1, vendor/binutils/2.13.2_20021127, vendor/misc-GNU/cvs/1.11.2.1-20021201, vendor/acpica/20021118, vendor/heimdal/0.5.1, vendor/bind/8.3.3.patched, vendor/NetBSD/lukemftpd/1.2-beta2, vendor/ntp/4.1.1b, vendor/ntp/4.1.1a, vendor/openssh/3.5p1, vendor/tzdata/tzdata2002d
# 77e83412 14-Oct-2002 Jim Pirzyk <pirzyk@FreeBSD.org>

Add a knob to turn on and off the CMPXCHG instruction on > i386 IA32 systems.
This is most beneficial for vmware client os installs.

Reviewed by: jmallet, iedowse, tlambert2@mindspring.com
MFC After

Add a knob to turn on and off the CMPXCHG instruction on > i386 IA32 systems.
This is most beneficial for vmware client os installs.

Reviewed by: jmallet, iedowse, tlambert2@mindspring.com
MFC After: never, -STABLE does not currently use this instruction

show more ...


Revision tags: vendor/gdb/5.2.1, vendor/ncurses/5.2-20020907-ac-fix, vendor/binutils/2.13.20021011, vendor/groff/1.18.1, vendor/gcc/3.2-20021009, release/4.7.0_cvs, vendor/acpica/20021002, vendor/expat/1.95.5, vendor/heimdal/cvs-20020930, vendor/isc-dhcp/3.0.1rc9, vendor/gcc/3.2-20020916, vendor/heimdal/cvs-20020916, vendor/file/3.39, vendor/misc-GNU/cvs/1.11.2, vendor/gcc/3.2-20020901, vendor/binutils/2.12.20020720, vendor/heimdal/cvs-20020829, vendor/acpica/20020815, vendor/sendmail/8.12.6, vendor/ipfilter/3.4.29, vendor/ipfilter-sys/3-4-29, release/4.6.2_cvs, release/4.6.2, vendor/openssl/0.9.6g, vendor/openssl/0.9.6f, vendor/openssl/0.9.6e-asn1-patch, vendor/acpica/20020725, vendor/openssl/0.9.6e, vendor/openssl/0.9.6d, vendor/traceroute/1.4.a12, vendor/tcsh/6.12, vendor/misc-GNU/texinfo/4.2, vendor/smbfs/1.4.5, release/4.6.1, vendor/NetBSD/xlint/2002-07-19
# 4c5aee92 18-Jul-2002 Mark Murray <markm@FreeBSD.org>

Beautify. This has the side effect of improving portability and
making lint work cleaner.

Inspired to do this by: jhb


# 8306a37b 17-Jul-2002 Mark Murray <markm@FreeBSD.org>

Clean up the syntax WRT semicolons at the end of function-like-macros, and protect GCCisms from non-GNU compilers and lint.


Revision tags: vendor/acpica/20020611, vendor/binutils/2.12.20020622, vendor/NetBSD/d20020701, release/4.6.0, vendor/bind/8.3.3, vendor/openpam/CITRONELLA, vendor/acpica/20020404, vendor/openssh/3.4p1, vendor/gdb/anoncvs_gdb_5_2_branch_20020627, vendor/openssh/3.3p1, vendor/sendmail/8.12.5, vendor/openssh/3.3, vendor/NetBSD/head_20020621, vendor/libpcap/0.7.1, vendor/tcpdump/3.7.1, vendor/ncurses/5.2-20020615, vendor/NetBSD/lukemftp/1.6.BETA2, vendor/tnftp/1.6.BETA2, vendor/sendmail/8.12.4, vendor/misc-GNU/sort/2.0.21, vendor/ipfilter/3.4.28, vendor/ipfilter-sys/3-4-28, vendor/NetBSD/D20020605, vendor/gcc/3.1-20020509, vendor/openpam/CINQUEFOIL, vendor/ncurses/5.2-20020518, vendor/bind/8.3.2.t1b, vendor/openpam/CINNAMON, vendor/OpenBSD/cvs_20020426, vendor/ipfilter/3.4.27, vendor/ipfilter-sys/3-4-27, vendor/NetBSD/lukemftp/1.5.FIXES, vendor/tnftp/1.5.FIXES, vendor/ipfilter/3.4.26, vendor/ipfilter-sys/3-4-26, vendor/smbfs/1.4.4, vendor/sendmail/8.12.3-20020420, vendor/sendmail/8.12.3, vendor/OpenBSD/cvs_20020419, vendor/pam_modules/0.5, vendor/openpam/CINERARIA, vendor/binutils/2.12.20020410, vendor/openpam/CINCHONA, vendor/NetBSD/sort/20020406, vendor/tzdata/tzdata2002c, vendor/pam_modules/0.4, vendor/isc-dhcp/3.0.1rc8, vendor/misc-GNU/texinfo/4.1, vendor/NetBSD/v_2002_03_22, vendor/opie/2.4, vendor/OpenBSD/moduli5_1_3, vendor/OpenBSD/moduli_1_1, vendor/binutils/2.12.20020320, vendor/ipfilter/3.4.25, vendor/ipfilter-sys/3-4-25, vendor/openssh/3.1, vendor/perl5/5.006.01, vendor/one-true-awk/20020210, vendor/acpica/20020308, vendor/openpam/CENTAURY, vendor/NetBSD/lukemftpd/1.2-beta1, vendor/zlib/1.1.4, vendor/openpam/CELANDINE, vendor/NetBSD/xlint/2002-03-03
# 71acb247 28-Feb-2002 Bosko Milekic <bmilekic@FreeBSD.org>

Make MPLOCKED work again in asm files and stringify it explicitly
where necessary.

Reviewed by: jake


Revision tags: vendor/acpica/20020217, vendor/openpam/CANTALOUPE, vendor/openpam/CALIOPSIS, vendor/openpam/CALAMITE, vendor/binutils/2.12.20020221, vendor/heimdal/cvs-20020217, vendor/isc-dhcp/3.0.1rc6, vendor/one-true-awk/20020101, vendor/sendmail/8.12.2
# d2f22d70 11-Feb-2002 Bruce Evans <bde@FreeBSD.org>

Garbage-collect the "LOCORE" version of MPLOCKED.


Revision tags: release/4.5.0_cvs, release/4.4.0_cvs, vendor/bind/8.3.1, vendor/gcc/cvs-20020201-0820, vendor/bzip2/1.0.2, vendor/binutils/anoncvs_20020127, vendor/openssl/0.9.6c, vendor/top/3.5beta12, vendor/heimdal/0.3f-patch, vendor/ncurses/5.2-20020112a, vendor/less/v371, vendor/smbfs/1.4.3, vendor/smbfs/1.4.2
# e4e991e1 18-Dec-2001 John Baldwin <jhb@FreeBSD.org>

Allow the ATOMIC_ASM() macro to pass in the constraints on the V parameter
since the char versions need to use either ax, bx, cx, or dx.

Submitted by: Peter Jeremy (mostly)
Recommended by: bde


Revision tags: vendor/gcc/3.0.2, vendor/smbfs/1.4.1, vendor/acpica/20011120, vendor/lomac/2.2.0, vendor/lomac/2.0.0
# d9009094 12-Nov-2001 John Baldwin <jhb@FreeBSD.org>

Use newer constraints for atomic_cmpset().

Requested by: bde


# 20a2016a 12-Nov-2001 John Baldwin <jhb@FreeBSD.org>

Use newer constraints for inline assembly for an operand that is both an
input and an output by using the '+' modifier rather than listing the
operand in both the input and output sections.

Reviwed

Use newer constraints for inline assembly for an operand that is both an
input and an output by using the '+' modifier rather than listing the
operand in both the input and output sections.

Reviwed by: bde

show more ...


Revision tags: vendor/tzdata/tzdata2001d, vendor/misc-GNU/awk/3.1.0-fixed, vendor/misc-GNU/awk/3.1.0, vendor/binutils/2.11.20011031, vendor/acpica/20011018, vendor/one-true-awk/20001115, vendor/binutils/2.11.20010719, vendor/file/3.37
# 2a89a48f 08-Oct-2001 John Baldwin <jhb@FreeBSD.org>

Allow atomic ops to be somewhat safely used in userland. We always use
lock prefixes in the userland case so that the binaries will work on both
SMP and UP systems.


Revision tags: vendor/acpica/20010920, vendor/acpica/20010831, vendor/tcsh/6.11, vendor/amd/6.0.7, vendor/ntp/4.1.0, vendor/acpica/20010816, vendor/bind/8.2.5.string-patch, vendor/sendmail/8.11.6, vendor/misc-GNU/cvs/1.11.1p1, vendor/bind/8.2.4.hmac-md5-patch, vendor/sendmail/8.11.5, vendor/bind/8.2.4, vendor/file/3.36, vendor/ipfilter/3.4.20, vendor/ipfilter-sys/3-4-20, vendor/tcp_wrappers/7.6-2001-06-01, vendor/tcpdump/3.6.3, vendor/acpica/20010717, vendor/openssl/0.9.6b, vendor/NetBSD/lukemftp/1.5, vendor/tnftp/1.5, vendor/NetBSD/lukemftpd/1.1, vendor/groff/1.17.2, vendor/acpica/20010615, vendor/binutils/2.11.2, vendor/NetBSD/head_20010615, vendor/bzip2/1.0.1, vendor/heimdal/0.3f, vendor/acpica/20010518, vendor/sendmail/8.11.4, vendor/binutils/2.11.0, vendor/openssl/0.9.6a, vendor/ncurses/5.2-20010512, vendor/openssh/2.9, vendor/libpam/0.75, vendor/file/3.35, release/4.3.0_cvs, release/4.3.0, vendor/groff/1.17, vendor/libreadline/4.2, vendor/tzdata/tzdata2001b, vendor/tcpdump/3.6.2, vendor/libpcap/0.6.2, vendor/ee/1.4.1, vendor/file/3.34, vendor/gcc/2.95.3-with_sjlj_fix, vendor/gcc/2.95.3, vendor/opie/2.32.2001.03.04, vendor/tcsh/6.10-2001-01-28, vendor/sendmail/8.11.3, vendor/misc-GNU/bc/1.0.6, vendor/openssl/0.9.6-2001-02-10, vendor/bind/8.2.3, vendor/heimdal/0.3e
# d888fc4e 11-Feb-2001 Mark Murray <markm@FreeBSD.org>

RIP <machine/lock.h>.

Some things needed bits of <i386/include/lock.h> - cy.c now has its
own (only) copy of the COM_(UN)LOCK() macros, and IMASK_(UN)LOCK()
has been moved to <i386/include/apic.h> (

RIP <machine/lock.h>.

Some things needed bits of <i386/include/lock.h> - cy.c now has its
own (only) copy of the COM_(UN)LOCK() macros, and IMASK_(UN)LOCK()
has been moved to <i386/include/apic.h> (AKA <machine/apic.h>).
Reviewed by: jhb

show more ...


Revision tags: vendor/ipfilter/3.4.16, vendor/ipfilter-sys/v3-4-16, vendor/acpica/20010125, vendor/sendmail/8.11.2
# 324fffae 17-Jan-2001 John Baldwin <jhb@FreeBSD.org>

- Sort of lie and say that %eax is an output only and not an input for the
non-386 atomic_load_acq(). %eax is an input since its value is used in
the cmpxchg instruction, but we don't care what

- Sort of lie and say that %eax is an output only and not an input for the
non-386 atomic_load_acq(). %eax is an input since its value is used in
the cmpxchg instruction, but we don't care what value it is, so setting
it to a specific value is just wasteful. Thus, it is being used without
being initialized as the warning stated, but it is ok for it to be used
because its value isn't important. Thus, we are only sort of lying when
we say it is an output only operand.
- Add "cc" to the clobber list for atomic_load_acq() since the cmpxchgl
changes ZF.

show more ...


1...<<11121314151617181920>>...29