<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <link>https://hg.paper.us.eu.org/vec/</link>
    <language>en-us</language>

    <title>vec Changelog</title>
    <description>vec Changelog</description>
    <item>
    <title>[default] vec: these macros literally never worked, oops</title>
    <guid isPermaLink="true">https://hg.paper.us.eu.org/vec/rev/7d55b2bf8152</guid>
    <link>https://hg.paper.us.eu.org/vec/rev/7d55b2bf8152</link>
    <description>
    <![CDATA[
        <table>
            <tr>
                <th style="text-align:left;">changeset</th>
                <td>7d55b2bf8152</td>
            </tr>
            <tr>
                <th style="text-align:left;">branch</th>
                <td>default</td>
            </tr>
            <tr>
                <th style="text-align:left;">bookmark</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">tag</th>
                <td>tip</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">user</th>
                <td>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">description</th>
                <td>vec: these macros literally never worked, oops</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">files</th>
                <td>include/vec/vec.h<br /></td>
            </tr>
        </table>
    ]]>
    </description>
    <author>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</author>
    <pubDate>Sat, 09 Aug 2025 16:03:34 -0400</pubDate>
</item>
<item>
    <title>vec: fix VEC_ALIGNED_ARRAY implementation for bad compilers</title>
    <guid isPermaLink="true">https://hg.paper.us.eu.org/vec/rev/d26d22c602bd</guid>
    <link>https://hg.paper.us.eu.org/vec/rev/d26d22c602bd</link>
    <description>
    <![CDATA[
        <table>
            <tr>
                <th style="text-align:left;">changeset</th>
                <td>d26d22c602bd</td>
            </tr>
            <tr>
                <th style="text-align:left;">branch</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">bookmark</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">tag</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">user</th>
                <td>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">description</th>
                <td>vec: fix VEC_ALIGNED_ARRAY implementation for bad compilers</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">files</th>
                <td>include/vec/vec.h<br /></td>
            </tr>
        </table>
    ]]>
    </description>
    <author>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</author>
    <pubDate>Sat, 09 Aug 2025 16:02:40 -0400</pubDate>
</item>
<item>
    <title>f32/f64: add floor, ceil, round, and trunc operations</title>
    <guid isPermaLink="true">https://hg.paper.us.eu.org/vec/rev/31cee67540b5</guid>
    <link>https://hg.paper.us.eu.org/vec/rev/31cee67540b5</link>
    <description>
    <![CDATA[
        <table>
            <tr>
                <th style="text-align:left;">changeset</th>
                <td>31cee67540b5</td>
            </tr>
            <tr>
                <th style="text-align:left;">branch</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">bookmark</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">tag</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">user</th>
                <td>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">description</th>
                <td>f32/f64: add floor, ceil, round, and trunc operations<br/>
<br/>
we also need saturated add sub mul etc</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">files</th>
                <td>gen/gendouble.c<br />gen/gengeneric.c<br />gen/genlib.c<br />gen/genlib.h<br />include/vec/impl/double.h<br />include/vec/impl/generic.h<br />include/vec/mem.h<br />test/test.c<br />test/test_arith.h<br /></td>
            </tr>
        </table>
    ]]>
    </description>
    <author>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</author>
    <pubDate>Sat, 09 Aug 2025 15:55:59 -0400</pubDate>
</item>
<item>
    <title>*: add preliminary floating point support</title>
    <guid isPermaLink="true">https://hg.paper.us.eu.org/vec/rev/7955bed1d169</guid>
    <link>https://hg.paper.us.eu.org/vec/rev/7955bed1d169</link>
    <description>
    <![CDATA[
        <table>
            <tr>
                <th style="text-align:left;">changeset</th>
                <td>7955bed1d169</td>
            </tr>
            <tr>
                <th style="text-align:left;">branch</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">bookmark</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">tag</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">user</th>
                <td>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">description</th>
                <td>*: add preliminary floating point support<br/>
<br/>
no x86 intrinsics just yet, but I did add altivec since it's<br/>
(arguably) the simplest :)</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">files</th>
                <td>gen/README<br />gen/genaltivec.c<br />gen/gendouble.c<br />gen/gengcc.c<br />gen/gengeneric.c<br />gen/genlib.c<br />gen/genlib.h<br />gen/genvsx.c<br />include/vec/defs.h<br />include/vec/impl/double.h<br /><br /></td>
            </tr>
        </table>
    ]]>
    </description>
    <author>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</author>
    <pubDate>Wed, 30 Apr 2025 18:36:38 -0400</pubDate>
</item>
<item>
    <title>altivec: vec_splat_* is actually not at all what I thought it was</title>
    <guid isPermaLink="true">https://hg.paper.us.eu.org/vec/rev/b0a3f0248ecc</guid>
    <link>https://hg.paper.us.eu.org/vec/rev/b0a3f0248ecc</link>
    <description>
    <![CDATA[
        <table>
            <tr>
                <th style="text-align:left;">changeset</th>
                <td>b0a3f0248ecc</td>
            </tr>
            <tr>
                <th style="text-align:left;">branch</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">bookmark</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">tag</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">user</th>
                <td>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">description</th>
                <td>altivec: vec_splat_* is actually not at all what I thought it was<br/>
<br/>
lol</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">files</th>
                <td>include/vec/impl/ppc/altivec.h<br />utils/genaltivec.c<br /></td>
            </tr>
        </table>
    ]]>
    </description>
    <author>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</author>
    <pubDate>Tue, 29 Apr 2025 16:54:13 -0400</pubDate>
</item>
<item>
    <title>altivec: for soem reason the entire file got overwritten with zeroes</title>
    <guid isPermaLink="true">https://hg.paper.us.eu.org/vec/rev/d96806b543ac</guid>
    <link>https://hg.paper.us.eu.org/vec/rev/d96806b543ac</link>
    <description>
    <![CDATA[
        <table>
            <tr>
                <th style="text-align:left;">changeset</th>
                <td>d96806b543ac</td>
            </tr>
            <tr>
                <th style="text-align:left;">branch</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">bookmark</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">tag</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">user</th>
                <td>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">description</th>
                <td>altivec: for soem reason the entire file got overwritten with zeroes</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">files</th>
                <td>include/vec/impl/ppc/altivec.h<br /></td>
            </tr>
        </table>
    ]]>
    </description>
    <author>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</author>
    <pubDate>Tue, 29 Apr 2025 16:48:58 -0400</pubDate>
</item>
<item>
    <title>altivec: use vec_splat_* funcs if available</title>
    <guid isPermaLink="true">https://hg.paper.us.eu.org/vec/rev/ca0f0223a62d</guid>
    <link>https://hg.paper.us.eu.org/vec/rev/ca0f0223a62d</link>
    <description>
    <![CDATA[
        <table>
            <tr>
                <th style="text-align:left;">changeset</th>
                <td>ca0f0223a62d</td>
            </tr>
            <tr>
                <th style="text-align:left;">branch</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">bookmark</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">tag</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">user</th>
                <td>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">description</th>
                <td>altivec: use vec_splat_* funcs if available</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">files</th>
                <td>include/vec/impl/altivec.h<br />include/vec/impl/ppc/altivec.h<br />utils/genaltivec.c<br /></td>
            </tr>
        </table>
    ]]>
    </description>
    <author>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</author>
    <pubDate>Tue, 29 Apr 2025 16:36:35 -0400</pubDate>
</item>
<item>
    <title>*: performance improvements with old GCC, reimplement altivec</title>
    <guid isPermaLink="true">https://hg.paper.us.eu.org/vec/rev/c6e0df09b86f</guid>
    <link>https://hg.paper.us.eu.org/vec/rev/c6e0df09b86f</link>
    <description>
    <![CDATA[
        <table>
            <tr>
                <th style="text-align:left;">changeset</th>
                <td>c6e0df09b86f</td>
            </tr>
            <tr>
                <th style="text-align:left;">branch</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">bookmark</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">tag</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">user</th>
                <td>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">description</th>
                <td>*: performance improvements with old GCC, reimplement altivec</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">files</th>
                <td>include/vec/impl/altivec.h<br />include/vec/impl/double.h<br />include/vec/impl/gcc.h<br />include/vec/impl/generic.h<br />include/vec/impl/ppc/altivec.h<br />include/vec/vec.h<br />test/Makefile.ppc<br />test/Makefile.template<br />test/test.c<br />test/test_arith.h<br /><br /></td>
            </tr>
        </table>
    ]]>
    </description>
    <author>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</author>
    <pubDate>Mon, 28 Apr 2025 16:31:59 -0400</pubDate>
</item>
<item>
    <title>*: add mod operation, add GCC vector backend</title>
    <guid isPermaLink="true">https://hg.paper.us.eu.org/vec/rev/55cadb1fac4b</guid>
    <link>https://hg.paper.us.eu.org/vec/rev/55cadb1fac4b</link>
    <description>
    <![CDATA[
        <table>
            <tr>
                <th style="text-align:left;">changeset</th>
                <td>55cadb1fac4b</td>
            </tr>
            <tr>
                <th style="text-align:left;">branch</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">bookmark</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">tag</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">user</th>
                <td>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">description</th>
                <td>*: add mod operation, add GCC vector backend<br/>
<br/>
need to test it with old gcc though. :)</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">files</th>
                <td>README<br />include/vec/impl/gcc.h<br />include/vec/impl/generic.h<br />include/vec/vec.h<br />test/Makefile.template<br />test/test_arith.h<br />utils/gengcc.c<br />utils/gengeneric.c<br /></td>
            </tr>
        </table>
    ]]>
    </description>
    <author>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</author>
    <pubDate>Sun, 27 Apr 2025 02:49:53 -0400</pubDate>
</item>
<item>
    <title>*: rearrange some things; add avx512bw support</title>
    <guid isPermaLink="true">https://hg.paper.us.eu.org/vec/rev/f9ca85d2f14c</guid>
    <link>https://hg.paper.us.eu.org/vec/rev/f9ca85d2f14c</link>
    <description>
    <![CDATA[
        <table>
            <tr>
                <th style="text-align:left;">changeset</th>
                <td>f9ca85d2f14c</td>
            </tr>
            <tr>
                <th style="text-align:left;">branch</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">bookmark</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;">tag</th>
                <td></td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">user</th>
                <td>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">description</th>
                <td>*: rearrange some things; add avx512bw support</td>
            </tr>
            <tr>
                <th style="text-align:left;vertical-align:top;">files</th>
                <td>README<br />include/vec/cpu.h<br />include/vec/defs.h<br />include/vec/impl/cpu.h<br />include/vec/impl/generic.h<br />include/vec/impl/ppc/altivec.h<br />include/vec/impl/x86/avx2.h<br />include/vec/impl/x86/avx512bw.h<br />include/vec/impl/x86/avx512f.h<br />include/vec/impl/x86/sse2.h<br /><br /></td>
            </tr>
        </table>
    ]]>
    </description>
    <author>&#80;&#97;&#112;&#101;&#114;&#32;&#60;&#112;&#97;&#112;&#101;&#114;&#64;&#116;&#102;&#108;&#99;&#46;&#117;&#115;&#62;</author>
    <pubDate>Sat, 26 Apr 2025 15:31:39 -0400</pubDate>
</item>

  </channel>
</rss>