)]}'
{
  "log": [
    {
      "commit": "62501cc7db378532d7e85ea434b70d57e1ba2cb0",
      "tree": "945015597d862bcbba535f653863d237bccf665c",
      "parents": [
        "dbed372b703ef9d31fcfb46fa3f5b68837a58ad1"
      ],
      "author": {
        "name": "Arpad Panyik",
        "email": "Arpad.Panyik@arm.com",
        "time": "Wed May 20 11:00:46 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Tue May 26 12:30:26 2026"
      },
      "message": "AArch64: Optimize ipred_smooth_8bpc_neon\n\nOptimize ipred_smooth_8bpc_neon using simpler arithmetic operations and\nthe removal of jump table.\n\nRelative runtime after this patch on some Cortex CPUs:\n\nipred_smooth:   w4      w8      w16     w32     w64\nCortex-A55:   1.041x  0.839x  0.705x  0.765x  0.802x\nCortex-A510:  1.055x  0.880x  0.669x  0.694x  0.729x\nCortex-A520:  1.113x  0.922x  0.659x  0.737x  0.783x\nCortex-A76:   0.763x  0.733x  0.608x  0.707x  0.791x\nCortex-A78:   0.840x  0.712x  0.704x  0.748x  0.786x\nCortex-A715:  0.814x  0.655x  0.798x  0.837x  0.858x\nCortex-A725:  0.813x  0.653x  0.791x  0.830x  0.854x\nCortex-X1:    0.825x  0.686x  0.667x  0.729x  0.756x\nCortex-X3:    0.865x  0.617x  0.649x  0.674x  0.688x\nCortex-X925:  0.825x  0.677x  0.641x  0.686x  0.700x\n"
    },
    {
      "commit": "dbed372b703ef9d31fcfb46fa3f5b68837a58ad1",
      "tree": "f8813b1f7e11e2aee5c3050324029c59b56bb5f5",
      "parents": [
        "a38236491a865c9b192bf85d7c851ee98f5793ed"
      ],
      "author": {
        "name": "Arpad Panyik",
        "email": "Arpad.Panyik@arm.com",
        "time": "Wed May 20 11:48:18 2026"
      },
      "committer": {
        "name": "Arpad Panyik",
        "email": "Arpad.Panyik@arm.com",
        "time": "Wed May 20 11:48:18 2026"
      },
      "message": "AArch64: Optimize ipred_smooth_v_8bpc_neon further\n\nOptimize ipred_smooth_h_8bpc_neon even further using vertical inner\nloop for w \u003e\u003d 16 cases.\n\nRelative runtime after this patch on some Cortex CPUs:\n\nipred_smooth_v:    w4      w8      w16     w32     w64\nCortex-A55:      0.985x  0.981x  0.810x  0.873x  0.907x\nCortex-A510:     0.966x  0.951x  0.950x  1.013x  1.047x\nCortex-A520:     0.924x  0.924x  0.890x  0.984x  1.030x\nCortex-A76:      0.978x  1.036x  0.899x  0.919x  0.918x\nCortex-A78:      0.997x  0.993x  0.986x  0.972x  0.983x\nCortex-A710:     1.002x  0.973x  0.984x  0.958x  1.002x\nCortex-A715:     1.073x  1.049x  1.005x  1.018x  1.012x\nCortex-A720:     1.001x  1.004x  0.990x  1.007x  1.008x\nCortex-A725:     1.002x  1.001x  0.985x  1.007x  1.006x\nCortex-X1:       0.996x  1.077x  0.927x  0.962x  0.970x\nCortex-X2:       1.012x  0.989x  0.881x  0.971x  0.981x\nCortex-X3:       1.006x  1.034x  0.841x  0.966x  0.962x\nCortex-X4:       1.020x  1.022x  0.915x  0.964x  0.985x\nCortex-X925:     1.000x  0.947x  0.936x  0.982x  0.996x\n"
    },
    {
      "commit": "a38236491a865c9b192bf85d7c851ee98f5793ed",
      "tree": "621ba4ed0325f7c90fc44e9003f4e6c399f19fd1",
      "parents": [
        "1718ff9aded99f0a89f5c7940d6afb8948301e33"
      ],
      "author": {
        "name": "Arpad Panyik",
        "email": "Arpad.Panyik@arm.com",
        "time": "Wed May 20 11:44:22 2026"
      },
      "committer": {
        "name": "Arpad Panyik",
        "email": "Arpad.Panyik@arm.com",
        "time": "Wed May 20 11:44:22 2026"
      },
      "message": "AArch64: Optimize ipred_smooth_h_8bpc_neon further\n\nOptimize ipred_smooth_h_8bpc_neon even further using vertical inner\nloop for w \u003e\u003d 16 cases. Reorder instructions in the w \u003d 4 handler for\nSmall CPUs.\n\nRelative runtime after this patch on some Cortex CPUs:\n\nipred_smooth_h:    w4      w8      w16     w32     w64\nCortex-A55:      0.964x  1.003x  0.891x  0.979x  1.030x\nCortex-A510:     0.952x  0.936x  0.928x  1.004x  1.050x\nCortex-A520:     0.921x  0.925x  0.921x  0.995x  1.032x\nCortex-A76:      0.993x  1.005x  0.977x  0.995x  0.996x\nCortex-A78:      0.991x  0.998x  1.042x  0.978x  1.015x\nCortex-A710:     1.020x  0.966x  1.015x  1.015x  1.008x\nCortex-A715:     1.026x  1.051x  1.039x  1.007x  1.024x\nCortex-A720:     0.954x  0.999x  1.018x  0.999x  1.020x\nCortex-A725:     0.962x  1.000x  1.018x  1.000x  1.021x\nCortex-X1:       1.019x  0.993x  0.924x  0.983x  0.989x\nCortex-X2:       1.013x  0.991x  0.872x  0.964x  1.023x\nCortex-X3:       1.030x  0.996x  0.840x  0.953x  1.024x\nCortex-X4:       1.026x  1.005x  0.952x  0.970x  0.986x\nCortex-X925:     1.000x  0.980x  0.865x  0.899x  0.892x\n"
    },
    {
      "commit": "1718ff9aded99f0a89f5c7940d6afb8948301e33",
      "tree": "2e08f763c405ec67891e2b65c933fa0654617f81",
      "parents": [
        "c85856e36078b874f8f68381db47d01f54767758"
      ],
      "author": {
        "name": "Najmus Sakib Afsan",
        "email": "ns.afsan@proton.me",
        "time": "Thu Mar 19 17:41:49 2026"
      },
      "committer": {
        "name": "Ronald S. Bultje",
        "email": "rsbultje@gmail.com",
        "time": "Fri May 15 15:40:14 2026"
      },
      "message": "riscv64/ipred_h: Implement ipred_h in RISC-V asm\n"
    },
    {
      "commit": "c85856e36078b874f8f68381db47d01f54767758",
      "tree": "fbe92c90d1bbf2a5f73b17ea035733de9a85c6a6",
      "parents": [
        "1cfad6dbca24fa5b4ab4853617e275281c5b8f78"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Fri May 15 11:24:57 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Fri May 15 11:24:57 2026"
      },
      "message": "aarch64: Fix a name mismatch in a macro error message\n\nFor the 64 bit assembly, the macro is just named \"sub_sp\", while it\nwas named \"sub_sp_align\" in the 32 bit form.\n"
    },
    {
      "commit": "1cfad6dbca24fa5b4ab4853617e275281c5b8f78",
      "tree": "e80085bfe486e2c062ba7d10018ad9e33a426e87",
      "parents": [
        "de223ad6abda14ee2804bd30bbe9317ba322d2fe"
      ],
      "author": {
        "name": "Najmus Sakib Afsan",
        "email": "ns.afsan@proton.me",
        "time": "Wed Mar 18 14:54:40 2026"
      },
      "committer": {
        "name": "Najmus Sakib Afsan",
        "email": "ns.afsan@proton.me",
        "time": "Tue May 12 11:26:56 2026"
      },
      "message": "riscv64/ipred_v: Remove redundent vxrm set instr\n\nIn function ipred_v_8bpc_rvv, rvv instructions vsetvli, vle8.v,\nvse8.v do not use vxrm.\n\nKendryte K230                     Before            After         Delta\n\nintra_pred_v_w4_8bpc_c:       419.2 ( 1.00x)    405.2 ( 1.00x)   -3.34%\nintra_pred_v_w4_8bpc_rvv:      56.7 ( 6.88x)     48.5 ( 7.73x)  -14.46%\nintra_pred_v_w8_8bpc_c:       772.9 ( 1.00x)    753.3 ( 1.00x)   -2.54%\nintra_pred_v_w8_8bpc_rvv:      69.9 (10.54x)     61.5 (11.67x)  -12.02%\nintra_pred_v_w16_8bpc_c:     1209.7 ( 1.00x)   1221.9 ( 1.00x)    1.01%\nintra_pred_v_w16_8bpc_rvv:     88.5 (13.25x)     79.4 (14.93x)  -10.28%\nintra_pred_v_w32_8bpc_c:     1898.5 ( 1.00x)   1888.9 ( 1.00x)   -0.51%\nintra_pred_v_w32_8bpc_rvv:    104.9 (17.49x)     95.3 (19.18x)   -9.15%\nintra_pred_v_w64_8bpc_c:     3266.0 ( 1.00x)   3138.6 ( 1.00x)   -3.90%\nintra_pred_v_w64_8bpc_rvv:    196.1 (16.24x)    184.6 (16.59x)   -5.86%\n\nSpacemiT K1                       Before            After         Delta\n\nintra_pred_v_w4_8bpc_c:       419.2 ( 1.00x)    403.5 ( 1.00x)   -3.75%\nintra_pred_v_w4_8bpc_rvv:      56.7 ( 6.88x)     31.9 (11.57x)  -43.74%\nintra_pred_v_w8_8bpc_c:       772.9 ( 1.00x)    756.8 ( 1.00x)   -2.08%\nintra_pred_v_w8_8bpc_rvv:      69.9 (10.54x)     43.9 (16.39x)  -37.20%\nintra_pred_v_w16_8bpc_c:     1209.7 ( 1.00x)   1136.5 ( 1.00x)   -6.05%\nintra_pred_v_w16_8bpc_rvv:     88.5 (13.25x)     61.1 (18.00x)  -30.96%\nintra_pred_v_w32_8bpc_c:     1898.5 ( 1.00x)   1837.0 ( 1.00x)   -3.24%\nintra_pred_v_w32_8bpc_rvv:    104.9 (17.49x)     77.5 (22.93x)  -26.12%\nintra_pred_v_w64_8bpc_c:     3266.0 ( 1.00x)   3110.6 ( 1.00x)   -4.76%\nintra_pred_v_w64_8bpc_rvv:    196.1 (16.24x)    166.2 (18.28x)  -15.25%\n\nBlackhole p100a                  Before             After         Delta\n\nintra_pred_v_w4_8bpc_c:       368.5 ( 1.00x)    370.1 ( 1.00x)    0.43%\nintra_pred_v_w4_8bpc_rvv:      36.7 ( 9.37x)     23.7 (13.99x)  -35.42%\nintra_pred_v_w8_8bpc_c:       666.6 ( 1.00x)    670.2 ( 1.00x)    0.54%\nintra_pred_v_w8_8bpc_rvv:      44.4 (14.34x)     33.2 (18.92x)  -25.23%\nintra_pred_v_w16_8bpc_c:      970.4 ( 1.00x)    971.9 ( 1.00x)    0.15%\nintra_pred_v_w16_8bpc_rvv:     58.5 (16.07x)     48.5 (19.28x)  -17.09%\nintra_pred_v_w32_8bpc_c:     1577.3 ( 1.00x)   1575.8 ( 1.00x)   -0.10%\nintra_pred_v_w32_8bpc_rvv:     81.5 (18.79x)     65.9 (23.11x)  -19.14%\nintra_pred_v_w64_8bpc_c:     2720.1 ( 1.00x)   2724.9 ( 1.00x)    0.18%\nintra_pred_v_w64_8bpc_rvv:    134.9 (19.65x)     91.6 (28.67x)  -32.10%\n\nBenchmark results provided by Sungjoon Moon.\n"
    },
    {
      "commit": "de223ad6abda14ee2804bd30bbe9317ba322d2fe",
      "tree": "1be8b79fafa9a2529312775b21740c7625df610b",
      "parents": [
        "51b67010e21302d5d233dbb4f1767b704688a41c"
      ],
      "author": {
        "name": "Najmus Sakib Afsan",
        "email": "ns.afsan@proton.me",
        "time": "Sun May 10 13:58:55 2026"
      },
      "committer": {
        "name": "Najmus Sakib Afsan",
        "email": "ns.afsan@proton.me",
        "time": "Sun May 10 13:58:55 2026"
      },
      "message": "riscv64/cdef: Fix up code style\n\nThe functions of cdef_filter did not use the conventional names and\nthe macros for declarations.\n\nThis commit matches the style used for other archs and adjusts the\nfollowing:\n\n - decl_cdef_fn() macro for declaration\n - dav1d_cdef_filter_wxh as the name\n"
    },
    {
      "commit": "51b67010e21302d5d233dbb4f1767b704688a41c",
      "tree": "a760f7ee6b70e3177d16c28eaa8c0fdafef04b4b",
      "parents": [
        "4db1a05aadaa908bfd95516b7fed3e84548c131e"
      ],
      "author": {
        "name": "Arpad Panyik",
        "email": "Arpad.Panyik@arm.com",
        "time": "Fri Apr 24 17:12:06 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed May 06 20:18:03 2026"
      },
      "message": "AArch64: Optimize ipred_smooth_v_8bpc_neon\n\nOptimize ipred_smooth_v_8bpc_neon using simpler arithmetic operations\nand the removal of jump table.\n\nRelative runtime after this patch on some Cortex CPUs:\n\nipred_smooth_v:    w4      w8     w16     w32     w64\nCortex-A55:     1.025x  0.847x  0.821x  0.830x  0.852x\nCortex-A510:    1.017x  0.923x  0.915x  0.883x  0.840x\nCortex-A520:    1.080x  0.972x  0.999x  0.934x  0.876x\nCortex-A76:     0.818x  0.575x  0.599x  0.723x  0.744x\nCortex-A78:     0.782x  0.571x  0.595x  0.641x  0.685x\nCortex-A715:    0.801x  0.586x  0.593x  0.651x  0.694x\nCortex-A725:    0.801x  0.579x  0.596x  0.649x  0.692x\nCortex-X1:      0.782x  0.560x  0.553x  0.623x  0.682x\nCortex-X3:      0.792x  0.594x  0.526x  0.526x  0.604x\nCortex-X925:    0.757x  0.678x  0.525x  0.554x  0.577x\n"
    },
    {
      "commit": "4db1a05aadaa908bfd95516b7fed3e84548c131e",
      "tree": "4ca2246e242cf656d173402d188c2b4a3f20c730",
      "parents": [
        "037430193a2a542301737028aa7f0ea6c3270bae"
      ],
      "author": {
        "name": "Arpad Panyik",
        "email": "Arpad.Panyik@arm.com",
        "time": "Fri Apr 24 17:10:08 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed May 06 20:18:03 2026"
      },
      "message": "AArch64: Optimize ipred_smooth_h_8bpc_neon\n\nOptimize ipred_smooth_h_8bpc_neon using simpler arithmetic operations.\n\nRelative runtime after this patch on some Cortex CPUs:\n\nipred_smooth_h:    w4      w8     w16     w32     w64\nCortex-A55:     1.015x  0.857x  0.819x  0.835x  0.862x\nCortex-A510:    0.988x  0.860x  0.915x  0.879x  0.837x\nCortex-A520:    0.999x  0.883x  0.967x  0.929x  0.873x\nCortex-A76:     0.804x  0.637x  0.517x  0.573x  0.613x\nCortex-A78:     0.800x  0.586x  0.548x  0.639x  0.640x\nCortex-A715:    0.722x  0.642x  0.563x  0.627x  0.646x\nCortex-A725:    0.710x  0.639x  0.567x  0.622x  0.645x\nCortex-X1:      0.758x  0.570x  0.565x  0.548x  0.557x\nCortex-X3:      0.789x  0.589x  0.528x  0.563x  0.571x\nCortex-X925:    0.855x  0.739x  0.541x  0.551x  0.567x\n"
    },
    {
      "commit": "037430193a2a542301737028aa7f0ea6c3270bae",
      "tree": "2e382b3770b946c09d364e27b13eb7c45d149fca",
      "parents": [
        "7b9ab8373eebc33ae32b38f73fc425db311adbbb"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Fri May 01 11:17:10 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed May 06 15:32:26 2026"
      },
      "message": "arm: Fix up code style slightly\n\nThe existing code has been written striving to align columns so\nthat the largest register names can be typed, e.g. r10 on ARM\n(and similarly for x10 or q10 on AArch64), or v31.16b for AArch64\nvectors.\n\nFix some cases, where the current forms were clearly\ninconsistent/wrong. Not all cases have been fixed up to match this\nnorm, but some individual ones that were clearly wrong have been\nfixed.\n"
    },
    {
      "commit": "7b9ab8373eebc33ae32b38f73fc425db311adbbb",
      "tree": "1d8fa3b1b361d9f6645c4e133be8e08143373fc5",
      "parents": [
        "ac5dfb0a851c32acfa8f0a10fbe91fd390931ef3"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Tue May 05 19:56:22 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed May 06 15:11:16 2026"
      },
      "message": "ci: Update the main CI image\n\nThis version includes llvm-symbolizer, which should improve\nbacktraces in sanitizer builds with Clang.\n"
    },
    {
      "commit": "ac5dfb0a851c32acfa8f0a10fbe91fd390931ef3",
      "tree": "ca72aa6e4211e734146001a5b8340b4d70978bb9",
      "parents": [
        "556c5202b489babeee58f2ccf911ff7b1c8dea05"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed May 06 10:38:57 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed May 06 11:00:31 2026"
      },
      "message": "examples: Treat SDL2 headers as system headers\n\nThis makes those headers included with -isystem rather than -I,\nwhich makes the compiler skip producing any warnings about them\n(as they\u0027re expected to be out of the user code\u0027s control).\n\nThis avoids warnings with newer versions of the\ndav1d-debian-unstable CI image, warnings (treated as errors in CI)\nlike this:\n\n    In file included from /usr/include/SDL2/SDL_config.h:51,\n                     from /usr/include/SDL2/SDL_stdinc.h:33,\n                     from /usr/include/SDL2/SDL_main.h:25,\n                     from /usr/include/SDL2/SDL.h:31,\n                     from ../examples/dav1dplay.c:33:\n    /usr/include/SDL2/SDL_config_unix.h:186:9: error: \u0027HAVE_GETAUXVAL\u0027 redefined [-Werror]\n      186 | #define HAVE_GETAUXVAL 1\n          |         ^~~~~~~~~~~~~~\n    In file included from ../examples/dav1dplay.c:27:\n    ./config.h:66:9: note: this is the location of the previous definition\n       66 | #define HAVE_GETAUXVAL 0\n          |         ^~~~~~~~~~~~~~\n\nRecently, Debian Unstable has switched from providing the\nactual SDL 2 to providing the SDL 2 API through the sdl2-compat\npackage on top of SDL 3.\n\nThe SDL 2 headers expose their full config.h as part of their\ninstalled headers (that the user code ends up including). This\nincludes unnamespaced defines, such as \"#define HAVE_GETAUXVAL 1\".\n\nThis issue hasn\u0027t shown up with the original SDL 2 package in\nDebian, due to a Debian packaging detail. While most SDL 2\nheaders are installed in /usr/include/SDL2 (and user code\nincludes it as \u003cSDL.h\u003e, requiring the build system to include\n/usr/include/SDL2), the Debian packaging has replaced\n/usr/include/SDL2/SDL_config.h with a header that includes\n\u003cSDL2/_real_SDL_config.h\u003e, which then gets resolved in\n/usr/include/x86_64-linux-gnu/SDL2. Due to this being included\nfrom a compiler default system include path\n(/usr/include/x86_64-linux-gnu), no warnings about the header\nwas printed, even though that one also produced the same kind\nof conflicting redefinitions. (We could also avoid the same issue\nby attempting to include \u003cSDL2/SDL.h\u003e instead of \u003cSDL.h\u003e,\navoiding the use of the build system provided include directory,\nresolving that from /usr/include, and having the compiler consider\nit a system header.)\n\nThe sdl2-compat package in Debian doesn\u0027t redirect that header\nin the same way, but includes SDL_config_unix.h in the same\ndirectory in /usr/include/SDL2. Due to this being included\nfrom a user specified -I (as long as it is included as \u003cSDL.h\u003e,\nnot \u003cSDL2/SDL.h\u003e), it\u0027s considered a user header, and warnings\nare printed for it.\n\nIt seems like SDL 3 no longer exposes their config.h headers as\npart of the installed headers.\n\nThe conflict between SDL 2\u0027s config.h\u0027s HAVE_GETAUXVAL and\nour stems from the fact that we only try to detect GETAUXVAL\non architectures where we want to use it (arm/aarch64, loongarch,\nppc or riscv). On x86, where we don\u0027t need it, we don\u0027t try\nto detect it, and set \"#define HAVE_GETAUXVAL 0\" in our\nconfig.h.\n\nTo avoid warnings due to the conflict, we can declare the\nSDL 2 dependency with the argument \"include_type: \u0027system\u0027\",\nwhich should silence any warnings in the SDL headers. This\nMeson feature is available since Meson 0.52.0 (and we currently\nrequire Meson 0.54.0).\n\nAn alternative way to avoid the redefinition conflict would be\nto always try to detect getauxval on all architectures, to make\nour config.h agree with SDL 2\u0027s config headers.\n\nA third (and much more hacky way) around the conflict would be\nto avoid the public SDL headers including the SDL_config header\nby defining \"SDL_config_h_\" before including SDL.h. Doing this\nalso requires manually including a couple more standard headers\nbefore SDL.h (stdint.h, stdio.h, stddef.h).\n"
    },
    {
      "commit": "556c5202b489babeee58f2ccf911ff7b1c8dea05",
      "tree": "15f04814fde9e23076e60fc82d8d08edcf31e4ac",
      "parents": [
        "e1bd6f76c29be452cd6f92a9236657db33de79ea"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Sat May 02 22:18:55 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Sun May 03 19:39:01 2026"
      },
      "message": "ci: Add testing on macOS on Apple Silicon too\n"
    },
    {
      "commit": "e1bd6f76c29be452cd6f92a9236657db33de79ea",
      "tree": "6bfca8a441a72966f81dbe3d6b42663bf56d898e",
      "parents": [
        "5cfc3832687e3229117203905faf5425ac6bc0d7"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Sun May 03 09:42:39 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Sun May 03 09:42:39 2026"
      },
      "message": "checkasm: Readd a dependency on threads\n\n3a2a874994809a51bc4f9ec5bac51bd6af69767e, which switched to using\nthe checkasm core from the separate checkasm project, removed the\nthread dependency from the checkasm executable, as the checkasm\nlibrary itself has a thread dependency.\n\nHowever, checkasm doesn\u0027t always include that thread dependency,\nit only does that when pthread_setaffinity_np is detected.\n\nThe dav1d object files themselves use pthreads as well, causing\nundefined symbols if checkasm doesn\u0027t link in pthreads.\n\nThis should fix linking on OpenBSD after\n3a2a874994809a51bc4f9ec5bac51bd6af69767e, fixing issue #467.\n"
    },
    {
      "commit": "5cfc3832687e3229117203905faf5425ac6bc0d7",
      "tree": "626d031e37fe255146744e832a88dba6cb620722",
      "parents": [
        "727d0f984b76843e00fb2452ea57cfc5f26b2048"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed Apr 29 11:46:00 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed Apr 29 12:56:01 2026"
      },
      "message": "arm: mc: Optimize prep_neon for the w4/w8 cases\n\nUse alternating registers for immediately sequential loads/stores,\npack two 4 pixel rows into one register.\n\nBefore:                           Cortex A7      A8     A53     A55     A72     A73     A76\nmct_8tap_regular_w4_0_8bpc_neon:      112.0    68.6    79.7    82.9    45.3    39.4    24.4\nmct_8tap_regular_w8_0_8bpc_neon:      158.2    89.5   108.4   113.4    55.4    53.0    30.0\nAfter:\nmct_8tap_regular_w4_0_8bpc_neon:       89.7    69.9    76.3    85.1    36.2    35.2    25.0\nmct_8tap_regular_w8_0_8bpc_neon:      149.0    92.7   102.6   115.8    56.6    52.8    31.4\n\nThe numbers aren\u0027t entirely consistent, but this is mostly favourable.\n"
    },
    {
      "commit": "727d0f984b76843e00fb2452ea57cfc5f26b2048",
      "tree": "e81cc4659778fed869d58dc3e3b0ae902f3afb86",
      "parents": [
        "f995e1fbf9379027367a93aafd2b5711ba76f81e"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed Apr 29 10:46:05 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed Apr 29 12:56:01 2026"
      },
      "message": "arm: mc: Fix a comment typo\n\nThis seems to be right in all the other similar places\n(arm/64/mc.S, arm/32/mc16.S and arm/64/mc16.S).\n"
    },
    {
      "commit": "f995e1fbf9379027367a93aafd2b5711ba76f81e",
      "tree": "b2120dfac345eff458035d58d348a71008b81ee8",
      "parents": [
        "c0f2fe3135e2f193e31089ff013f628b01aa8d21"
      ],
      "author": {
        "name": "Victorien Le Couviour--Tuffet",
        "email": "victorien@videolan.org",
        "time": "Mon Apr 27 18:51:25 2026"
      },
      "committer": {
        "name": "Victorien Le Couviour--Tuffet",
        "email": "victorien@videolan.org",
        "time": "Mon Apr 27 19:09:28 2026"
      },
      "message": "threading: Schedule TILE tasks for all passes at once\n\nCloses #465.\n"
    },
    {
      "commit": "c0f2fe3135e2f193e31089ff013f628b01aa8d21",
      "tree": "f453d2b1d39086c691a28412bcd1a173c545e44b",
      "parents": [
        "c5726277ffa8764665ea08f865e46912a41f2309"
      ],
      "author": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Thu Apr 16 14:20:25 2026"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Wed Apr 22 19:02:05 2026"
      },
      "message": "build: Update meson version requirement to 0.54.0\n\nUse of the meson \u0027fallback arg in dependency\u0027 feature was introduced\nby the switch to external checkasm in 3a2a874.\n"
    },
    {
      "commit": "c5726277ffa8764665ea08f865e46912a41f2309",
      "tree": "03e062f5af63cc7f56ba8e555884db5c104d8290",
      "parents": [
        "47e2607e6c04de1c2a019bf2f559402045145a1d"
      ],
      "author": {
        "name": "Arpad Panyik",
        "email": "Arpad.Panyik@arm.com",
        "time": "Wed Apr 15 15:41:10 2026"
      },
      "committer": {
        "name": "Arpad Panyik",
        "email": "Arpad.Panyik@arm.com",
        "time": "Thu Apr 16 14:02:28 2026"
      },
      "message": "AArch64: Optimize ipred_h_8bpc_neon\n\nOptimize ipred_h_8bpc_neon using simpler stores and simpler indexing.\n\nRelative runtime after this patch on some Cortex CPUs:\n\nipred_h:        w4      w8      w16     w32     w64\nCortex-A55:   1.054x  1.054x  0.978x  1.149x  1.097x\nCortex-A510:  0.455x  0.970x  0.973x  1.010x  1.002x\nCortex-A520:  0.973x  0.975x  0.979x  1.002x  1.000x\nCortex-A76:   0.791x  0.934x  0.912x  1.010x  0.999x\nCortex-A78:   0.771x  0.933x  0.957x  0.519x  0.510x\nCortex-A715:  0.838x  0.860x  0.893x  0.585x  0.661x\nCortex-A720:  0.839x  0.860x  0.892x  0.580x  0.659x\nCortex-A725:  0.809x  0.837x  0.871x  0.580x  0.660x\nCortex-X1:    0.973x  0.982x  0.989x  0.498x  0.660x\nCortex-X3:    0.971x  0.992x  0.987x  0.495x  0.661x\nCortex-X925:  0.950x  1.000x  1.000x  0.474x  0.655x\n"
    },
    {
      "commit": "47e2607e6c04de1c2a019bf2f559402045145a1d",
      "tree": "0ce094ed1bc814b58f3e2ed8794a854b1847ad58",
      "parents": [
        "aa4504729c82420cde1791101722788d6ed7cbf6"
      ],
      "author": {
        "name": "Arpad Panyik",
        "email": "Arpad.Panyik@arm.com",
        "time": "Wed Apr 15 15:37:46 2026"
      },
      "committer": {
        "name": "Arpad Panyik",
        "email": "Arpad.Panyik@arm.com",
        "time": "Wed Apr 15 15:37:46 2026"
      },
      "message": "AArch64: Optimize ipred_v_8bpc_neon\n\nOptimize the width \u003d 4 case of ipred_v_8bpc_neon by using simple stores\ninstead of the lane stores which can improve performance on some CPUs.\n\nRelative runtime after this patch on some Cortex CPUs:\n\n ipred_v:       w4\nCortex-A55:   1.041x\nCortex-A510:  0.297x\nCortex-A520:  0.748x\nCortex-A76:   0.866x\nCortex-A78:   0.856x\nCortex-A715:  0.874x\nCortex-A720:  0.875x\nCortex-A725:  0.868x\nCortex-X1:    1.013x\nCortex-X3:    1.000x\nCortex-X925:  1.000x\n"
    },
    {
      "commit": "aa4504729c82420cde1791101722788d6ed7cbf6",
      "tree": "d2376d74ece44039f2502208063d50d45a8a39f9",
      "parents": [
        "d69235dd804b24c04ed05639cffcc912cd6cfd75"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Tue Mar 31 10:48:15 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Tue Mar 31 10:48:43 2026"
      },
      "message": "arm: Fix a typo in a URL\n\nThis was added in a00289b6d8ebf0ffef9b2c08c0c63b7ad330fa47.\n"
    },
    {
      "commit": "d69235dd804b24c04ed05639cffcc912cd6cfd75",
      "tree": "c951f4a8bb65e3c9e41468d3ad2271921aee8e41",
      "parents": [
        "bfbd7d467775fba3f5ddc0999f0c92c46a28a544"
      ],
      "author": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Tue Mar 17 20:07:48 2026"
      },
      "committer": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Tue Mar 17 21:00:03 2026"
      },
      "message": "CI: Use shortform QEMU_CPU for loongarch64\n\nSince qemu commit 979bf44af8483cedc00c63b3e79407de08e75a30 the cpu\nargument accepts just \u0027max\u0027 as a shorthand.\n"
    },
    {
      "commit": "bfbd7d467775fba3f5ddc0999f0c92c46a28a544",
      "tree": "69b567da4002e2dae8abc0fbd84aeca101d33c1a",
      "parents": [
        "afcdb781cb71cba442268cc9076c095863b11fe3"
      ],
      "author": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Tue Mar 17 19:54:11 2026"
      },
      "committer": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Tue Mar 17 21:00:03 2026"
      },
      "message": "CI: loongarch64: Move QEMU_LD_PREFIX to crossfile\n\nSimplifies developement builds on local machines.\n"
    },
    {
      "commit": "afcdb781cb71cba442268cc9076c095863b11fe3",
      "tree": "5752aa038451e90dde220bc116a702d004e795aa",
      "parents": [
        "42ac98706aefb8d24769bbcc7d7e914457a0c251"
      ],
      "author": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Tue Mar 17 19:47:55 2026"
      },
      "committer": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Tue Mar 17 21:00:03 2026"
      },
      "message": "CI: riscv64: Move QEMU_LD_PREFIX to crossfile\n\nSimplifies developement builds on local machines.\n"
    },
    {
      "commit": "42ac98706aefb8d24769bbcc7d7e914457a0c251",
      "tree": "15442434cc5abc6528a2f44c02f3fc0612222067",
      "parents": [
        "8feb8526bbb064370f0a5f80644260783315b6fe"
      ],
      "author": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Tue Mar 17 19:40:11 2026"
      },
      "committer": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Tue Mar 17 21:00:03 2026"
      },
      "message": "CI: aarch64: Move QEMU_LD_PREFIX to crossfile\n\nSimplifies developement builds on local machines.\n"
    },
    {
      "commit": "8feb8526bbb064370f0a5f80644260783315b6fe",
      "tree": "d80eaceb47f7d917f7fe4fe9a0f3f80c80098825",
      "parents": [
        "594d1601ff5a83b565a75cb96eff37db6de82ffa"
      ],
      "author": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Tue Mar 17 19:33:29 2026"
      },
      "committer": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Tue Mar 17 21:00:03 2026"
      },
      "message": "CI: Remove outdated version suffix from job name\n"
    },
    {
      "commit": "594d1601ff5a83b565a75cb96eff37db6de82ffa",
      "tree": "69272b91cb4109d8c208d6cccd2644e258a48c9f",
      "parents": [
        "6894b7f2d01b60d00d1a2de30593bbdd959c1ca4"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed Mar 11 21:59:39 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Tue Mar 17 20:40:05 2026"
      },
      "message": "arm: Add Armv9.3-A GCS (Guarded Control Stack) support\n\nSignal that our assembly is compliant with the GCS feature, if\nthe GCS feature is enabled in the compiler (available since Clang\n18 and GCC 15) - this is enabled by -mbranch-protection\u003dstandard\nwith a new enough compiler.\n\nGCS doesn\u0027t require any specific modifications to the assembly\ncode, but requires that all functions return to the expected call\naddress (checked through a shadow stack).\n"
    },
    {
      "commit": "6894b7f2d01b60d00d1a2de30593bbdd959c1ca4",
      "tree": "692931896adab9ddebf02b90e10221bb79ae96fe",
      "parents": [
        "241a6b236a9c84441c872119c1f31b4074c0589d"
      ],
      "author": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Tue Mar 17 17:28:57 2026"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Tue Mar 17 17:28:57 2026"
      },
      "message": "Improve the memory pool API\n\nReturn a void pointer directly to the usable memory region,\nabstracting away implementation details.\n"
    },
    {
      "commit": "241a6b236a9c84441c872119c1f31b4074c0589d",
      "tree": "9fc37bd4609647ec4b52f98be7af9366bcd40ab0",
      "parents": [
        "4fd22e97d8564401803f0cfa8abd73b2e3d6ae08"
      ],
      "author": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Sun Feb 08 12:07:04 2026"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Thu Mar 05 14:50:40 2026"
      },
      "message": "x86: Fix warp8x8 gamma/delta naming mixup\n\nFor whatever reason the names of the gamma and delta parameters\nhave been switched in a few of the warp8x8 asm implementations.\n\nThis is a bit confusing, so fix things by switching them back.\n\nThis change is purely cosmetical, the output binary is identical.\n"
    },
    {
      "commit": "4fd22e97d8564401803f0cfa8abd73b2e3d6ae08",
      "tree": "ca85d1976635c148aa6d049e376630d7f0205154",
      "parents": [
        "1dcfc9075702b6018df1f48f49e08607a256df41"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed Mar 04 13:15:54 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed Mar 04 13:16:37 2026"
      },
      "message": "arm: Switch to a more correct Windows flag for detecting I8MM\n\nNewer revisions of WinSDK 10.0.26100.0 have exposed more flags for\nIsProcessorFeaturePresent; now there is a separate one for\ndetecting specifically I8MM and not just SVE-I8MM. Switch to using\nthis flag instead.\n"
    },
    {
      "commit": "1dcfc9075702b6018df1f48f49e08607a256df41",
      "tree": "eb2e5b759728f297e28e71379bbcb930ce9a5226",
      "parents": [
        "daef39627713a3e09873e78df65b268386cb4c20"
      ],
      "author": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Sat Feb 28 15:27:35 2026"
      },
      "committer": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Sat Feb 28 15:27:35 2026"
      },
      "message": "CI: Update images\n"
    },
    {
      "commit": "daef39627713a3e09873e78df65b268386cb4c20",
      "tree": "b1be382244285f61dccc881fedb54c8d8aef8c2a",
      "parents": [
        "de4ce4f32d97aee77790941972011e23a620e56b"
      ],
      "author": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Sat Jan 03 21:25:01 2026"
      },
      "committer": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Mon Feb 09 01:33:29 2026"
      },
      "message": "CI: Switch to loongarch64 Debian toolchain\n\nloong64 was recently promoted to an official Debian architecture. [0]\n\n[0] https://lists.debian.org/debian-devel-announce/2025/12/msg00004.html\n"
    },
    {
      "commit": "de4ce4f32d97aee77790941972011e23a620e56b",
      "tree": "9fa6deb31c6151f1b246b9db96c7baa3e2bb3b6a",
      "parents": [
        "9c13b5fbd0f32255eb74339dc42fd72543b87911"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Thu Feb 05 09:33:21 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Fri Feb 06 14:01:57 2026"
      },
      "message": "arm: mc: Add missing # for some immediate constants, for consistency\n\nThe assembler doesn\u0027t require the # here, but we use that everywhere\nelse, so add it here as well for consistency.\n"
    },
    {
      "commit": "9c13b5fbd0f32255eb74339dc42fd72543b87911",
      "tree": "ff3a39ad252ff145ac5e3cae9c12e851c8945b30",
      "parents": [
        "60507bffc0b13e7a81753a51005dbbeba4b23018"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Thu Jan 29 11:21:47 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Tue Feb 03 09:27:22 2026"
      },
      "message": "subprojects: Update checkasm to v1.1.0\n\nThis version, together with the previous commit\n574e7f472719313d845090ee5a4ab3624ab58676, fixes issue #460.\n\nDue to checkasm internal restructuring, one may run into build\nissues if rebuilding in an old build directory after updating\nthe checkasm subproject, without getting rid of older meson\ngenerated headers in the build directory.\n"
    },
    {
      "commit": "60507bffc0b13e7a81753a51005dbbeba4b23018",
      "tree": "ce6c804fcd84912e2e9f94ca6afab585bf0a8fc7",
      "parents": [
        "4264096b72e93719157679576c36c2670474152f"
      ],
      "author": {
        "name": "Cameron Cawley",
        "email": "ccawley2011@gmail.com",
        "time": "Fri Jan 30 23:46:42 2026"
      },
      "committer": {
        "name": "Cameron Cawley",
        "email": "ccawley2011@gmail.com",
        "time": "Fri Jan 30 23:46:42 2026"
      },
      "message": "Fix compiler warning on platforms without cfi-icall\n"
    },
    {
      "commit": "4264096b72e93719157679576c36c2670474152f",
      "tree": "b40d1dd8985a5e05ca3a456682995b37c38baf50",
      "parents": [
        "2272a19ab0561da8a1453f06cfe357780e77bb92"
      ],
      "author": {
        "name": "Cameron Cawley",
        "email": "ccawley2011@gmail.com",
        "time": "Fri Jan 30 19:59:24 2026"
      },
      "committer": {
        "name": "Cameron Cawley",
        "email": "ccawley2011@gmail.com",
        "time": "Fri Jan 30 19:59:24 2026"
      },
      "message": "Allow falling back to standard C signal on non-POSIX systems\n"
    },
    {
      "commit": "2272a19ab0561da8a1453f06cfe357780e77bb92",
      "tree": "6c9ef671838c662c4120c74c8622edb5446f561c",
      "parents": [
        "b29c5782e754cac46af8b8bd4ef379129edc8f68"
      ],
      "author": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Mon Jan 26 22:32:17 2026"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Mon Jan 26 22:32:17 2026"
      },
      "message": "x86: Update x86inc.asm\n"
    },
    {
      "commit": "b29c5782e754cac46af8b8bd4ef379129edc8f68",
      "tree": "49a609d86dc5df3041ad8891e00e856145e9af71",
      "parents": [
        "8674770e4bd2000f512e2da2c576b9efd1df0021"
      ],
      "author": {
        "name": "KO Myung-Hun",
        "email": "komh@chollian.net",
        "time": "Mon Jul 03 14:20:03 2023"
      },
      "committer": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Wed Jan 21 23:58:15 2026"
      },
      "message": "Export DAV1D APIs correctly on OS/2\n"
    },
    {
      "commit": "8674770e4bd2000f512e2da2c576b9efd1df0021",
      "tree": "4e0661418b2b2d75fd1d7b65959441fb864779f3",
      "parents": [
        "f0b233fd0956ef89e6a010c4d3c9356f3f0331d9"
      ],
      "author": {
        "name": "KO Myung-Hun",
        "email": "komh@chollian.net",
        "time": "Mon Jul 03 14:18:29 2023"
      },
      "committer": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Wed Jan 21 23:58:15 2026"
      },
      "message": "Add asm support on OS/2\n"
    },
    {
      "commit": "f0b233fd0956ef89e6a010c4d3c9356f3f0331d9",
      "tree": "4d0f152b97ee18b4a7da4e9852d41be5904e7a78",
      "parents": [
        "50015c2ec9ee6f14c054d9a4816c11c76685b0ea"
      ],
      "author": {
        "name": "Cameron Cawley",
        "email": "ccawley2011@gmail.com",
        "time": "Wed Jan 21 14:08:57 2026"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "henrik@gramner.com",
        "time": "Wed Jan 21 14:41:57 2026"
      },
      "message": "Replace use of sprintf with snprintf\n"
    },
    {
      "commit": "50015c2ec9ee6f14c054d9a4816c11c76685b0ea",
      "tree": "ef1a11b73957c114c24bf365d64694e62155bfc9",
      "parents": [
        "2bb7e6326661cc73566dfb8154d5522756fd0446"
      ],
      "author": {
        "name": "Steve Lhomme",
        "email": "robux4@videolabs.io",
        "time": "Wed Jan 21 08:06:32 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed Jan 21 13:43:37 2026"
      },
      "message": "CI: switch debian-llvm-mingw to UCRT\n\nThe msvcrt and ucrt are almost identical except\n- C runtime is either msvcrt or UCRT (Universal C Runtime from Vista+ [^1])\n- The default target OS is Windows 10 instead of Windows 7 (0x601)\n\n[^1]: https://support.microsoft.com/en-us/topic/update-for-universal-c-runtime-in-windows-c0514201-7fe6-95a3-b0a5-287930f3560c\n"
    },
    {
      "commit": "2bb7e6326661cc73566dfb8154d5522756fd0446",
      "tree": "9f03afb271f710ef71491fe078941a8ad75af8f5",
      "parents": [
        "a44b5898722e9121ab485e629de93b8353d346c2"
      ],
      "author": {
        "name": "Cameron Cawley",
        "email": "ccawley2011@gmail.com",
        "time": "Wed Jan 21 10:52:03 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed Jan 21 13:25:49 2026"
      },
      "message": "Fix reversed parameters when TRACK_HEAP_ALLOCATIONS is enabled\n\nThis fixes a regression from commit d2687884674cb91ff9ac4c1d8b2dd63517ed7b71\n"
    },
    {
      "commit": "a44b5898722e9121ab485e629de93b8353d346c2",
      "tree": "0ed736c6c1dc5456ab693b091156eadc46aaedec",
      "parents": [
        "04b69f93e53b7fe740bee42bb7a92c6caa27445f"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Tue Jan 20 09:35:28 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Tue Jan 20 10:00:29 2026"
      },
      "message": "Silence a new MSVC warning\n\nThis silences the following warnings in MSVC 2026 18.0 (and\n2022 17.14):\n\n    ../tools/dav1d_cli_parse.c(213): warning C5287: operands are different enum types \u0027CpuFlags\u0027 and \u0027CpuMask\u0027; use an explicit cast to silence this warning\n    ../tools/dav1d_cli_parse.c(214): warning C5287: operands are different enum types \u0027CpuFlags\u0027 and \u0027CpuMask\u0027; use an explicit cast to silence this warning\n    ../tools/dav1d_cli_parse.c(215): warning C5287: operands are different enum types \u0027CpuFlags\u0027 and \u0027CpuMask\u0027; use an explicit cast to silence this warning\n    ../tools/dav1d_cli_parse.c(216): warning C5287: operands are different enum types \u0027CpuFlags\u0027 and \u0027CpuMask\u0027; use an explicit cast to silence this warning\n\nThis warning flag was new in MSVC 2022 17.14, but it was buggy\nin that version - it produced spurious warnings for other cases\nas well (and using an explicit cast to silence it didn\u0027t work\nas advertised), see [1] and [2].\n\nThe bugs were fixed in 18.0, and the remaining construct that it\nwarns about is something that is somewhat reasonable to warn about:\n\n    enum CpuFlags {\n        DAV1D_X86_CPU_FLAG_SSE2        \u003d 1 \u003c\u003c 0,\n        DAV1D_X86_CPU_FLAG_SSSE3       \u003d 1 \u003c\u003c 1,\n    };\n    enum CpuMask {\n        X86_CPU_MASK_SSE2      \u003d DAV1D_X86_CPU_FLAG_SSE2,\n        X86_CPU_MASK_SSSE3     \u003d DAV1D_X86_CPU_FLAG_SSSE3     | X86_CPU_MASK_SSE2,\n    };\n\nInstead of adding explicit casts on the constants from the foreign\nenum, just disable this warning.\n\n[1] https://developercommunity.visualstudio.com/t/False-positive-C5287:-operands-are-diff/10915265\n[2] https://developercommunity.visualstudio.com/t/warning-C5287:-operands-are-different-e/10877942\n"
    },
    {
      "commit": "04b69f93e53b7fe740bee42bb7a92c6caa27445f",
      "tree": "e46248281ad37978f2a3acdc4ee3478c1776d258",
      "parents": [
        "afd13d8906d92d6ca1e7ecd7bdf41b72e5af5500"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed Jan 14 20:29:38 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed Jan 14 20:29:38 2026"
      },
      "message": "checkasm: Reinstate check for TRIM_DSP_FUNCTIONS\n\nThis was lost in 3a2a874994809a51bc4f9ec5bac51bd6af69767e.\n\nWithout this, checkasm ends up printing a quite confusing output\nconsisting only of the functions that have two or more assembly\nimplementations, if trim_dsp happens to be enabled.\n"
    },
    {
      "commit": "afd13d8906d92d6ca1e7ecd7bdf41b72e5af5500",
      "tree": "8db76a69435a7d349ac7b674ed64b3c0f60fc927",
      "parents": [
        "574e7f472719313d845090ee5a4ab3624ab58676"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Fri Jan 09 12:00:39 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Fri Jan 09 12:00:39 2026"
      },
      "message": "arm: Fix a few misindented lines\n"
    },
    {
      "commit": "574e7f472719313d845090ee5a4ab3624ab58676",
      "tree": "666fcff370917f63d40a623ccc19ea0db81f074a",
      "parents": [
        "b2f9c106707be2eade33ed1ffd7c66f10c2a7f61"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Sun Jan 04 18:14:18 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed Jan 07 14:22:18 2026"
      },
      "message": "checkasm: Pass HAVE_C11_GENERIC to checkasm as -DCHECKASM_HAVE_GENERIC\u003d1/0\n\nFor this to have an effect, it requires using a newer version of\nthe wrapped checkasm subproject; including checkasm commit\nbe05a7972e47c658a7c5c186294d27caa5735db2 or newer.\n"
    },
    {
      "commit": "b2f9c106707be2eade33ed1ffd7c66f10c2a7f61",
      "tree": "4a810c512b695b38d0ebb1c95c16ab239e175064",
      "parents": [
        "3a2a874994809a51bc4f9ec5bac51bd6af69767e"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Fri Jan 02 22:56:42 2026"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed Jan 07 09:57:09 2026"
      },
      "message": "checkasm: Fix building with MSVC\n\nThe glue code in our headers, for integrating with the external\ncheckasm, was incompatible with MSVC.\n\nMSVC has a nonstandard handling of __VA_ARGS__ with macros; when\none macro invokes another macro, __VA_ARGS__ gets treated as one\nsingle parameter and can\u0027t map to more than one parameter in the\ninvoked macro. (In other words, when calling another macro,\n__VA_ARGS__ must map in its entirety to a ... parameter of the\nother macro.)\n\nModern versions of MSVC do implement the correct mode as well,\nbut defaults to the old one for backwards compatibility. To\nchoose the new mode, we\u0027d have to build our code with\n-Zc:preprocessor. That\u0027s certainly doable, but it\u0027s fairly easy to\navoid the issue as well.\n\nTo avoid this issue, change the variadic PIXEL_RECT(...) to explicitly\nnames its arguments. There\u0027s actually no variability in the arguments\ninvolved here. (Alternatively, we could force the preprocessor to expand\nthe arguments one extra time, avoiding the issue, with e.g.\n\"#define EXPAND(x) x\" and wrapping PIXEL_RECT with it, e.g.\n\"#define PIXEL_RECT(...) EXPAND(BUF_RECT(pixel, __VA_ARGS__))\".)\n\nSee [1], [2] and [3] for more discussion on the matter.\n\n[1] https://stackoverflow.com/a/5134656/3115956\n[2] https://stackoverflow.com/a/7459803/3115956\n[2] https://learn.microsoft.com/en-us/cpp/preprocessor/preprocessor-experimental-overview?view\u003dmsvc-160\n"
    },
    {
      "commit": "3a2a874994809a51bc4f9ec5bac51bd6af69767e",
      "tree": "34497bbf391d4741ee8ee8b1c59fcf8b963360db",
      "parents": [
        "3374404179ecd93f5bf886ce6a416d02512a3b1a"
      ],
      "author": {
        "name": "Niklas Haas",
        "email": "git@haasn.dev",
        "time": "Tue Oct 07 13:03:19 2025"
      },
      "committer": {
        "name": "Niklas Haas",
        "email": "git@haasn.dev",
        "time": "Thu Jan 01 16:33:55 2026"
      },
      "message": "tests/checkasm: switch to external checkasm\n\nThere are a number of benefits tied to the upstream / third-party checkasm\nversion, including:\n\n- Improved long-term maintainability, code reuse with other projects, etc.\n\n- Vastly improved overall performance / runtime for benchmarking, due\n  primarily to the ability to scale the runtime of each test to that test\u0027s\n  complexity.\n\n- Much more robust statistical analysis of benchmarking results; including\n  robust outlier rejection, an estimation of the histogram, and the ability\n  to report the variance / stddev in addition to the (trimmed) mean.\n\n- Interactive HTML and JSON output formats in addition to CSV/TSV.\n\n- More readable and user-friendly output across the board, especially for\n  failures and data dumps (e.g. also showing errors inside padding bytes).\n\n- Better cross-platform support, including dynamic fallback of timer\n  implementations on ARM platforms, a better RISC-V harness, and more.\n\nThere are multiple approaches to how we can solve the problem of integrating\nthis third party checkasm into dav1d, but I think the hybrid approach of\nloading it as an external dependency, falling back to a meson wrap file,\nprovides the best overall compromise. This avoids the messiness of git e.g.\ngit submodules, while still allowing us to pin individual tags.\n"
    },
    {
      "commit": "3374404179ecd93f5bf886ce6a416d02512a3b1a",
      "tree": "d8832d23800bfe819bb73f06ddc503997f06790b",
      "parents": [
        "b546257f770768b2c88258c533da38b91a06f737"
      ],
      "author": {
        "name": "Niklas Haas",
        "email": "git@haasn.dev",
        "time": "Tue Oct 07 13:05:19 2025"
      },
      "committer": {
        "name": "Niklas Haas",
        "email": "git@haasn.dev",
        "time": "Thu Jan 01 11:29:02 2026"
      },
      "message": "tests/checkasm/loopfilter: avoid printf format warning\n\nUpstream checkasm adds a printf format attribute to report(), so we should\navoid directly passing the name string to silence a warning.\n"
    },
    {
      "commit": "b546257f770768b2c88258c533da38b91a06f737",
      "tree": "c2cb3376ebd575d460ba5e6646084e958f994817",
      "parents": [
        "844510cdb460eb4783150ae10b15c7aab77d7d94"
      ],
      "author": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Wed Dec 31 12:46:31 2025"
      },
      "committer": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Wed Dec 31 14:50:45 2025"
      },
      "message": "NEWS for 1.5.3\n"
    },
    {
      "commit": "844510cdb460eb4783150ae10b15c7aab77d7d94",
      "tree": "79205ebb58d3633d01c0d6095e891de039fd84dc",
      "parents": [
        "5e8c380e4b70f62ab7c7d881394ecb891e200a5c"
      ],
      "author": {
        "name": "Nathan E. Egge",
        "email": "negge@dgql.org",
        "time": "Mon Dec 29 19:35:30 2025"
      },
      "committer": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Tue Dec 30 13:56:50 2025"
      },
      "message": "Add argon bitstream conformance test instructions\n"
    },
    {
      "commit": "5e8c380e4b70f62ab7c7d881394ecb891e200a5c",
      "tree": "78c8993b90a09c47cb1c0c136844bcf1248bce44",
      "parents": [
        "d2fa9466be0550ea42a0517c0ec0f2d5e465428c"
      ],
      "author": {
        "name": "Nathan E. Egge",
        "email": "unlord@xiph.org",
        "time": "Fri Nov 08 23:57:54 2024"
      },
      "committer": {
        "name": "Nathan E. Egge",
        "email": "unlord@xiph.org",
        "time": "Tue Dec 30 13:47:49 2025"
      },
      "message": "riscv64/mc16: Keep blend_v RVV operations in 16-bits\n\nKendryte K230                Before             After         Delta\n\nblend_v_w2_16bpc_c:       240.9 ( 1.00x)    240.9 ( 1.00x)    0.00%\nblend_v_w2_16bpc_rvv:     149.7 ( 1.61x)    155.4 ( 1.55x)    3.81%\nblend_v_w4_16bpc_c:      1072.4 ( 1.00x)   1072.5 ( 1.00x)    0.01%\nblend_v_w4_16bpc_rvv:     307.2 ( 3.49x)    299.9 ( 3.58x)   -2.38%\nblend_v_w8_16bpc_c:      2004.7 ( 1.00x)   2010.2 ( 1.00x)    0.27%\nblend_v_w8_16bpc_rvv:     436.1 ( 4.60x)    381.0 ( 5.28x)  -12.63%\nblend_v_w16_16bpc_c:     3859.4 ( 1.00x)   3853.7 ( 1.00x)   -0.15%\nblend_v_w16_16bpc_rvv:    761.1 ( 5.07x)    554.0 ( 6.96x)  -27.21%\nblend_v_w32_16bpc_c:     7509.7 ( 1.00x)   7505.3 ( 1.00x)   -0.06%\nblend_v_w32_16bpc_rvv:   1427.1 ( 5.26x)   1005.5 ( 7.46x)  -29.54%\n\nSpacemiT K1                  Before             After         Delta\n\nblend_v_w2_16bpc_c:       220.1 ( 1.00x)    222.0 ( 1.00x)    0.86%\nblend_v_w2_16bpc_rvv:     146.6 ( 1.50x)    151.1 ( 1.47x)    3.07%\nblend_v_w4_16bpc_c:       968.3 ( 1.00x)    969.6 ( 1.00x)    0.13%\nblend_v_w4_16bpc_rvv:     281.2 ( 3.44x)    290.2 ( 3.34x)    3.20%\nblend_v_w8_16bpc_c:      1809.5 ( 1.00x)   1812.1 ( 1.00x)    0.14%\nblend_v_w8_16bpc_rvv:     374.2 ( 4.84x)    375.3 ( 4.83x)    0.29%\nblend_v_w16_16bpc_c:     3479.7 ( 1.00x)   3480.9 ( 1.00x)    0.03%\nblend_v_w16_16bpc_rvv:    521.5 ( 6.67x)    465.9 ( 7.47x)  -10.66%\nblend_v_w32_16bpc_c:     6767.9 ( 1.00x)   6773.7 ( 1.00x)    0.09%\nblend_v_w32_16bpc_rvv:    852.1 ( 7.94x)    727.4 ( 9.31x)  -14.63%\n\nBlackhole p100a              Before             After         Delta\n\nblend_v_w2_16bpc_c:       205.6 ( 1.00x)    206.0 ( 1.00x)    0.19%\nblend_v_w2_16bpc_rvv:     176.5 ( 1.16x)    143.6 ( 1.44x)  -18.64%\nblend_v_w4_16bpc_c:       901.0 ( 1.00x)    891.8 ( 1.00x)   -1.02%\nblend_v_w4_16bpc_rvv:     298.8 ( 3.02x)    235.2 ( 3.79x)  -21.29%\nblend_v_w8_16bpc_c:      1663.3 ( 1.00x)   1656.5 ( 1.00x)   -0.41%\nblend_v_w8_16bpc_rvv:     300.1 ( 5.54x)    236.4 ( 7.01x)  -21.23%\nblend_v_w16_16bpc_c:     3192.1 ( 1.00x)   3182.3 ( 1.00x)   -0.31%\nblend_v_w16_16bpc_rvv:    349.2 ( 9.14x)    311.4 (10.22x)  -10.82%\nblend_v_w32_16bpc_c:     6259.2 ( 1.00x)   6257.8 ( 1.00x)   -0.02%\nblend_v_w32_16bpc_rvv:    350.2 (17.88x)    321.8 (19.44x)   -8.11%\n"
    },
    {
      "commit": "d2fa9466be0550ea42a0517c0ec0f2d5e465428c",
      "tree": "96bf37fa5494d4260ecdc298bea2f3730d7c3488",
      "parents": [
        "5f7f8ff5b62bc3944cf45da2e93923cc742f6529"
      ],
      "author": {
        "name": "Nathan E. Egge",
        "email": "unlord@xiph.org",
        "time": "Sat Nov 09 00:05:36 2024"
      },
      "committer": {
        "name": "Nathan E. Egge",
        "email": "unlord@xiph.org",
        "time": "Tue Dec 30 13:47:49 2025"
      },
      "message": "riscv64/mc16: Keep blend RVV operations in 16-bits\n\nKendryte K230                Before             After         Delta\n\nblend_w4_16bpc_c:         227.0 ( 1.00x)    227.1 ( 1.00x)    0.04%\nblend_w4_16bpc_rvv:        71.1 ( 3.19x)     73.2 ( 3.10x)    2.95%\nblend_w8_16bpc_c:         662.5 ( 1.00x)    662.7 ( 1.00x)    0.03%\nblend_w8_16bpc_rvv:       132.4 ( 5.00x)    115.0 ( 5.76x)  -13.14%\nblend_w16_16bpc_c:       2559.3 ( 1.00x)   2559.8 ( 1.00x)    0.02%\nblend_w16_16bpc_rvv:      416.1 ( 6.15x)    326.7 ( 7.83x)  -21.49%\nblend_w32_16bpc_c:       6483.9 ( 1.00x)   6484.5 ( 1.00x)    0.01%\nblend_w32_16bpc_rvv:     1029.1 ( 6.30x)    774.7 ( 8.37x)  -24.72%\n\nSpacemiT K1                  Before             After         Delta\n\nblend_w4_16bpc_c:         206.1 ( 1.00x)    207.0 ( 1.00x)    0.44%\nblend_w4_16bpc_rvv:        64.4 ( 3.20x)     69.5 ( 2.98x)    7.92%\nblend_w8_16bpc_c:         600.2 ( 1.00x)    600.9 ( 1.00x)    0.12%\nblend_w8_16bpc_rvv:       101.6 ( 5.91x)    106.9 ( 5.62x)    5.22%\nblend_w16_16bpc_c:       2316.0 ( 1.00x)   2316.4 ( 1.00x)    0.02%\nblend_w16_16bpc_rvv:      261.8 ( 8.85x)    229.1 (10.11x)  -12.49%\nblend_w32_16bpc_c:       5861.1 ( 1.00x)   5860.4 ( 1.00x)   -0.01%\nblend_w32_16bpc_rvv:      602.9 ( 9.72x)    475.3 (12.33x)  -21.16%\n\nBlackhole p100a              Before             After         Delta\n\nblend_w4_16bpc_c:         193.3 ( 1.00x)    191.3 ( 1.00x)   -1.03%\nblend_w4_16bpc_rvv:        66.3 ( 2.91x)     65.4 ( 2.92x)   -1.36%\nblend_w8_16bpc_c:         552.0 ( 1.00x)    549.8 ( 1.00x)   -0.40%\nblend_w8_16bpc_rvv:       100.5 ( 5.49x)     96.2 ( 5.71x)   -4.28%\nblend_w16_16bpc_c:       2112.5 ( 1.00x)   2111.8 ( 1.00x)   -0.03%\nblend_w16_16bpc_rvv:      190.3 (11.10x)    185.9 (11.36x)   -2.31%\nblend_w32_16bpc_c:       5417.5 ( 1.00x)   5416.2 ( 1.00x)   -0.02%\nblend_w32_16bpc_rvv:      290.3 (18.66x)    304.0 (17.82x)    4.72%\n"
    },
    {
      "commit": "5f7f8ff5b62bc3944cf45da2e93923cc742f6529",
      "tree": "a428ed2a0a25429a6ca1adb15dc1e0e3a8f3885f",
      "parents": [
        "a31e4bd75787c451301d66e888c76ada54544a0c"
      ],
      "author": {
        "name": "Kyle Siefring",
        "email": "kylesiefring@twoorioles.com",
        "time": "Mon Dec 29 03:48:27 2025"
      },
      "committer": {
        "name": "Kyle Siefring",
        "email": "kylesiefring@twoorioles.com",
        "time": "Mon Dec 29 03:48:27 2025"
      },
      "message": "cdef: consolidate left edge backup state\n"
    },
    {
      "commit": "a31e4bd75787c451301d66e888c76ada54544a0c",
      "tree": "2395988bf6c66906f985cbaf36fa41eb1b0ea127",
      "parents": [
        "bf82cfa74e5f609220a0692ecb9e7ace33d353f1"
      ],
      "author": {
        "name": "Nathan E. Egge",
        "email": "unlord@xiph.org",
        "time": "Wed Dec 24 00:30:45 2025"
      },
      "committer": {
        "name": "Nathan E. Egge",
        "email": "unlord@xiph.org",
        "time": "Wed Dec 24 01:08:19 2025"
      },
      "message": "riscv64/mc16: Add VLEN\u003d512 16bpc RVV blend_{,v} functions\n\nBlackhole p100a               Before             After         Delta\n\nblend_w4_16bpc_c:         193.1 ( 1.00x)     186.8 ( 1.00x)   -3.26%\nblend_w4_16bpc_rvv:        64.8 ( 2.98x)      62.8 ( 2.97x)   -3.09%\nblend_w8_16bpc_c:         551.0 ( 1.00x)     546.0 ( 1.00x)   -0.91%\nblend_w8_16bpc_rvv:        96.2 ( 5.73x)      93.4 ( 5.85x)   -2.91%\nblend_w16_16bpc_c:       2111.6 ( 1.00x)    2107.0 ( 1.00x)   -0.22%\nblend_w16_16bpc_rvv:      189.9 (11.12x)     189.6 (11.11x)   -0.16%\nblend_w32_16bpc_c:       5403.9 ( 1.00x)    5398.5 ( 1.00x)   -0.10%\nblend_w32_16bpc_rvv:      292.4 (18.48x)     291.5 (18.52x)   -0.31%\n\nblend_v_w2_16bpc_c:       209.1 ( 1.00x)     208.7 ( 1.00x)   -0.19%\nblend_v_w2_16bpc_rvv:     180.3 ( 1.16x)     180.4 ( 1.16x)    0.06%\nblend_v_w4_16bpc_c:       896.9 ( 1.00x)     898.5 ( 1.00x)    0.18%\nblend_v_w4_16bpc_rvv:     303.0 ( 2.96x)     302.5 ( 2.97x)   -0.17%\nblend_v_w8_16bpc_c:      1658.9 ( 1.00x)    1663.1 ( 1.00x)    0.25%\nblend_v_w8_16bpc_rvv:     303.0 ( 5.47x)     302.6 ( 5.50x)   -0.13%\nblend_v_w16_16bpc_c:     3186.0 ( 1.00x)    3182.7 ( 1.00x)   -0.10%\nblend_v_w16_16bpc_rvv:    313.1 (10.17x)     312.1 (10.20x)   -0.32%\nblend_v_w32_16bpc_c:     6253.9 ( 1.00x)    6257.0 ( 1.00x)    0.05%\nblend_v_w32_16bpc_rvv:    355.4 (17.60x)     353.2 (17.72x)   -0.62%\n"
    },
    {
      "commit": "bf82cfa74e5f609220a0692ecb9e7ace33d353f1",
      "tree": "cd4736cc3b1bb35628f1bd831ee7e8228f6d3706",
      "parents": [
        "549a6a098338c8316a03c80c16c023ca6f187aa8"
      ],
      "author": {
        "name": "Marvin Scholz",
        "email": "epirat07@gmail.com",
        "time": "Wed Dec 10 15:30:48 2025"
      },
      "committer": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Tue Dec 23 09:12:58 2025"
      },
      "message": "meson: clarify xxhash error message\n\nWe do not need to mention the details of the check in the message\nas those are already logged by meson when doing the check. Instead\nmention why this is an error to make it more clear it is related to\nthe xxhash_muxer option.\n\nFix #397\n"
    },
    {
      "commit": "549a6a098338c8316a03c80c16c023ca6f187aa8",
      "tree": "b4bdf1ab04021ed25274a35f4254d9334b884df9",
      "parents": [
        "38dd16e10856905ca0eb27ed0295f88a989d0c3a"
      ],
      "author": {
        "name": "Marvin Scholz",
        "email": "epirat07@gmail.com",
        "time": "Wed Dec 10 15:24:33 2025"
      },
      "committer": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Tue Dec 23 09:12:58 2025"
      },
      "message": "meson: leave tools subdir early when tools are disabled\n\nOnly dav1d_input_objs are needed by dav1dplay, so we can leave this\ndirectory early and avoid looking for xxhash when it is actually\nnever used.\n"
    },
    {
      "commit": "38dd16e10856905ca0eb27ed0295f88a989d0c3a",
      "tree": "d1a89dbf2ec565b09e8c7dbb2c3400abb9a2da39",
      "parents": [
        "43f3b8d33bae5179a134d1cd7c394063b1cebfcb"
      ],
      "author": {
        "name": "Nathan E. Egge",
        "email": "unlord@xiph.org",
        "time": "Mon Dec 22 20:28:18 2025"
      },
      "committer": {
        "name": "Nathan E. Egge",
        "email": "unlord@xiph.org",
        "time": "Mon Dec 22 23:20:23 2025"
      },
      "message": "riscv64/mc: Add VLEN\u003d512 8bpc RVV blend_{,h,v} functions\n\nBlackhole p100a               Before             After         Delta\n\nblend_w4_8bpc_c:          190.7 ( 1.00x)     189.3 ( 1.00x)   -0.73%\nblend_w4_8bpc_rvv:         61.2 ( 3.12x)      59.7 ( 3.17x)   -2.45%\nblend_w8_8bpc_c:          550.7 ( 1.00x)     547.0 ( 1.00x)   -0.67%\nblend_w8_8bpc_rvv:         91.0 ( 6.05x)      89.4 ( 6.12x)   -1.76%\nblend_w16_8bpc_c:        2112.4 ( 1.00x)    2106.8 ( 1.00x)   -0.27%\nblend_w16_8bpc_rvv:       177.1 (11.92x)     174.8 (12.05x)   -1.30%\nblend_w32_8bpc_c:        5423.8 ( 1.00x)    5393.8 ( 1.00x)   -0.55%\nblend_w32_8bpc_rvv:       233.5 (23.23x)     230.7 (23.38x)   -1.20%\n\nblend_h_w2_8bpc_c:        126.4 ( 1.00x)     128.0 ( 1.00x)    1.27%\nblend_h_w2_8bpc_rvv:       85.0 ( 1.49x)      81.2 ( 1.58x)   -4.47%\nblend_h_w4_8bpc_c:        221.2 ( 1.00x)     222.2 ( 1.00x)    0.45%\nblend_h_w4_8bpc_rvv:       84.3 ( 2.62x)      81.3 ( 2.73x)   -3.56%\nblend_h_w8_8bpc_c:        411.9 ( 1.00x)     413.3 ( 1.00x)    0.34%\nblend_h_w8_8bpc_rvv:       84.2 ( 4.89x)      81.0 ( 5.10x)   -3.80%\nblend_h_w16_8bpc_c:       792.6 ( 1.00x)     793.5 ( 1.00x)    0.11%\nblend_h_w16_8bpc_rvv:      84.5 ( 9.38x)      81.5 ( 9.74x)   -3.55%\nblend_h_w32_8bpc_c:      1577.7 ( 1.00x)    1578.8 ( 1.00x)    0.07%\nblend_h_w32_8bpc_rvv:      86.6 (18.21x)      83.5 (18.90x)   -3.58%\nblend_h_w64_8bpc_c:      3099.5 ( 1.00x)    3101.9 ( 1.00x)    0.08%\nblend_h_w64_8bpc_rvv:      98.4 (31.49x)      95.2 (32.58x)   -3.25%\nblend_h_w128_8bpc_c:     7496.9 ( 1.00x)    7498.1 ( 1.00x)    0.02%\nblend_h_w128_8bpc_rvv:    155.4 (48.24x)     151.5 (49.50x)   -2.51%\n\nblend_v_w2_8bpc_c:        202.9 ( 1.00x)     203.5 ( 1.00x)    0.30%\nblend_v_w2_8bpc_rvv:      173.5 ( 1.17x)     176.6 ( 1.15x)    1.79%\nblend_v_w4_8bpc_c:        842.3 ( 1.00x)     844.2 ( 1.00x)    0.23%\nblend_v_w4_8bpc_rvv:      295.9 ( 2.85x)     299.0 ( 2.82x)    1.05%\nblend_v_w8_8bpc_c:       1589.9 ( 1.00x)    1592.1 ( 1.00x)    0.14%\nblend_v_w8_8bpc_rvv:      296.2 ( 5.37x)     299.0 ( 5.32x)    0.95%\nblend_v_w16_8bpc_c:      3090.3 ( 1.00x)    3088.3 ( 1.00x)   -0.06%\nblend_v_w16_8bpc_rvv:     296.0 (10.44x)     299.4 (10.32x)    1.15%\nblend_v_w32_8bpc_c:      6080.2 ( 1.00x)    6081.5 ( 1.00x)    0.02%\nblend_v_w32_8bpc_rvv:     306.3 (19.85x)     309.3 (19.66x)    0.98%\n"
    },
    {
      "commit": "43f3b8d33bae5179a134d1cd7c394063b1cebfcb",
      "tree": "eb33ef52048d7dbc5e46dbac06b9100a2c94c1f7",
      "parents": [
        "165e9e251bb1005cbe4e80f2d2c59e0c62950c7e"
      ],
      "author": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Tue Dec 09 20:43:23 2025"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Tue Dec 09 21:02:52 2025"
      },
      "message": "checkasm: Group itx functions by their largest dimension\n\nThis reduces the number of itx reports per instruction set from\n19 to 5, which avoids excessively flooding the console output.\n"
    },
    {
      "commit": "165e9e251bb1005cbe4e80f2d2c59e0c62950c7e",
      "tree": "cd1f5c2b6c38fcaf03f35d335738dacb3ac0849b",
      "parents": [
        "84792e61c8e28faad16f9b951b5df69f76077661"
      ],
      "author": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Tue Dec 09 20:01:10 2025"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Tue Dec 09 20:01:10 2025"
      },
      "message": "checkasm: Only run DC-only itx tests for dct_dct\n"
    },
    {
      "commit": "84792e61c8e28faad16f9b951b5df69f76077661",
      "tree": "6f8a7833cca871fa7d6c2575842f761cbddd9a33",
      "parents": [
        "e60603a9f29a6bf1ffe4658e8bb7ff4fbdfba294"
      ],
      "author": {
        "name": "Cameron Cawley",
        "email": "ccawley2011@gmail.com",
        "time": "Thu Nov 27 20:39:00 2025"
      },
      "committer": {
        "name": "Cameron Cawley",
        "email": "ccawley2011@gmail.com",
        "time": "Thu Nov 27 20:49:55 2025"
      },
      "message": "dav1dplay: Print more error messages when window/context creation fails\n"
    },
    {
      "commit": "e60603a9f29a6bf1ffe4658e8bb7ff4fbdfba294",
      "tree": "95f258d979445f941d7837c7ffea34168f8f0b27",
      "parents": [
        "f3a1070f25dcd95cb947c7f387e9037b7c27200c"
      ],
      "author": {
        "name": "Cameron Cawley",
        "email": "ccawley2011@gmail.com",
        "time": "Thu Nov 27 20:30:25 2025"
      },
      "committer": {
        "name": "Cameron Cawley",
        "email": "ccawley2011@gmail.com",
        "time": "Thu Nov 27 20:49:41 2025"
      },
      "message": "dav1dplay: Ensure a newer OpenGL version is used when creating the context\n"
    },
    {
      "commit": "f3a1070f25dcd95cb947c7f387e9037b7c27200c",
      "tree": "1d453bd5de9566d4efe74bb9d7f57441340d947c",
      "parents": [
        "28b165940db5d0f490adb4b39c323608dd0ee717"
      ],
      "author": {
        "name": "Tristan Matthews",
        "email": "tmatth@videolan.org",
        "time": "Wed Nov 19 14:19:04 2025"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "henrik@gramner.com",
        "time": "Tue Nov 25 12:49:05 2025"
      },
      "message": "input/ivf: handle files with 0 frames\n\nThis avoids a subsequent division by zero.\n"
    },
    {
      "commit": "28b165940db5d0f490adb4b39c323608dd0ee717",
      "tree": "8137f9ae9b04aeeed5181b6308ca800f0b3ba298",
      "parents": [
        "04d588ee94d9b97922fc803a8087f6bc7fcc066c"
      ],
      "author": {
        "name": "Cameron Cawley",
        "email": "ccawley2011@gmail.com",
        "time": "Sat Nov 22 22:46:31 2025"
      },
      "committer": {
        "name": "Cameron Cawley",
        "email": "ccawley2011@gmail.com",
        "time": "Sat Nov 22 23:30:02 2025"
      },
      "message": "Use CLOCK_REALTIME for providing the initial seed value\n\nCLOCK_MONOTONIC is specified as returning time \"since an unspecified point in the past\". On RISC OS with UnixLib this returns the time since the last hard reset, but with SharedCLibrary this returns the time since the program started - combined with the coarse resolution used internally, this almost always results in a seed of 0.\n\nCLOCK_REALTIME meanwhile is specified as returning time since the epoch, so it should behave consistently across all platforms.\n"
    },
    {
      "commit": "04d588ee94d9b97922fc803a8087f6bc7fcc066c",
      "tree": "399c47b03c95bb0c462e9d1196e0dc56810cde3a",
      "parents": [
        "e7c280e4cde445589c875dbd97da61579483f605"
      ],
      "author": {
        "name": "Un1q32",
        "email": "joey.t.reinhart@gmail.com",
        "time": "Sat Jan 18 20:33:22 2025"
      },
      "committer": {
        "name": "Un1q32",
        "email": "joey.t.reinhart@gmail.com",
        "time": "Wed Nov 19 08:15:27 2025"
      },
      "message": "allow builds on systems without a supported memalign function\n"
    },
    {
      "commit": "e7c280e4cde445589c875dbd97da61579483f605",
      "tree": "54e046743eb3f215ca307c73637bbf6295b14b19",
      "parents": [
        "2eac05d6485dcf7f994df99cb7c5f8921026a3ca"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed Nov 12 21:19:22 2025"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed Nov 12 21:19:22 2025"
      },
      "message": "x86: Sync the latest upstream version of x86inc.asm\n"
    },
    {
      "commit": "2eac05d6485dcf7f994df99cb7c5f8921026a3ca",
      "tree": "3693260fa5a99029297b5eca27002c45f59fda69",
      "parents": [
        "6deac59d1ea499c0f486ab823588f53a2c742aa4"
      ],
      "author": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Tue Nov 11 16:04:25 2025"
      },
      "committer": {
        "name": "Martin Storsjö",
        "email": "martin@martin.st",
        "time": "Wed Nov 12 13:54:40 2025"
      },
      "message": "checkasm: arm: Use X() instead of inline ifdefs\n\nThis works fine when the referenced symbol has the same prefix\nas PRIVATE_PREFIX in the same file; otherwise we could also\ncreate a macro like X() that only prepends the extern symbol\nprefix but no symbol namespace prefix.\n"
    },
    {
      "commit": "6deac59d1ea499c0f486ab823588f53a2c742aa4",
      "tree": "ed935fd8f975f94b0908d12059dc3656e3d0da16",
      "parents": [
        "7ba6452b098ba3171550f086276536d8e931b50a"
      ],
      "author": {
        "name": "Sungjoon Moon",
        "email": "sumoon@seoulsaram.org",
        "time": "Thu Jul 03 11:56:12 2025"
      },
      "committer": {
        "name": "Sungjoon Moon",
        "email": "sumoon@seoulsaram.org",
        "time": "Thu Nov 06 15:51:38 2025"
      },
      "message": "riscv64/mc: Add w_mask functions\n\nK230:\ncheckasm: VLEN\u003d128 bits, using random seed 42\nRVV:\n - mc_8bpc.w_mask               [OK]\ncheckasm: all 18 tests passed\nw_mask_420_w4_8bpc_c:        845.1 ( 1.00x)\nw_mask_420_w4_8bpc_rvv:      313.1 ( 2.70x)\nw_mask_420_w8_8bpc_c:       2589.9 ( 1.00x)\nw_mask_420_w8_8bpc_rvv:      549.3 ( 4.72x)\nw_mask_420_w16_8bpc_c:      8389.9 ( 1.00x)\nw_mask_420_w16_8bpc_rvv:    1250.4 ( 6.71x)\nw_mask_420_w32_8bpc_c:     33485.7 ( 1.00x)\nw_mask_420_w32_8bpc_rvv:    4276.9 ( 7.83x)\nw_mask_420_w64_8bpc_c:     81934.2 ( 1.00x)\nw_mask_420_w64_8bpc_rvv:   11243.9 ( 7.29x)\nw_mask_420_w128_8bpc_c:   205865.8 ( 1.00x)\nw_mask_420_w128_8bpc_rvv:  28098.0 ( 7.33x)\nw_mask_422_w4_8bpc_c:        838.6 ( 1.00x)\nw_mask_422_w4_8bpc_rvv:      315.9 ( 2.65x)\nw_mask_422_w8_8bpc_c:       2576.4 ( 1.00x)\nw_mask_422_w8_8bpc_rvv:      564.2 ( 4.57x)\nw_mask_422_w16_8bpc_c:      8378.7 ( 1.00x)\nw_mask_422_w16_8bpc_rvv:    1305.4 ( 6.42x)\nw_mask_422_w32_8bpc_c:     33512.4 ( 1.00x)\nw_mask_422_w32_8bpc_rvv:    4487.6 ( 7.47x)\nw_mask_422_w64_8bpc_c:     82489.8 ( 1.00x)\nw_mask_422_w64_8bpc_rvv:   11895.3 ( 6.93x)\nw_mask_422_w128_8bpc_c:   207116.2 ( 1.00x)\nw_mask_422_w128_8bpc_rvv:  29541.4 ( 7.01x)\nw_mask_444_w4_8bpc_c:        822.7 ( 1.00x)\nw_mask_444_w4_8bpc_rvv:      265.3 ( 3.10x)\nw_mask_444_w8_8bpc_c:       2542.5 ( 1.00x)\nw_mask_444_w8_8bpc_rvv:      429.2 ( 5.92x)\nw_mask_444_w16_8bpc_c:      8290.8 ( 1.00x)\nw_mask_444_w16_8bpc_rvv:     965.7 ( 8.59x)\nw_mask_444_w32_8bpc_c:     33229.6 ( 1.00x)\nw_mask_444_w32_8bpc_rvv:    3289.2 (10.10x)\nw_mask_444_w64_8bpc_c:     81404.6 ( 1.00x)\nw_mask_444_w64_8bpc_rvv:    9126.6 ( 8.92x)\nw_mask_444_w128_8bpc_c:   204438.4 ( 1.00x)\nw_mask_444_w128_8bpc_rvv:  22424.9 ( 9.12x)\n\nSpacemit K1:\ncheckasm: VLEN\u003d256 bits, using random seed 42\nRVV:\n - mc_8bpc.w_mask               [OK]\ncheckasm: all 18 tests passed\nw_mask_420_w4_8bpc_c:        747.9 ( 1.00x)\nw_mask_420_w4_8bpc_rvv:      290.4 ( 2.58x)\nw_mask_420_w8_8bpc_c:       2312.3 ( 1.00x)\nw_mask_420_w8_8bpc_rvv:      478.9 ( 4.83x)\nw_mask_420_w16_8bpc_c:      7509.3 ( 1.00x)\nw_mask_420_w16_8bpc_rvv:     885.2 ( 8.48x)\nw_mask_420_w32_8bpc_c:     30087.8 ( 1.00x)\nw_mask_420_w32_8bpc_rvv:    2595.6 (11.59x)\nw_mask_420_w64_8bpc_c:     72313.0 ( 1.00x)\nw_mask_420_w64_8bpc_rvv:    6020.9 (12.01x)\nw_mask_420_w128_8bpc_c:   179297.0 ( 1.00x)\nw_mask_420_w128_8bpc_rvv:  15659.1 (11.45x)\nw_mask_422_w4_8bpc_c:        735.0 ( 1.00x)\nw_mask_422_w4_8bpc_rvv:      299.0 ( 2.46x)\nw_mask_422_w8_8bpc_c:       2285.6 ( 1.00x)\nw_mask_422_w8_8bpc_rvv:      488.5 ( 4.68x)\nw_mask_422_w16_8bpc_c:      7459.3 ( 1.00x)\nw_mask_422_w16_8bpc_rvv:     946.3 ( 7.88x)\nw_mask_422_w32_8bpc_c:     29996.7 ( 1.00x)\nw_mask_422_w32_8bpc_rvv:    2812.7 (10.66x)\nw_mask_422_w64_8bpc_c:     71809.4 ( 1.00x)\nw_mask_422_w64_8bpc_rvv:    6253.7 (11.48x)\nw_mask_422_w128_8bpc_c:   178081.9 ( 1.00x)\nw_mask_422_w128_8bpc_rvv:  16087.8 (11.07x)\nw_mask_444_w4_8bpc_c:        726.2 ( 1.00x)\nw_mask_444_w4_8bpc_rvv:      255.9 ( 2.84x)\nw_mask_444_w8_8bpc_c:       2250.7 ( 1.00x)\nw_mask_444_w8_8bpc_rvv:      403.9 ( 5.57x)\nw_mask_444_w16_8bpc_c:      7341.4 ( 1.00x)\nw_mask_444_w16_8bpc_rvv:     744.7 ( 9.86x)\nw_mask_444_w32_8bpc_c:     29658.4 ( 1.00x)\nw_mask_444_w32_8bpc_rvv:    2295.9 (12.92x)\nw_mask_444_w64_8bpc_c:     70695.9 ( 1.00x)\nw_mask_444_w64_8bpc_rvv:    4879.0 (14.49x)\nw_mask_444_w128_8bpc_c:   175483.6 ( 1.00x)\nw_mask_444_w128_8bpc_rvv:  13021.9 (13.48x)\n"
    },
    {
      "commit": "7ba6452b098ba3171550f086276536d8e931b50a",
      "tree": "43060be0a7b8a7e4f8f308a89e6b4c2d3dc59f76",
      "parents": [
        "7c047924803e5a5bb885787ee97a98de75299dd8"
      ],
      "author": {
        "name": "Sungjoon Moon",
        "email": "sumoon@seoulsaram.org",
        "time": "Thu Sep 04 23:15:31 2025"
      },
      "committer": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Wed Nov 05 08:13:31 2025"
      },
      "message": "Unroll only for top copy\n\nUnrolling bottom copy causes error when bottom_ext isn\u0027t even number\nFor center copy, there\u0027s no enough register to unroll\n"
    },
    {
      "commit": "7c047924803e5a5bb885787ee97a98de75299dd8",
      "tree": "643f35c8c210dbb56ff6cbd5921947355c086662",
      "parents": [
        "d26f298ce2e09b68e495ae991b70498dea522642"
      ],
      "author": {
        "name": "Sungjoon Moon",
        "email": "sumoon@seoulsaram.org",
        "time": "Wed Aug 13 13:30:15 2025"
      },
      "committer": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Wed Nov 05 08:13:31 2025"
      },
      "message": "riscv64/mc: Add emu_edge function\n\nK230:\ncheckasm: VLEN\u003d128 bits, using random seed 42\nRVV:\n - mc_8bpc.emu_edge             [OK]\ncheckasm: all 6 tests passed\nemu_edge_w4_8bpc_c:        638.8 ( 1.00x)\nemu_edge_w4_8bpc_rvv:      211.9 ( 3.01x)\nemu_edge_w8_8bpc_c:        944.4 ( 1.00x)\nemu_edge_w8_8bpc_rvv:      230.0 ( 4.11x)\nemu_edge_w16_8bpc_c:      1447.9 ( 1.00x)\nemu_edge_w16_8bpc_rvv:     287.6 ( 5.03x)\nemu_edge_w32_8bpc_c:      3047.0 ( 1.00x)\nemu_edge_w32_8bpc_rvv:     775.8 ( 3.93x)\nemu_edge_w64_8bpc_c:      5440.1 ( 1.00x)\nemu_edge_w64_8bpc_rvv:    1504.2 ( 3.62x)\nemu_edge_w128_8bpc_c:    12943.4 ( 1.00x)\nemu_edge_w128_8bpc_rvv:   4782.5 ( 2.71x)\n\nSpacemit K1:\ncheckasm: VLEN\u003d256 bits, using random seed 42\nRVV:\n - mc_8bpc.emu_edge             [OK]\ncheckasm: all 6 tests passed\nemu_edge_w4_8bpc_c:        562.4 ( 1.00x)\nemu_edge_w4_8bpc_rvv:      202.6 ( 2.78x)\nemu_edge_w8_8bpc_c:        695.0 ( 1.00x)\nemu_edge_w8_8bpc_rvv:      220.1 ( 3.16x)\nemu_edge_w16_8bpc_c:      1271.2 ( 1.00x)\nemu_edge_w16_8bpc_rvv:     251.3 ( 5.06x)\nemu_edge_w32_8bpc_c:      2772.4 ( 1.00x)\nemu_edge_w32_8bpc_rvv:     587.8 ( 4.72x)\nemu_edge_w64_8bpc_c:      4917.2 ( 1.00x)\nemu_edge_w64_8bpc_rvv:    1115.0 ( 4.41x)\nemu_edge_w128_8bpc_c:    12634.6 ( 1.00x)\nemu_edge_w128_8bpc_rvv:   3232.6 ( 3.91x)\n"
    },
    {
      "commit": "d26f298ce2e09b68e495ae991b70498dea522642",
      "tree": "97b9505665f0fc039efcd152e5e70bcf737a10c7",
      "parents": [
        "f9799593670ed656b89654343fc16692f8f19058"
      ],
      "author": {
        "name": "Mikołaj Zalewski",
        "email": "mikolaj@zalewski.pl",
        "time": "Tue Sep 30 20:01:56 2025"
      },
      "committer": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Wed Nov 05 07:55:30 2025"
      },
      "message": "ipred_v implementation in RISC-V assembly\n"
    },
    {
      "commit": "f9799593670ed656b89654343fc16692f8f19058",
      "tree": "124c5c35bc40833015d9e73f0d2a3b71e22eb7fb",
      "parents": [
        "43a7ac13a5ea3c353f000b8a1a6e173f280da4fa"
      ],
      "author": {
        "name": "Sungjoon Moon",
        "email": "sumoon@seoulsaram.org",
        "time": "Fri Jul 25 16:55:02 2025"
      },
      "committer": {
        "name": "Sungjoon Moon",
        "email": "sumoon@seoulsaram.org",
        "time": "Sat Nov 01 16:33:33 2025"
      },
      "message": "Small optimization, there\u0027s no actual meaningful difference\n\nw_mask_420_w4_8bpc_c:               310.5 ( 1.00x)\nw_mask_420_w4_16bpc_c:              325.7 ( 1.00x)\nw_mask_420_w8_8bpc_c:               978.7 ( 1.00x)\nw_mask_420_w8_16bpc_c:              998.5 ( 1.00x)\nw_mask_420_w16_8bpc_c:             3187.6 ( 1.00x)\nw_mask_420_w16_16bpc_c:            3233.2 ( 1.00x)\nw_mask_420_w32_8bpc_c:            12658.8 ( 1.00x)\nw_mask_420_w32_16bpc_c:           12686.1 ( 1.00x)\nw_mask_420_w64_8bpc_c:            31036.4 ( 1.00x)\nw_mask_420_w64_16bpc_c:           30643.1 ( 1.00x)\nw_mask_420_w128_8bpc_c:           76785.7 ( 1.00x)\nw_mask_420_w128_16bpc_c:          77490.5 ( 1.00x)\nw_mask_422_w4_8bpc_c:               325.2 ( 1.00x)\nw_mask_422_w4_16bpc_c:              342.0 ( 1.00x)\nw_mask_422_w8_8bpc_c:              1002.3 ( 1.00x)\nw_mask_422_w8_16bpc_c:             1032.4 ( 1.00x)\nw_mask_422_w16_8bpc_c:             3267.8 ( 1.00x)\nw_mask_422_w16_16bpc_c:            3343.7 ( 1.00x)\nw_mask_422_w32_8bpc_c:            12865.4 ( 1.00x)\nw_mask_422_w32_16bpc_c:           12998.5 ( 1.00x)\nw_mask_422_w64_8bpc_c:            31112.7 ( 1.00x)\nw_mask_422_w64_16bpc_c:           31455.4 ( 1.00x)\nw_mask_422_w128_8bpc_c:           78796.5 ( 1.00x)\nw_mask_422_w128_16bpc_c:          78100.7 ( 1.00x)\nw_mask_444_w4_8bpc_c:               315.1 ( 1.00x)\nw_mask_444_w4_16bpc_c:              336.8 ( 1.00x)\nw_mask_444_w8_8bpc_c:               985.1 ( 1.00x)\nw_mask_444_w8_16bpc_c:             1014.9 ( 1.00x)\nw_mask_444_w16_8bpc_c:             3216.7 ( 1.00x)\nw_mask_444_w16_16bpc_c:            3182.6 ( 1.00x)\nw_mask_444_w32_8bpc_c:            12733.8 ( 1.00x)\nw_mask_444_w32_16bpc_c:           12432.0 ( 1.00x)\nw_mask_444_w64_8bpc_c:            31156.2 ( 1.00x)\nw_mask_444_w64_16bpc_c:           31615.3 ( 1.00x)\nw_mask_444_w128_8bpc_c:           76031.1 ( 1.00x)\nw_mask_444_w128_16bpc_c:          76989.2 ( 1.00x)\n"
    },
    {
      "commit": "43a7ac13a5ea3c353f000b8a1a6e173f280da4fa",
      "tree": "aa6d525c21da3401b46a32919f2a9a8c37b79ee1",
      "parents": [
        "c720f4d3556a01916324aea155555d3efba842e8"
      ],
      "author": {
        "name": "Sungjoon Moon",
        "email": "sumoon@seoulsaram.org",
        "time": "Thu Jul 24 05:06:31 2025"
      },
      "committer": {
        "name": "Sungjoon Moon",
        "email": "sumoon@seoulsaram.org",
        "time": "Sat Nov 01 16:33:33 2025"
      },
      "message": "mc_tmpl: optimize w_mask with distributive law\n\nReduced register usages (maybe) and improved speed (~7%)\nTested on AMD HX370\n\nFunction                  |       Before |        After |         % |\n---------------------------------------------------------------------\nw_mask_420_w4_8bpc_c      |        335.3 |        312.6 |      6.78 |\nw_mask_420_w4_16bpc_c     |        354.5 |        326.4 |      7.94 |\nw_mask_420_w8_8bpc_c      |       1056.4 |        979.3 |      7.30 |\nw_mask_420_w8_16bpc_c     |       1068.2 |        996.4 |      6.73 |\nw_mask_420_w16_8bpc_c     |       3416.1 |       3169.6 |      7.22 |\nw_mask_420_w16_16bpc_c    |       3435.4 |       3218.0 |      6.34 |\nw_mask_420_w32_8bpc_c     |      13479.7 |      12550.0 |      6.91 |\nw_mask_420_w32_16bpc_c    |      13833.3 |      12632.7 |      8.68 |\nw_mask_420_w64_8bpc_c     |      32557.6 |      30166.7 |      7.35 |\nw_mask_420_w64_16bpc_c    |      32529.8 |      30407.0 |      6.54 |\nw_mask_420_w128_8bpc_c    |      81802.8 |      75856.5 |      7.27 |\nw_mask_420_w128_16bpc_c   |      81187.8 |      76133.9 |      6.23 |\nw_mask_422_w4_8bpc_c      |        331.3 |        327.1 |      1.27 |\nw_mask_422_w4_16bpc_c     |        365.1 |        341.2 |      6.53 |\nw_mask_422_w8_8bpc_c      |       1052.7 |       1003.5 |      4.68 |\nw_mask_422_w8_16bpc_c     |       1095.9 |       1022.6 |      6.69 |\nw_mask_422_w16_8bpc_c     |       3479.8 |       3248.8 |      6.67 |\nw_mask_422_w16_16bpc_c    |       3504.2 |       3279.5 |      6.41 |\nw_mask_422_w32_8bpc_c     |      13702.5 |      12801.4 |      6.58 |\nw_mask_422_w32_16bpc_c    |      13738.9 |      12830.5 |      6.61 |\nw_mask_422_w64_8bpc_c     |      32517.9 |      30818.0 |      5.23 |\nw_mask_422_w64_16bpc_c    |      33199.4 |      30865.3 |      7.03 |\nw_mask_422_w128_8bpc_c    |      82867.1 |      77978.7 |      5.90 |\nw_mask_422_w128_16bpc_c   |      84937.9 |      77629.8 |      8.60 |\nw_mask_444_w4_8bpc_c      |        340.4 |        315.6 |      7.28 |\nw_mask_444_w4_16bpc_c     |        361.6 |        335.0 |      7.35 |\nw_mask_444_w8_8bpc_c      |       1057.6 |        988.9 |      6.50 |\nw_mask_444_w8_16bpc_c     |       1104.3 |       1030.8 |      6.67 |\nw_mask_444_w16_8bpc_c     |       3414.4 |       3180.7 |      6.85 |\nw_mask_444_w16_16bpc_c    |       3477.4 |       3182.4 |      8.48 |\nw_mask_444_w32_8bpc_c     |      13455.8 |      12469.4 |      7.33 |\nw_mask_444_w32_16bpc_c    |      13666.9 |      12378.8 |      9.42 |\nw_mask_444_w64_8bpc_c     |      33587.2 |      31239.7 |      7.00 |\nw_mask_444_w64_16bpc_c    |      34283.3 |      30969.5 |      9.67 |\nw_mask_444_w128_8bpc_c    |      82084.2 |      76206.3 |      7.16 |\nw_mask_444_w128_16bpc_c   |      82649.4 |      75166.4 |      8.91 |\n---------------------------------------------------------------------\navg                       |            - |            - |      6.95 |\n"
    },
    {
      "commit": "c720f4d3556a01916324aea155555d3efba842e8",
      "tree": "4807d085c228e04cb48c2d9b607cb312147b08fb",
      "parents": [
        "fcbc3d1b93f91c709293ed9faea8b7cbcac9030b"
      ],
      "author": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Mon Oct 27 18:40:41 2025"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Mon Oct 27 19:44:47 2025"
      },
      "message": "cli: Fix input_open() memory leak on fopen() failure\n"
    },
    {
      "commit": "fcbc3d1b93f91c709293ed9faea8b7cbcac9030b",
      "tree": "5186347aef2bdd7d4812c418be7e6416153d5352",
      "parents": [
        "f6965b7f12c81eecf49efaf6abb7ecd80885987a"
      ],
      "author": {
        "name": "Niklas Haas",
        "email": "git@haasn.dev",
        "time": "Wed Oct 15 14:38:52 2025"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "henrik@gramner.com",
        "time": "Mon Oct 20 13:50:43 2025"
      },
      "message": "loopfilter: align Av1FilterLUT struct members\n\nFixes a bug where the Av1FilterLUT instance used in checkasm was not\naligned properly.\n\nIn theory, the first ALIGN macro should imply the latter alignments as well,\nbut I decided to mark all fields as explicitly aligned for clarity; and\nbecause that\u0027s the precedent set in other headers.\n\nAllows us to drop the ALIGN macro on the other usage of this struct.\n"
    },
    {
      "commit": "f6965b7f12c81eecf49efaf6abb7ecd80885987a",
      "tree": "48738ed4a80d911e4bebc230c97e8e1a966c78d9",
      "parents": [
        "0bc6bd93417179cd0c30fac40d2fd11aa29c8523"
      ],
      "author": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Mon Oct 20 09:20:53 2025"
      },
      "committer": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Mon Oct 20 09:20:53 2025"
      },
      "message": "Update NEWS for nasm 3.00\n"
    },
    {
      "commit": "0bc6bd93417179cd0c30fac40d2fd11aa29c8523",
      "tree": "eae03e2fc5d6c72efbf59bdbc2f0890e3ae2cc6d",
      "parents": [
        "af5cf2b1e7f03d6f6de84477e1ca8eed1f3eb03d"
      ],
      "author": {
        "name": "Adam Sampson",
        "email": "ats@offog.org",
        "time": "Sun Oct 05 13:03:24 2025"
      },
      "committer": {
        "name": "Adam Sampson",
        "email": "ats@offog.org",
        "time": "Sun Oct 05 13:03:24 2025"
      },
      "message": "x86: put the memory operand first for test\n\nOlder versions of nasm allowed the operands in either order, but nasm\n3.00 requires the memory operand to be first as per the spec.\n"
    },
    {
      "commit": "af5cf2b1e7f03d6f6de84477e1ca8eed1f3eb03d",
      "tree": "9d676b4a82b8655592824715cc4cd79853832823",
      "parents": [
        "0558c332ca3563248969be0b754de553a187369d"
      ],
      "author": {
        "name": "Khalid Masum",
        "email": "khalid.masum.92@gmail.com",
        "time": "Thu Jul 17 12:31:02 2025"
      },
      "committer": {
        "name": "Ronald S. Bultje",
        "email": "rsbultje@gmail.com",
        "time": "Sun Aug 24 17:26:19 2025"
      },
      "message": "Readme: improve consitency of compilation steps\n\nCurrently compilation steps use two different types of methods, manual\nbuild directory creation and using meson setup build to directly create\nthe build directory. This potential makes the new user who wants to\nbuild docs or cross compile confused about which step of compilation the\nuser is in. This patch aims to make these steps clear.\n"
    },
    {
      "commit": "0558c332ca3563248969be0b754de553a187369d",
      "tree": "9575afb7c62d44025d95999d8c70a408c0a9c604",
      "parents": [
        "04faac69004ac951b74ac7fea331f3790ec043b8"
      ],
      "author": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Mon Aug 11 23:21:15 2025"
      },
      "committer": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Mon Aug 11 23:23:20 2025"
      },
      "message": "On the road to 1.5.2\n\nSigned-off-by: Jean-Baptiste Kempf \u003cjb@videolan.org\u003e\n"
    },
    {
      "commit": "04faac69004ac951b74ac7fea331f3790ec043b8",
      "tree": "27b091d094b52ad5ac12d103d45040a1824b84de",
      "parents": [
        "716164239ad6e6b11c5dcdaa3fb540309d499833"
      ],
      "author": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Sat Mar 29 09:43:45 2025"
      },
      "committer": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Mon Aug 11 23:23:14 2025"
      },
      "message": "Update COPYING years\n"
    },
    {
      "commit": "716164239ad6e6b11c5dcdaa3fb540309d499833",
      "tree": "675f65ab79cf84435ed0f8fa66a86252ba2df9f4",
      "parents": [
        "fa30043ba0374e48e1588e9570e68d63a8ad76bb"
      ],
      "author": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Mon Jul 07 13:51:56 2025"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Wed Jul 09 12:24:07 2025"
      },
      "message": "obu: Improve short-signaling reference frame index calculation\n\nReduces code size a fair amount, and with some loop unrolling\nby the compiler the code becomes nearly branchless.\n"
    },
    {
      "commit": "fa30043ba0374e48e1588e9570e68d63a8ad76bb",
      "tree": "1ee1d450b8d7809ff2151a7d64abf62d10352191",
      "parents": [
        "c3f3a7e567b9dd5b7d5dcef9c6593ef297a6dcff"
      ],
      "author": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Mon Jul 07 13:51:54 2025"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Mon Jul 07 14:00:30 2025"
      },
      "message": "obu: Remove redundant zeroing in frame header parsing\n\nThe Dav1dFrameHeader struct is already zero-initialized,\nso zeroing individual values a second time is redundant.\n"
    },
    {
      "commit": "c3f3a7e567b9dd5b7d5dcef9c6593ef297a6dcff",
      "tree": "9a59dae8b8d19845eb2d8f6349946d1cc02694eb",
      "parents": [
        "583e8e02eb20efb4ab194f0603300780beaee9ac"
      ],
      "author": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Tue Jul 01 16:24:45 2025"
      },
      "committer": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Tue Jul 01 16:35:31 2025"
      },
      "message": "CI: Check `--frametimes` with msan\n\nThis would have caught 583e8e02eb20efb4ab194f0603300780beaee9ac.\n"
    },
    {
      "commit": "583e8e02eb20efb4ab194f0603300780beaee9ac",
      "tree": "50f1d9e7ada633dbf6ccbb738ab53dfc2409fa6b",
      "parents": [
        "a86d561b7913dfff09522feebe44b22c3219a373"
      ],
      "author": {
        "name": "Ronald S. Bultje",
        "email": "rsbultje@gmail.com",
        "time": "Tue Jul 01 12:23:38 2025"
      },
      "committer": {
        "name": "Ronald S. Bultje",
        "email": "rsbultje@gmail.com",
        "time": "Tue Jul 01 12:26:31 2025"
      },
      "message": "tools/dav1d: initialize elapsed\n\nBased on the following comment on IRC:\n\"\u003caconz2\u003e the `elapsed` variable in main() is read uninitialized in\n synchronize and makes the first frametime with --frametime incorrect\n I think. Should be initialized to 0\"\n\nConfirmed that after initializing to zero, the first line in the file\ngenerated by --frametime is reasonable.\n"
    },
    {
      "commit": "a86d561b7913dfff09522feebe44b22c3219a373",
      "tree": "213c658fa9334c1975a2ffc46201947313ad3df9",
      "parents": [
        "9eea4fe842f91899d23f9cffe6286e965c7744cd"
      ],
      "author": {
        "name": "yuanhecai",
        "email": "yuanhecai@loongson.cn",
        "time": "Wed Jun 25 08:10:50 2025"
      },
      "committer": {
        "name": "yuanhecai",
        "email": "yuanhecai@loongson.cn",
        "time": "Wed Jun 25 09:25:27 2025"
      },
      "message": "loongarch: rename looprestoration_tmpl.c\n\nRename loongarch/looprestoration_tmpl.c to loongarch/looprestoration_inner.c.\nCompiling both src/looprestoration_tmpl.c and loongarch/looprestoration_tmpl.c\nproduces looprestoration_tmpl.c.o, causing a conflict during linking.\n"
    },
    {
      "commit": "9eea4fe842f91899d23f9cffe6286e965c7744cd",
      "tree": "2cbd8caa11de2e508661b7e11f201fe93863b265",
      "parents": [
        "b3c5848f7f88407c540d9bd90fb12dc8be6bee2f"
      ],
      "author": {
        "name": "yuanhecai",
        "email": "yuanhecai@loongson.cn",
        "time": "Wed Jun 25 04:35:18 2025"
      },
      "committer": {
        "name": "yuanhecai",
        "email": "yuanhecai@loongson.cn",
        "time": "Wed Jun 25 09:25:21 2025"
      },
      "message": "loongarch: Fix Clang compilation errors\n"
    },
    {
      "commit": "b3c5848f7f88407c540d9bd90fb12dc8be6bee2f",
      "tree": "d646850cb3298686aeefe519ac2b47135fe12e99",
      "parents": [
        "63bf075aada99afa112f84c61ddc9cead8ce04d3"
      ],
      "author": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Sat Jun 07 20:15:32 2025"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Sat Jun 07 20:36:38 2025"
      },
      "message": "loongarch: Use hidden visibility for asm functions\n"
    },
    {
      "commit": "63bf075aada99afa112f84c61ddc9cead8ce04d3",
      "tree": "45ee519d72317d478a92408c3b15555447a557fe",
      "parents": [
        "fe0ab51460246a9915795d7210f54555472da59b"
      ],
      "author": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Mon Jun 02 13:54:28 2025"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Mon Jun 02 13:54:28 2025"
      },
      "message": "recon: Fix level index calculation optimization for 2D transforms\n\nDue to a typo this was never actually enabled since being added in\n5ef6b24. As a result the slow path was always being used.\n"
    },
    {
      "commit": "fe0ab51460246a9915795d7210f54555472da59b",
      "tree": "bc53a6a49dab5f7c3320449964f956249a556d79",
      "parents": [
        "29efbb949639213271fe9b96b1e3cc1480a73345"
      ],
      "author": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Thu May 29 17:31:07 2025"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Thu May 29 17:38:49 2025"
      },
      "message": "Use exact-width integer min/max defines where appropriate\n\nImproves support for niche systems with uncommon integer sizes.\n"
    },
    {
      "commit": "29efbb949639213271fe9b96b1e3cc1480a73345",
      "tree": "5eb8752512ef1898553aed39de11c95af68be7b0",
      "parents": [
        "68dc20035b74d9405f649bcc547f5f23f8637f02"
      ],
      "author": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Mon May 26 16:47:16 2025"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Wed May 28 17:01:45 2025"
      },
      "message": "refmvs: Shrink mfmv_ref arrays\n\nIncludes updates to load_tmvs() asm implementations.\n"
    },
    {
      "commit": "68dc20035b74d9405f649bcc547f5f23f8637f02",
      "tree": "c82ed862c1d4a355aa99c0840dea05c16adcd50a",
      "parents": [
        "7889ac760317c929c0a6d3cc1ca87b4bef0f2613"
      ],
      "author": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Mon May 26 14:01:44 2025"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Wed May 28 17:01:45 2025"
      },
      "message": "refmvs: Shrink refpoc arrays\n"
    },
    {
      "commit": "7889ac760317c929c0a6d3cc1ca87b4bef0f2613",
      "tree": "c1cb29af3f9443444e069f71c3bb14e056fa1c80",
      "parents": [
        "8d956180934f16244bdb58b39175824775125e55"
      ],
      "author": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Wed May 28 00:02:01 2025"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "gramner@twoorioles.com",
        "time": "Wed May 28 00:06:08 2025"
      },
      "message": "cdf: Remove unused eob_hi_bit entries\n"
    },
    {
      "commit": "8d956180934f16244bdb58b39175824775125e55",
      "tree": "50933961732d02da827cbd7f183903afd17be118",
      "parents": [
        "edeac873c4e461bb64bbdea3cd7c440080fcbc5f"
      ],
      "author": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Sat Mar 08 19:45:47 2025"
      },
      "committer": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Mon Mar 10 15:40:35 2025"
      },
      "message": "CI: Build \u0027-mavx\u0027 code as debugoptimized\n\nWorkaround a GCC 14 bug where it does not insert `vzeroupper` in C code\nbuilt without at least \u0027-O2\u0027.\n"
    },
    {
      "commit": "edeac873c4e461bb64bbdea3cd7c440080fcbc5f",
      "tree": "f291225b0fb865951e89ce8e4cf00a3cdbd94e26",
      "parents": [
        "1d0cda02a68b86dcf015dbeae8ee9ef636f9f119"
      ],
      "author": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Wed Mar 05 20:58:13 2025"
      },
      "committer": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Mon Mar 10 15:40:35 2025"
      },
      "message": "CI: Update images\n"
    },
    {
      "commit": "1d0cda02a68b86dcf015dbeae8ee9ef636f9f119",
      "tree": "874ce8167b497e9061724de3e904a243d4bb6d24",
      "parents": [
        "caef968117eb2d6d7224e8d29ec67ff79b0025f8"
      ],
      "author": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Sat Jan 25 18:29:11 2025"
      },
      "committer": {
        "name": "Matthias Dressel",
        "email": "code@deadcode.eu",
        "time": "Wed Mar 05 20:58:24 2025"
      },
      "message": "CI: Update ppc64le image\n\nSince there seems to be a problem with gcc-14 stay on gcc-13 for now.\n"
    },
    {
      "commit": "caef968117eb2d6d7224e8d29ec67ff79b0025f8",
      "tree": "b16539468f97f147140689bf99918a892262c603",
      "parents": [
        "7d4b789f55389dad1820d6caf6a650038dad06e2"
      ],
      "author": {
        "name": "Gianni Rosato",
        "email": "gianni@twoorioles.com",
        "time": "Fri Feb 28 14:28:46 2025"
      },
      "committer": {
        "name": "Gianni Rosato",
        "email": "gianni@twoorioles.com",
        "time": "Fri Feb 28 14:28:46 2025"
      },
      "message": "refactor: simplify deltaq bitstream parsing logic\n"
    },
    {
      "commit": "7d4b789f55389dad1820d6caf6a650038dad06e2",
      "tree": "94febb20006d9b8c2572d2ba5cae9132f8ed1ef5",
      "parents": [
        "42b2b24fb8819f1ed3643aa9cf2a62f03868e3aa"
      ],
      "author": {
        "name": "Pranav Kant",
        "email": "prka@google.com",
        "time": "Fri Feb 21 15:55:00 2025"
      },
      "committer": {
        "name": "Henrik Gramner",
        "email": "henrik@gramner.com",
        "time": "Fri Feb 21 15:55:00 2025"
      },
      "message": "Mark C globals with small code model\n\nWe have new option in clang (https://github.com/llvm/llvm-project/pull/124834)\nto mark globals to be allocated in non-large sections. We can mark all globals\nthat are referenced from hardcoded assembly (which implicitly references globals\nassuming they are in non-large sections) with this attribute to avoid running\ninto problems when dav1d is built with -mcmodel\u003dmedium with clang.\n"
    },
    {
      "commit": "42b2b24fb8819f1ed3643aa9cf2a62f03868e3aa",
      "tree": "6d53a2a26291449a43244e2f3163e56ddecfe79e",
      "parents": [
        "40ff2a12515e60853fb11da67ab04cdb5a08dea5"
      ],
      "author": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Sun Dec 15 20:16:21 2024"
      },
      "committer": {
        "name": "Jean-Baptiste Kempf",
        "email": "jb@videolan.org",
        "time": "Sun Jan 19 21:33:54 2025"
      },
      "message": "Update NEWS for 1.5.1\n"
    },
    {
      "commit": "40ff2a12515e60853fb11da67ab04cdb5a08dea5",
      "tree": "1cf3f9f773dad86deb4f0e775d45b84df9a30325",
      "parents": [
        "edb16889d16f5e13161b6e8f7a839cd82d7d655d"
      ],
      "author": {
        "name": "Wan-Teh Chang",
        "email": "wtc@google.com",
        "time": "Fri Jan 10 01:54:41 2025"
      },
      "committer": {
        "name": "Ronald S. Bultje",
        "email": "rsbultje@gmail.com",
        "time": "Fri Jan 10 01:54:41 2025"
      },
      "message": "Include \u003cstring.h\u003e for memcpy()\n"
    },
    {
      "commit": "edb16889d16f5e13161b6e8f7a839cd82d7d655d",
      "tree": "c9bd07056478fd76fba5a9771477bced7a6b4180",
      "parents": [
        "b129d9f2cb897cedba77a60bd5e3621c14ee5484"
      ],
      "author": {
        "name": "Arpad Panyik",
        "email": "Arpad.Panyik@arm.com",
        "time": "Wed Dec 18 13:25:06 2024"
      },
      "committer": {
        "name": "Arpad Panyik",
        "email": "Arpad.Panyik@arm.com",
        "time": "Thu Jan 09 13:59:31 2025"
      },
      "message": "AArch64: Add Neon implementation of load_tmvs\n\nThis patch adds a vectorised variant of the mv_projection calculation\nand a faster initialisation of motion vectors for load_tmvs_neon.\n\nCheckasm uplifts after this patch on some Neoverse and Cortex CPU cores\ncompared to the C reference compiled with GCC-13 and Clang-19:\n\n                     GCC    Clang\n AWS Graviton 4:   1.62x    1.59x\n Cortex-X4:        1.45x    1.46x\n Cortex-X3:        1.68x    1.69x\n Cortex-X1:        1.55x    1.52x\n Cortex-A720:      1.54x    1.57x\n Cortex-A715:      1.47x    1.55x\n Cortex-A78:       1.21x    1.18x\n Cortex-A76:       1.38x    1.37x\n Cortex-A72:       1.08x    1.11x\n Cortex-A520:      0.97x    1.18x\n Cortex-A510:      0.99x    1.14x\n Cortex-A55:       1.16x    1.23x\n\nThis patch increases the .text by ~660 bytes, but smaller than the\nreference implementation by about 0.5 KiB.\n"
    }
  ],
  "next": "b129d9f2cb897cedba77a60bd5e3621c14ee5484"
}
