<feed xmlns='http://www.w3.org/2005/Atom'>
<title>catch3/src/catch2/internal/catch_random_integer_helpers.hpp, branch constexpr_approx</title>
<subtitle>Progmasoft Catch3: an independently maintained C++17 test framework with a parallel runner, property checks, snapshots and structured results.</subtitle>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/'/>
<entry>
<title>Fix build on ARM64EC (#2858)</title>
<updated>2024-04-19T08:36:37+00:00</updated>
<author>
<name>AgostonSzepessy</name>
</author>
<published>2024-04-19T08:36:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=f2320724a74f95d83f8c259e1a96cf2cd9a1d6aa'/>
<id>f2320724a74f95d83f8c259e1a96cf2cd9a1d6aa</id>
<content type='text'>
Remove `#pragma intrinsic(_umul128)` because it doesn't work on
ARM64EC and x64 works without it.

Co-authored-by: Agoston Szepessy &lt;agos@microsoft.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove `#pragma intrinsic(_umul128)` because it doesn't work on
ARM64EC and x64 works without it.

Co-authored-by: Agoston Szepessy &lt;agos@microsoft.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Actually check for x64 target with MSVC</title>
<updated>2024-04-13T20:51:17+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2024-04-13T20:51:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=029fe3b4609dd84cd939b73357f37bbb75bcf82f'/>
<id>029fe3b4609dd84cd939b73357f37bbb75bcf82f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix ARM64 windows builds</title>
<updated>2024-04-12T14:40:06+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2024-04-12T13:20:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=65794fd2b8fd05c2d5524acf44bc9ac2bad19d97'/>
<id>65794fd2b8fd05c2d5524acf44bc9ac2bad19d97</id>
<content type='text'>
Apparently I looked at the docs for umulh when checking availability,
and umul128 is x64 only.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Apparently I looked at the docs for umulh when checking availability,
and umul128 is x64 only.
</pre>
</div>
</content>
</entry>
<entry>
<title>Optimize 64x64 extended multiplication implementation</title>
<updated>2024-04-03T11:28:25+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2024-04-02T16:09:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=d99eb8bec8de53639540820ee2a6563b88c4ba8c'/>
<id>d99eb8bec8de53639540820ee2a6563b88c4ba8c</id>
<content type='text'>
Now we use intrinsics when possible, and fallback to optimized
implementation in portable C++. The difference is about 4x when
we can use intrinsics and about 2x when we cannot.

This should speed up our Lemire's algorithm implementation nicely.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Now we use intrinsics when possible, and fallback to optimized
implementation in portable C++. The difference is about 4x when
we can use intrinsics and about 2x when we cannot.

This should speed up our Lemire's algorithm implementation nicely.
</pre>
</div>
</content>
</entry>
<entry>
<title>Compiler compatibility for Visual Studio 2017 (v141) for template friend operator == (#2792).</title>
<updated>2024-02-23T19:45:32+00:00</updated>
<author>
<name>James Smith</name>
</author>
<published>2024-02-22T23:07:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=4f3871d53f69ce537b42ad5fc9d8853820627237'/>
<id>4f3871d53f69ce537b42ad5fc9d8853820627237</id>
<content type='text'>
Make the operator not-friend is a sufficient solution. Closes #2792
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make the operator not-friend is a sufficient solution. Closes #2792
</pre>
</div>
</content>
</entry>
<entry>
<title>Add helpers for implementing uniform integer distribution</title>
<updated>2023-12-10T18:53:36+00:00</updated>
<author>
<name>Martin Hořeňovský</name>
</author>
<published>2023-11-28T22:26:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.progmasoft.com/catch3/commit/?id=04a829b0e13401049707c7c70e95c3cc0c73ba22'/>
<id>04a829b0e13401049707c7c70e95c3cc0c73ba22</id>
<content type='text'>
* Utility for extended mult n x n bits -&gt; 2n bits
* Utility to adapt output from URBG to target (unsigned) integral
  type
* Utility to reorder signed values into unsigned type while keeping
  the order.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Utility for extended mult n x n bits -&gt; 2n bits
* Utility to adapt output from URBG to target (unsigned) integral
  type
* Utility to reorder signed values into unsigned type while keeping
  the order.
</pre>
</div>
</content>
</entry>
</feed>
