Date: Sat, 22 Feb 2003 22:34:21 -0800 (PST) From: Marcel Moolenaar <marcel@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/alpha/include atomic.h Message-ID: <200302230634.h1N6YLQL023151@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
marcel 2003/02/22 22:34:21 PST Modified files: sys/alpha/include atomic.h Log: Workaround for compiling LINT. Large kernels (like LINT) can have branch targets that are too far apart for the BRADDR relocation. This is caused by the branch prediction optimizationi in the atomic inlines here, because they jump across sections. The workaround is to suppress jumping to a different section when compiling LINT. To generate correct code in that case, the section directives are replaced by a branch and a label to deal with the fall-through case. Reasonably good C compilers will optimize this away anyway, so the end result isn't really that bad. Revision Changes Path 1.18 +32 -20 src/sys/alpha/include/atomic.h To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200302230634.h1N6YLQL023151>