<feed xmlns='http://www.w3.org/2005/Atom'>
<title>wireguard-openbsd/gnu/llvm/lib/Target/PowerPC/PPCISelLowering.cpp, branch jd/queueboosts</title>
<subtitle>WireGuard implementation for the OpenBSD kernel</subtitle>
<id>https://git.zx2c4.com/wireguard-openbsd/atom/gnu/llvm/lib/Target/PowerPC/PPCISelLowering.cpp?h=jd%2Fqueueboosts</id>
<link rel='self' href='https://git.zx2c4.com/wireguard-openbsd/atom/gnu/llvm/lib/Target/PowerPC/PPCISelLowering.cpp?h=jd%2Fqueueboosts'/>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/'/>
<updated>2020-06-04T22:33:17Z</updated>
<entry>
<title>Set max atomic size for PowerPC.</title>
<updated>2020-06-04T22:33:17Z</updated>
<author>
<name>gkoehler</name>
<email>gkoehler@openbsd.org</email>
</author>
<published>2020-06-04T22:33:17Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=21ddc59af3b7bf4d9a666653828d7e9ee41cba12'/>
<id>urn:sha1:21ddc59af3b7bf4d9a666653828d7e9ee41cba12</id>
<content type='text'>
32-bit PowerPC doesn't have instructions for lock-free atomic ops on
8-byte values, and needs libcalls like __atomic_fetch_add_8().  In
code like "_Atomic long long a; a++;", clang doesn't emit a libcall.
This was causing linker errors on symbols like __sync_fetch_and_add_8.

Now that LLVM knows the max atomic size, its AtomicExpandPass changes
these 8-byte ops into libcalls.

ok mortimer@
</content>
</entry>
<entry>
<title>Merge LLVM 8.0.0 release.</title>
<updated>2019-06-23T22:05:08Z</updated>
<author>
<name>patrick</name>
<email>patrick@openbsd.org</email>
</author>
<published>2019-06-23T22:05:08Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=f27a781c9811da94fe68b2cf34237c2a61b48c96'/>
<id>urn:sha1:f27a781c9811da94fe68b2cf34237c2a61b48c96</id>
<content type='text'>
Prepared with help from jsg@ and mortimer@
Tested on amd64 by bcallah@, krw@, naddy@
Tested on arm64 by patrick@
Tested on macppc by kettenis@
Tested on octeon by visa@
Tested on sparc64 by claudio@
</content>
</entry>
<entry>
<title>When generating code for OpenBSD/powerpc, avoid unaligned floating-point</title>
<updated>2019-02-18T19:42:23Z</updated>
<author>
<name>kettenis</name>
<email>kettenis@openbsd.org</email>
</author>
<published>2019-02-18T19:42:23Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=82bbcfe67c2becd0a089347666d2effb60208ad4'/>
<id>urn:sha1:82bbcfe67c2becd0a089347666d2effb60208ad4</id>
<content type='text'>
load and store instructions.  The vast majority of PowerPC CPUs that
OpenBSD runs on don't implement those and will generate an alignment
exceptions.  While we do emulate lfd and stfd (to work around GCC bugs),
we don't emulate lfs and stfs.  It is way more efficient to have the
compiler generate code that only uses aligned load and store instructions.

Based on a diff from Georg Koehler.

ok patrick@, visa@
</content>
</entry>
<entry>
<title>Import LLVM 7.0.1 release including clang, lld and lldb.</title>
<updated>2019-01-27T16:42:12Z</updated>
<author>
<name>patrick</name>
<email>patrick@openbsd.org</email>
</author>
<published>2019-01-27T16:42:12Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=b773203fb58f3ef282fb69c832d8710cab5bc82d'/>
<id>urn:sha1:b773203fb58f3ef282fb69c832d8710cab5bc82d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Import LLVM 6.0.1 release including clang, lld and lldb.</title>
<updated>2018-04-06T14:26:03Z</updated>
<author>
<name>patrick</name>
<email>patrick@openbsd.org</email>
</author>
<published>2018-04-06T14:26:03Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=bdabc2f19ffb9e20600dad6e8a300842a7bda50e'/>
<id>urn:sha1:bdabc2f19ffb9e20600dad6e8a300842a7bda50e</id>
<content type='text'>
"where is the kaboom?" deraadt@
</content>
</entry>
<entry>
<title>Import LLVM 5.0.0 release including clang, lld and lldb.</title>
<updated>2017-10-04T20:27:34Z</updated>
<author>
<name>patrick</name>
<email>patrick@openbsd.org</email>
</author>
<published>2017-10-04T20:27:34Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=31eb748944903b7f4f38afda9851951ca9dfc1ae'/>
<id>urn:sha1:31eb748944903b7f4f38afda9851951ca9dfc1ae</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Import LLVM 4.0.0 rc1 including clang and lld to help the current</title>
<updated>2017-01-24T08:32:59Z</updated>
<author>
<name>patrick</name>
<email>patrick@openbsd.org</email>
</author>
<published>2017-01-24T08:32:59Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=53d771aafdbe5b919f264f53cba3788e2c4cffd2'/>
<id>urn:sha1:53d771aafdbe5b919f264f53cba3788e2c4cffd2</id>
<content type='text'>
development effort on OpenBSD/arm64.
</content>
</entry>
<entry>
<title>Import LLVM 3.9.1 including clang and lld.</title>
<updated>2017-01-14T19:55:43Z</updated>
<author>
<name>patrick</name>
<email>patrick@openbsd.org</email>
</author>
<published>2017-01-14T19:55:43Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=bd3306aecb3a15e8967143b8cdbbccf2b1b19b74'/>
<id>urn:sha1:bd3306aecb3a15e8967143b8cdbbccf2b1b19b74</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use the space freed up by sparc and zaurus to import LLVM.</title>
<updated>2016-09-03T22:46:54Z</updated>
<author>
<name>pascal</name>
<email>pascal@openbsd.org</email>
</author>
<published>2016-09-03T22:46:54Z</published>
<link rel='alternate' type='text/html' href='https://git.zx2c4.com/wireguard-openbsd/commit/?id=b5500b9ca0102f1ccaf32f0e77e96d0739aded9b'/>
<id>urn:sha1:b5500b9ca0102f1ccaf32f0e77e96d0739aded9b</id>
<content type='text'>
ok hackroom@
</content>
</entry>
</feed>
