<feed xmlns='http://www.w3.org/2005/Atom'>
<title>paraslash/fec.c, branch master</title>
<subtitle>paraslash - network audio streaming tools</subtitle>
<id>https://git.tue.mpg.de/cgit/paraslash/atom?h=master</id>
<link rel='self' href='https://git.tue.mpg.de/cgit/paraslash/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/paraslash/'/>
<updated>2026-03-22T18:32:14Z</updated>
<entry>
<title>fec: Remove modnn().</title>
<updated>2026-03-22T18:32:14Z</updated>
<author>
<name>Andre Noll</name>
<email>maan@tuebingen.mpg.de</email>
</author>
<published>2026-03-11T23:38:46Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/paraslash/commit/?id=e4a6c8795b19df0ad41f675a9a711b3a76163032'/>
<id>urn:sha1:e4a6c8795b19df0ad41f675a9a711b3a76163032</id>
<content type='text'>
The compiler should be smart enough to optimize the modulo operation. Besides,
this code is only executed via fec_new(), which is not performance critical.
</content>
</entry>
<entry>
<title>fec: Avoid explicit zeroing.</title>
<updated>2026-03-22T18:31:07Z</updated>
<author>
<name>Andre Noll</name>
<email>maan@tuebingen.mpg.de</email>
</author>
<published>2026-03-11T23:27:13Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/paraslash/commit/?id=0a4f081194281ab2a8ddcd1dc64a8e0ee08b3be7'/>
<id>urn:sha1:0a4f081194281ab2a8ddcd1dc64a8e0ee08b3be7</id>
<content type='text'>
We have helpers for that.
</content>
</entry>
<entry>
<title>fec: Replace arr_alloc(1, k) by alloc(k).</title>
<updated>2026-03-22T18:31:03Z</updated>
<author>
<name>Andre Noll</name>
<email>maan@tuebingen.mpg.de</email>
</author>
<published>2026-03-11T23:24:22Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/paraslash/commit/?id=08a455c9edb7475d22b595eca48d5250002f3e18'/>
<id>urn:sha1:08a455c9edb7475d22b595eca48d5250002f3e18</id>
<content type='text'>
Both are equivalent, but the latter is shorter and more performant because
it avoids a multiplication and a check for overflow.
</content>
</entry>
<entry>
<title>fec: Remove pointless alloc_matrix().</title>
<updated>2026-03-22T18:30:59Z</updated>
<author>
<name>Andre Noll</name>
<email>maan@tuebingen.mpg.de</email>
</author>
<published>2026-03-11T23:14:03Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/paraslash/commit/?id=0e0d09198fcfe18ae9dd9da8edcc92514f37ceb0'/>
<id>urn:sha1:0e0d09198fcfe18ae9dd9da8edcc92514f37ceb0</id>
<content type='text'>
We may as well call arr_alloc() directly.
</content>
</entry>
<entry>
<title>Improve FEC documentation.</title>
<updated>2025-10-08T18:58:23Z</updated>
<author>
<name>Andre Noll</name>
<email>maan@tuebingen.mpg.de</email>
</author>
<published>2025-06-16T18:04:05Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/paraslash/commit/?id=54dc6d5d184d8b3d0540f527363c54f6619689cf'/>
<id>urn:sha1:54dc6d5d184d8b3d0540f527363c54f6619689cf</id>
<content type='text'>
A cup of dedox for fec.c and the new two-paragraph overview of the fec API.
</content>
</entry>
<entry>
<title>fec: Don't oversize gf_exp[].</title>
<updated>2025-08-02T23:06:42Z</updated>
<author>
<name>Andre Noll</name>
<email>maan@tuebingen.mpg.de</email>
</author>
<published>2025-07-08T19:00:32Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/paraslash/commit/?id=80e0ab1b2cdc040820eb11c496da93cbea4b16a8'/>
<id>urn:sha1:80e0ab1b2cdc040820eb11c496da93cbea4b16a8</id>
<content type='text'>
Apart from the initialization code, there is only one user of the Galois
field exponential table. This user passes a value modulo GF_SIZE, so we
never access the second half of the array.
</content>
</entry>
<entry>
<title>fec.c: Remove an unused #include.</title>
<updated>2025-05-26T15:45:53Z</updated>
<author>
<name>Andre Noll</name>
<email>maan@tuebingen.mpg.de</email>
</author>
<published>2025-05-25T17:45:58Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/paraslash/commit/?id=eabd7686ad43af9eba676983642fc5a4ed464a70'/>
<id>urn:sha1:eabd7686ad43af9eba676983642fc5a4ed464a70</id>
<content type='text'>
The fec code does not need the helpers from portable_io.h.
</content>
</entry>
<entry>
<title>Include regex.h from para.h.</title>
<updated>2025-05-19T17:35:58Z</updated>
<author>
<name>Andre Noll</name>
<email>maan@tuebingen.mpg.de</email>
</author>
<published>2025-05-18T20:05:45Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/paraslash/commit/?id=67388cd4fae0cfd1674aada937f4f4d2faeeee1f'/>
<id>urn:sha1:67388cd4fae0cfd1674aada937f4f4d2faeeee1f</id>
<content type='text'>
Every .c file includes it anyway.
</content>
</entry>
<entry>
<title>string: Introduce arr_alloc().</title>
<updated>2022-07-29T17:22:09Z</updated>
<author>
<name>Andre Noll</name>
<email>maan@tuebingen.mpg.de</email>
</author>
<published>2021-10-27T18:40:04Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/paraslash/commit/?id=27c08870ba172782f6406045007b6ff32a4f7329'/>
<id>urn:sha1:27c08870ba172782f6406045007b6ff32a4f7329</id>
<content type='text'>
Change all callers of alloc() which pass a product of two integers as
the allocation size to call the new function instead. This function
aborts if the multiplication overflows. With arr_alloc() in place,
alloc() reduces to a trivial wrapper which calls new arr_alloc()
with the first argument equal to one.
</content>
</entry>
<entry>
<title>string: Rename para_calloc() -&gt; zalloc().</title>
<updated>2022-07-29T17:22:09Z</updated>
<author>
<name>Andre Noll</name>
<email>maan@tuebingen.mpg.de</email>
</author>
<published>2021-11-09T17:41:17Z</published>
<link rel='alternate' type='text/html' href='https://git.tue.mpg.de/cgit/paraslash/commit/?id=26a032fffa6c6e6f092ed3d14c2b5f08e5c736d6'/>
<id>urn:sha1:26a032fffa6c6e6f092ed3d14c2b5f08e5c736d6</id>
<content type='text'>
Reword the documentation a bit since the function has never been a
wrapper for calloc(3). No code changes.
</content>
</entry>
</feed>
