<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/libgit2.git/src/integer.h, branch ethomson/object_size</title>
<subtitle>github.com: libgit2/libgit2.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/'/>
<entry>
<title>add with overflow: correct documentation</title>
<updated>2019-01-20T13:52:46+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@edwardthomson.com</email>
</author>
<published>2019-01-20T13:52:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=75444d97fd5bc13be922714f2977a483c5303286'/>
<id>75444d97fd5bc13be922714f2977a483c5303286</id>
<content type='text'>
Correct the documentation on the fallback add/multiply with overflow
functions.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Correct the documentation on the fallback add/multiply with overflow
functions.
</pre>
</div>
</content>
</entry>
<entry>
<title>add with overflow: use SizeTAdd on Windows</title>
<updated>2019-01-20T13:51:15+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@edwardthomson.com</email>
</author>
<published>2019-01-20T13:51:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=abbc07f12fdf1444c8aa0c161f3dfa8a494b7dff'/>
<id>abbc07f12fdf1444c8aa0c161f3dfa8a494b7dff</id>
<content type='text'>
Windows provides &lt;intsafe.h&gt; which provides "performant" add and
multiply with overflow operations.  Use them when possible.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Windows provides &lt;intsafe.h&gt; which provides "performant" add and
multiply with overflow operations.  Use them when possible.
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove unused git__add_uint64_overflow</title>
<updated>2019-01-20T13:04:10+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@edwardthomson.com</email>
</author>
<published>2019-01-20T13:04:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=c6d47acfbfd514a12ac9fb14c87a247da7bfbf1d'/>
<id>c6d47acfbfd514a12ac9fb14c87a247da7bfbf1d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>add with overflow intrinsics: simplify tests</title>
<updated>2019-01-20T13:00:53+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@edwardthomson.com</email>
</author>
<published>2019-01-20T13:00:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=f04f1c7eedf2081c35dda71594a6072c6cc65694'/>
<id>f04f1c7eedf2081c35dda71594a6072c6cc65694</id>
<content type='text'>
Use the smallest unsigned type that is equivalent to `size_t` to
simplify the conditionals.  Error if we're on a system that we believe
offers builtins but we cannot determine which one to use.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use the smallest unsigned type that is equivalent to `size_t` to
simplify the conditionals.  Error if we're on a system that we believe
offers builtins but we cannot determine which one to use.
</pre>
</div>
</content>
</entry>
<entry>
<title>Let GCC use the add/mul overflow intrinsics</title>
<updated>2019-01-10T00:51:03+00:00</updated>
<author>
<name>lhchavez</name>
<email>lhchavez@lhchavez.com</email>
</author>
<published>2019-01-09T01:32:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=2848923a2f5099b6d105b0b30212134d84377dee'/>
<id>2848923a2f5099b6d105b0b30212134d84377dee</id>
<content type='text'>
This change tweaks the macros for git__{add,multiply}_sizet_overflow so
that GCC can use them.

It also stops using the uadd,umul versions since the add,mul can handle
way more cases.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change tweaks the macros for git__{add,multiply}_sizet_overflow so
that GCC can use them.

It also stops using the uadd,umul versions since the add,mul can handle
way more cases.
</pre>
</div>
</content>
</entry>
<entry>
<title>consistent header guards</title>
<updated>2018-02-01T23:56:33+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@edwardthomson.com</email>
</author>
<published>2018-02-01T23:55:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=abb04caa2f74bb4783eb87202a904c0c3517df85'/>
<id>abb04caa2f74bb4783eb87202a904c0c3517df85</id>
<content type='text'>
use consistent names for the #include / #define header guard pattern.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
use consistent names for the #include / #define header guard pattern.
</pre>
</div>
</content>
</entry>
<entry>
<title>mac: on 32 bit, use `__builtin_umull_overflow`</title>
<updated>2017-01-23T22:29:58+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@github.com</email>
</author>
<published>2017-01-22T01:42:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=a0d384798312df3b2c79194ced81bf5a3d2afddc'/>
<id>a0d384798312df3b2c79194ced81bf5a3d2afddc</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix MAX 32 bit build problem described in libgit2/libgit2#2917</title>
<updated>2015-02-20T17:59:43+00:00</updated>
<author>
<name>Jeff Hostetler</name>
<email>jeffhost@microsoft.com</email>
</author>
<published>2015-02-20T15:21:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=c92987d1575b93eac3b6fa4d1b4bc166137305ac'/>
<id>c92987d1575b93eac3b6fa4d1b4bc166137305ac</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>integer overflow: use compiler intrinsics if supported</title>
<updated>2015-02-13T14:28:09+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@microsoft.com</email>
</author>
<published>2015-02-12T22:36:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=16942c6fdaddb819b71b72e53aa4aa691e3c0053'/>
<id>16942c6fdaddb819b71b72e53aa4aa691e3c0053</id>
<content type='text'>
gcc and clang support __builtin_add_overflow, use it whenever
possible, falling back to our naive routines.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
gcc and clang support __builtin_add_overflow, use it whenever
possible, falling back to our naive routines.
</pre>
</div>
</content>
</entry>
<entry>
<title>Make our overflow check look more like gcc/clang's</title>
<updated>2015-02-13T14:27:33+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@microsoft.com</email>
</author>
<published>2015-02-12T17:19:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/libgit2.git/commit/?id=f1453c59b2afb9dab43281bfe9f1ba34cf6e0d02'/>
<id>f1453c59b2afb9dab43281bfe9f1ba34cf6e0d02</id>
<content type='text'>
Make our overflow checking look more like gcc and clang's, so that
we can substitute it out with the compiler instrinsics on platforms
that support it.  This means dropping the ability to pass `NULL` as
an out parameter.

As a result, the macros also get updated to reflect this as well.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make our overflow checking look more like gcc and clang's, so that
we can substitute it out with the compiler instrinsics on platforms
that support it.  This means dropping the ability to pass `NULL` as
an out parameter.

As a result, the macros also get updated to reflect this as well.
</pre>
</div>
</content>
</entry>
</feed>
