<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/lib/libcompiler_rt, branch release/10.3.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=release%2F10.3.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=release%2F10.3.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2013-08-31T08:50:45Z</updated>
<entry>
<title>Unconditionally compile the __sync_* atomics support functions into compiler-rt</title>
<updated>2013-08-31T08:50:45Z</updated>
<author>
<name>David Chisnall</name>
<email>theraven@FreeBSD.org</email>
</author>
<published>2013-08-31T08:50:45Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=e1c0c6422a34f4159b9a9b1cef9c75f3aa8541a4'/>
<id>urn:sha1:e1c0c6422a34f4159b9a9b1cef9c75f3aa8541a4</id>
<content type='text'>
for ARM.
This is quite ugly, because it has to work around a clang bug that does not
allow built-in functions to be defined, even when they're ones that are
expected to be built as part of a library.

Reviewed by:	ed
</content>
</entry>
<entry>
<title>Build __clear_cache on ARM with clang now it supports it.</title>
<updated>2013-06-15T12:16:27Z</updated>
<author>
<name>Andrew Turner</name>
<email>andrew@FreeBSD.org</email>
</author>
<published>2013-06-15T12:16:27Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=8b02079f3689e5112eea231d552c46cef89a3f55'/>
<id>urn:sha1:8b02079f3689e5112eea231d552c46cef89a3f55</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Let ARM use the custom tailored atomic intrinsics.</title>
<updated>2013-06-15T09:04:10Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2013-06-15T09:04:10Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=2d5add2ae6d5166fa08641ed9d66232da19e4763'/>
<id>urn:sha1:2d5add2ae6d5166fa08641ed9d66232da19e4763</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use improved __sync_*() intrinsics for MIPS in userspace as well.</title>
<updated>2013-06-08T13:22:53Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2013-06-08T13:22:53Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=e737464f590a23aad6077fccd341ac21182fbe7e'/>
<id>urn:sha1:e737464f590a23aad6077fccd341ac21182fbe7e</id>
<content type='text'>
r251524 introduced custom tailored versions for MIPS of these functions
for kernel-space code. We can just reuse them in userspace as well.
</content>
</entry>
<entry>
<title>Add __sync_synchronize().</title>
<updated>2013-05-30T06:20:50Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2013-05-30T06:20:50Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=2493d5e6cba8f97bf3536531d483452c30429949'/>
<id>urn:sha1:2493d5e6cba8f97bf3536531d483452c30429949</id>
<content type='text'>
This function can easily be implemented on top of the mb() macro
provided by &lt;machine/atomic.h&gt;.
</content>
</entry>
<entry>
<title>Use #ifdef instead of #if defined.</title>
<updated>2013-05-30T06:20:23Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2013-05-30T06:20:23Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=54f12c0f5e6eac3179c60dc3949cab1c1696b706'/>
<id>urn:sha1:54f12c0f5e6eac3179c60dc3949cab1c1696b706</id>
<content type='text'>
This makes these tests a bit more consistent with the tests done at the
bottom of the file.
</content>
</entry>
<entry>
<title>Unbreak &lt;stdatomic.h&gt; on ARM + Clang.</title>
<updated>2013-04-27T04:56:02Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2013-04-27T04:56:02Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=0315980bb88b04abea42c346f1af558b89d1e29d'/>
<id>urn:sha1:0315980bb88b04abea42c346f1af558b89d1e29d</id>
<content type='text'>
Clang only supports atomic operations for ARMv6. For non-ARMv6, we still
need to emit these functions.

Clang's prototype for these functions slightly differs, as it is truly
based on GCC's documentation. It requires the use of signed types, but
also requires varargs. Still, we are not allowed to simply implement
this function directly. Cleverly work around this by implementing it
under a different name and using __strong_reference().
</content>
</entry>
<entry>
<title>Enable libcompiler-rt on MIPS.</title>
<updated>2013-04-20T14:44:28Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2013-04-20T14:44:28Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=108b6de211e5c5dec2fa511994b0ebc00b7c0949'/>
<id>urn:sha1:108b6de211e5c5dec2fa511994b0ebc00b7c0949</id>
<content type='text'>
Originally we disabled libcompiler-rt on MIPS and SPARC64, because of an
issue where __clzdi2 and __ctzdi2 would cause endless recursion. This
bug has been fixed in r230021 already, but for some reason we only
switched to libcompiler-rt on SPARC64 -- not MIPS.

This means we can finally use &lt;stdatomic.h&gt; on all our architectures.
</content>
</entry>
<entry>
<title>Add the __aeabi_mem* functions to compiler-rt as clang uses them.</title>
<updated>2013-02-06T00:01:28Z</updated>
<author>
<name>Andrew Turner</name>
<email>andrew@FreeBSD.org</email>
</author>
<published>2013-02-06T00:01:28Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=d74bcf9d9f2cfc2f133ef189a7014aafcd5899e2'/>
<id>urn:sha1:d74bcf9d9f2cfc2f133ef189a7014aafcd5899e2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use the compiler-rt version __{u,}divsi3 and __{u,}modsi3 on ARM EABI</title>
<updated>2013-01-19T04:11:45Z</updated>
<author>
<name>Andrew Turner</name>
<email>andrew@FreeBSD.org</email>
</author>
<published>2013-01-19T04:11:45Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=bb41cbb27cf6bbfb2a749cc3b7e582d671504651'/>
<id>urn:sha1:bb41cbb27cf6bbfb2a749cc3b7e582d671504651</id>
<content type='text'>
</content>
</entry>
</feed>
