<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bcm5719-llvm/libcxx/include/numeric, branch meklort-10.0.1</title>
<subtitle>Project Ortega BCM5719 LLVM</subtitle>
<id>https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.1</id>
<link rel='self' href='https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.1'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/'/>
<updated>2019-12-21T09:26:24+00:00</updated>
<entry>
<title>[libc++] Fix typo in std::midpoint</title>
<updated>2019-12-21T09:26:24+00:00</updated>
<author>
<name>Ruslan Baratov</name>
<email>ruslan_baratov@yahoo.com</email>
</author>
<published>2019-12-21T09:22:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=6e8659c351fe3a38ed23f5a5b24c1bc143ea00ed'/>
<id>urn:sha1:6e8659c351fe3a38ed23f5a5b24c1bc143ea00ed</id>
<content type='text'>
Reviewed By: mclow.lists

Differential Revision: https://reviews.llvm.org/D71525
</content>
</entry>
<entry>
<title>Optimize std::midpoint for integers</title>
<updated>2019-11-05T03:00:23+00:00</updated>
<author>
<name>Jorg Brown</name>
<email>jorg@google.com</email>
</author>
<published>2019-11-05T03:00:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=586952f4cefd809b7becd16c6d1e751ea923adfd'/>
<id>urn:sha1:586952f4cefd809b7becd16c6d1e751ea923adfd</id>
<content type='text'>
Same idea as the current algorithm, that is, add (half of the difference between a and b) to a.

But we use a different technique for computing the difference: we compute b - a into a pair of integers that are named "sign_bit" and "diff". We have to use a pair because subtracting two 32-bit integers produces a 33-bit result.

Computing half of that is a simple matter of shifting diff right by 1, and adding sign_bit shifted left by 31. llvm knows how to do that with one instruction: shld.

The only tricky part is that if the difference is odd and negative, then shifting it by one isn't the same as dividing it by two - shifting a negative one produces a negative one, for example. So there's one more adjustment: if the sign bit and the low bit of diff are one, we add one.

For a demonstration of the codegen difference, see https://godbolt.org/z/7ar3K9 , which also has a built-in test.

Differential Revision: https://reviews.llvm.org/D69459
</content>
</entry>
<entry>
<title>[pstl][libc++] Provide uglified header names for interface headers</title>
<updated>2019-08-06T21:11:24+00:00</updated>
<author>
<name>Louis Dionne</name>
<email>ldionne@apple.com</email>
</author>
<published>2019-08-06T21:11:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=956892433f7c0ae4520232b07d442fedbcc14cb2'/>
<id>urn:sha1:956892433f7c0ae4520232b07d442fedbcc14cb2</id>
<content type='text'>
For the few (currently four) headers that make up the PSTL's interface
to other Standard Libraries, provide a stable uglified header file that
can be included by those Standard Libraries.

We can then more easily change the internal organization of the PSTL
without having to change the integration with Standard Libraries.

llvm-svn: 368088
</content>
</entry>
<entry>
<title>[libc++] Take 2: Integrate the PSTL into libc++</title>
<updated>2019-08-05T18:29:14+00:00</updated>
<author>
<name>Louis Dionne</name>
<email>ldionne@apple.com</email>
</author>
<published>2019-08-05T18:29:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=0a06eb911b830cf693747ea6cd975bd97b454e3e'/>
<id>urn:sha1:0a06eb911b830cf693747ea6cd975bd97b454e3e</id>
<content type='text'>
Summary:
This commit allows specifying LIBCXX_ENABLE_PARALLEL_ALGORITHMS when
configuring libc++ in CMake. When that option is enabled, libc++ will
assume that the PSTL can be found somewhere on the CMake module path,
and it will provide the C++17 parallel algorithms based on the PSTL
(that is assumed to be available).

The commit also adds support for running the PSTL tests as part of
the libc++ test suite.

The first attempt to commit this failed because it exposed a bug in the
tests for modules. Now that this has been fixed, it should be safe to
commit this.

Reviewers: EricWF

Subscribers: mgorny, christof, jkorous, dexonsmith, libcxx-commits, mclow.lists, EricWF

Tags: #libc

Differential Revision: https://reviews.llvm.org/D60480

llvm-svn: 367903
</content>
</entry>
<entry>
<title>Revert "[libc++] Integrate the PSTL into libc++"</title>
<updated>2019-07-19T18:52:46+00:00</updated>
<author>
<name>Louis Dionne</name>
<email>ldionne@apple.com</email>
</author>
<published>2019-07-19T18:52:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=a3c83b7511a56a1bc79784078caab0ad7f8c7abb'/>
<id>urn:sha1:a3c83b7511a56a1bc79784078caab0ad7f8c7abb</id>
<content type='text'>
This reverts r366593, which caused unforeseen breakage on the build bots.
I'm reverting until the problems have been figured out and fixed.

llvm-svn: 366603
</content>
</entry>
<entry>
<title>[libc++] Integrate the PSTL into libc++</title>
<updated>2019-07-19T17:02:42+00:00</updated>
<author>
<name>Louis Dionne</name>
<email>ldionne@apple.com</email>
</author>
<published>2019-07-19T17:02:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=910323e6676f813b28d1320b0d08ece270ee977d'/>
<id>urn:sha1:910323e6676f813b28d1320b0d08ece270ee977d</id>
<content type='text'>
Summary:
This commit allows specifying LIBCXX_ENABLE_PARALLEL_ALGORITHMS when
configuring libc++ in CMake. When that option is enabled, libc++ will
assume that the PSTL can be found somewhere on the CMake module path,
and it will provide the C++17 parallel algorithms based on the PSTL
(that is assumed to be available).

The commit also adds support for running the PSTL tests as part of
the libc++ test suite.

Reviewers: rodgert, EricWF

Subscribers: mgorny, christof, jkorous, dexonsmith, libcxx-commits, mclow.lists, EricWF

Tags: #libc

Differential Revision: https://reviews.llvm.org/D60480

llvm-svn: 366593
</content>
</entry>
<entry>
<title>Fix the floating point version of midpoint. It wasn't constexpr, among other things. Add more tests. As a drive-by, the LCD implementation had a class named '__abs' which did a 'absolute value to a common-type' conversion. Rename that to be '__ct_abs'.</title>
<updated>2019-06-18T18:13:54+00:00</updated>
<author>
<name>Marshall Clow</name>
<email>mclow.lists@gmail.com</email>
</author>
<published>2019-06-18T18:13:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=8dc6840f1c91a0a0442afa841bff5123efb44334'/>
<id>urn:sha1:8dc6840f1c91a0a0442afa841bff5123efb44334</id>
<content type='text'>
llvm-svn: 363714
</content>
</entry>
<entry>
<title>[NFC][libcxx] Remove trailing whitespace</title>
<updated>2019-05-29T16:01:36+00:00</updated>
<author>
<name>Louis Dionne</name>
<email>ldionne@apple.com</email>
</author>
<published>2019-05-29T16:01:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=a2a1ec27d0e799725cdd41f8456deb9a49433e2d'/>
<id>urn:sha1:a2a1ec27d0e799725cdd41f8456deb9a49433e2d</id>
<content type='text'>
It's incredibly annoying when trying to create diffs

llvm-svn: 361981
</content>
</entry>
<entry>
<title>Add additional constraints on midpoint(pointer, pointer). Fixes PR#42037.</title>
<updated>2019-05-29T15:17:55+00:00</updated>
<author>
<name>Marshall Clow</name>
<email>mclow.lists@gmail.com</email>
</author>
<published>2019-05-29T15:17:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=6b03a1b42352e38fafff67c6d8d685144b8f9a4c'/>
<id>urn:sha1:6b03a1b42352e38fafff67c6d8d685144b8f9a4c</id>
<content type='text'>
llvm-svn: 361970
</content>
</entry>
<entry>
<title>Mark private function __sign as constexpr.</title>
<updated>2019-05-07T16:07:24+00:00</updated>
<author>
<name>Marshall Clow</name>
<email>mclow.lists@gmail.com</email>
</author>
<published>2019-05-07T16:07:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=51497fb8b379878cac0f122b44344a0a3b6a294f'/>
<id>urn:sha1:51497fb8b379878cac0f122b44344a0a3b6a294f</id>
<content type='text'>
llvm-svn: 360167
</content>
</entry>
</feed>
