]> git.codecow.com Git - Monocypher.git/commitdiff
Add explicit crypto_wipe() test
authorLoup Vaillant <loup@loup-vaillant.fr>
Mon, 1 May 2023 11:16:38 +0000 (13:16 +0200)
committerLoup Vaillant <loup@loup-vaillant.fr>
Mon, 1 May 2023 11:16:38 +0000 (13:16 +0200)
tests/test.c
tests/tis-ci-gen-config.sh
tests/tis-ci.c
tis.config

index 59a1a99568407b33d40d169270883d4c99f99c7a..1ea2d176cbb4e3cd8e6572895d78b061008c4631 100644 (file)
 
 #define VECTORS(n) ASSERT_OK(vector_test(n, #n, nb_##n##_vectors, n##_vectors))
 
+////////////
+/// Wipe ///
+////////////
+static void test_wipe()
+{
+       printf("\tcrypto_wipe\n");
+       u8 zeroes[50] = {0};
+       FOR (i, 0, 50) {
+               RANDOM_INPUT(buf, 50);
+               crypto_wipe(buf, i);
+               ASSERT_EQUAL(zeroes, buf, i);
+       }
+}
+
 ////////////////////////////////
 /// Constant time comparison ///
 ////////////////////////////////
@@ -1203,6 +1217,9 @@ int main(int argc, char *argv[])
        }
        printf("\nRandom seed = %" PRIu64 "\n\n", random_state);
 
+       printf("Wipe: \n");
+       test_wipe();
+
        printf("Comparisons:\n");
        test_verify();
 
index 3b7c318d559033045ab70b6c9dd584b4c3e7b564..31364382ee1a5ce4b31569b85e556b3ff3a59062 100755 (executable)
@@ -58,6 +58,7 @@ echo "// auto generated with $0" > $TIS_CONFIG
 echo "[" >> $TIS_CONFIG
 
 for entry_point in      \
+    "p_wipe"            \
     "v_chacha20"        \
     "v_ietf_chacha20"   \
     "v_hchacha20"       \
index dda2c78db91480d741da756e87a970d945a52f00..fb573483257619626e204a937e963171c64ee4df 100644 (file)
@@ -276,6 +276,19 @@ static void elligator_inv(vector_reader *reader)
        }
 }
 
+//@ ensures \result == 0;
+static int p_wipe()
+{
+       printf("\tcrypto_wipe\n");
+       u8 zeroes[50] = {0};
+       FOR (i, 0, 50) {
+               RANDOM_INPUT(buf, 50);
+               crypto_wipe(buf, i);
+               ASSERT_EQUAL(zeroes, buf, i);
+       }
+       return 0;
+}
+
 //@ ensures \result == 0;
 static int p_eddsa_x25519()
 {
@@ -450,6 +463,7 @@ int main(void) {
        ASSERT(v_elligator_dir () == 0);
        ASSERT(v_elligator_inv () == 0);
 
+       ASSERT(p_wipe          () == 0);
        ASSERT(p_eddsa_x25519  () == 0);
        ASSERT(p_dirty         () == 0);
        ASSERT(p_x25519_inverse() == 0);
index dd39e8b427f180f4191ce042469f32e14db718d8..0a97c6c4646a0a921ae54ba17785caed552231d1 100644 (file)
 // auto generated with tests/tis-ci-gen-config.sh
 [
+{ "name"          : "p_wipe - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "p_wipe"
+},
+{ "name"          : "p_wipe - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "p_wipe"
+},
+{ "name"          : "p_wipe - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "p_wipe"
+},
+{ "name"          : "p_wipe - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "p_wipe"
+},
+{ "name"          : "p_wipe - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "p_wipe"
+},
+{ "name"          : "p_wipe - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "p_wipe"
+},
+{ "name"          : "p_wipe - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "p_wipe"
+},
+{ "name"          : "p_wipe - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "p_wipe"
+},
+{ "name"          : "p_wipe - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "p_wipe"
+},
+{ "name"          : "p_wipe - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "p_wipe"
+},
+{ "name"          : "v_chacha20 - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "v_chacha20"
+},
+{ "name"          : "v_chacha20 - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "v_chacha20"
+},
+{ "name"          : "v_chacha20 - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "v_chacha20"
+},
+{ "name"          : "v_chacha20 - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "v_chacha20"
+},
+{ "name"          : "v_chacha20 - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "v_chacha20"
+},
+{ "name"          : "v_chacha20 - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "v_chacha20"
+},
+{ "name"          : "v_chacha20 - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "v_chacha20"
+},
+{ "name"          : "v_chacha20 - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "v_chacha20"
+},
+{ "name"          : "v_chacha20 - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "v_chacha20"
+},
+{ "name"          : "v_chacha20 - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "v_chacha20"
+},
+{ "name"          : "v_ietf_chacha20 - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "v_ietf_chacha20"
+},
+{ "name"          : "v_ietf_chacha20 - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "v_ietf_chacha20"
+},
+{ "name"          : "v_ietf_chacha20 - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "v_ietf_chacha20"
+},
+{ "name"          : "v_ietf_chacha20 - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "v_ietf_chacha20"
+},
+{ "name"          : "v_ietf_chacha20 - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "v_ietf_chacha20"
+},
+{ "name"          : "v_ietf_chacha20 - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "v_ietf_chacha20"
+},
+{ "name"          : "v_ietf_chacha20 - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "v_ietf_chacha20"
+},
+{ "name"          : "v_ietf_chacha20 - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "v_ietf_chacha20"
+},
+{ "name"          : "v_ietf_chacha20 - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "v_ietf_chacha20"
+},
+{ "name"          : "v_ietf_chacha20 - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "v_ietf_chacha20"
+},
+{ "name"          : "v_hchacha20 - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "v_hchacha20"
+},
+{ "name"          : "v_hchacha20 - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "v_hchacha20"
+},
+{ "name"          : "v_hchacha20 - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "v_hchacha20"
+},
+{ "name"          : "v_hchacha20 - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "v_hchacha20"
+},
+{ "name"          : "v_hchacha20 - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "v_hchacha20"
+},
+{ "name"          : "v_hchacha20 - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "v_hchacha20"
+},
+{ "name"          : "v_hchacha20 - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "v_hchacha20"
+},
+{ "name"          : "v_hchacha20 - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "v_hchacha20"
+},
+{ "name"          : "v_hchacha20 - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "v_hchacha20"
+},
+{ "name"          : "v_hchacha20 - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "v_hchacha20"
+},
+{ "name"          : "v_xchacha20 - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "v_xchacha20"
+},
+{ "name"          : "v_xchacha20 - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "v_xchacha20"
+},
+{ "name"          : "v_xchacha20 - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "v_xchacha20"
+},
+{ "name"          : "v_xchacha20 - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "v_xchacha20"
+},
+{ "name"          : "v_xchacha20 - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "v_xchacha20"
+},
+{ "name"          : "v_xchacha20 - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "v_xchacha20"
+},
+{ "name"          : "v_xchacha20 - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "v_xchacha20"
+},
+{ "name"          : "v_xchacha20 - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "v_xchacha20"
+},
+{ "name"          : "v_xchacha20 - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "v_xchacha20"
+},
+{ "name"          : "v_xchacha20 - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "v_xchacha20"
+},
+{ "name"          : "v_poly1305 - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "v_poly1305"
+},
+{ "name"          : "v_poly1305 - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "v_poly1305"
+},
+{ "name"          : "v_poly1305 - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "v_poly1305"
+},
+{ "name"          : "v_poly1305 - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "v_poly1305"
+},
+{ "name"          : "v_poly1305 - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "v_poly1305"
+},
+{ "name"          : "v_poly1305 - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "v_poly1305"
+},
+{ "name"          : "v_poly1305 - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "v_poly1305"
+},
+{ "name"          : "v_poly1305 - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "v_poly1305"
+},
+{ "name"          : "v_poly1305 - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "v_poly1305"
+},
+{ "name"          : "v_poly1305 - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "v_poly1305"
+},
+{ "name"          : "v_aead_ietf - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "v_aead_ietf"
+},
+{ "name"          : "v_aead_ietf - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "v_aead_ietf"
+},
+{ "name"          : "v_aead_ietf - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "v_aead_ietf"
+},
+{ "name"          : "v_aead_ietf - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "v_aead_ietf"
+},
+{ "name"          : "v_aead_ietf - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "v_aead_ietf"
+},
+{ "name"          : "v_aead_ietf - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "v_aead_ietf"
+},
+{ "name"          : "v_aead_ietf - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "v_aead_ietf"
+},
+{ "name"          : "v_aead_ietf - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "v_aead_ietf"
+},
+{ "name"          : "v_aead_ietf - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "v_aead_ietf"
+},
+{ "name"          : "v_aead_ietf - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "v_aead_ietf"
+},
+{ "name"          : "v_blake2b - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "v_blake2b"
+},
+{ "name"          : "v_blake2b - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "v_blake2b"
+},
+{ "name"          : "v_blake2b - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "v_blake2b"
+},
+{ "name"          : "v_blake2b - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "v_blake2b"
+},
+{ "name"          : "v_blake2b - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "v_blake2b"
+},
+{ "name"          : "v_blake2b - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "v_blake2b"
+},
+{ "name"          : "v_blake2b - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "v_blake2b"
+},
+{ "name"          : "v_blake2b - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "v_blake2b"
+},
+{ "name"          : "v_blake2b - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "v_blake2b"
+},
+{ "name"          : "v_blake2b - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "v_blake2b"
+},
+{ "name"          : "v_sha512 - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "v_sha512"
+},
+{ "name"          : "v_sha512 - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "v_sha512"
+},
+{ "name"          : "v_sha512 - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "v_sha512"
+},
+{ "name"          : "v_sha512 - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "v_sha512"
+},
+{ "name"          : "v_sha512 - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "v_sha512"
+},
+{ "name"          : "v_sha512 - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "v_sha512"
+},
+{ "name"          : "v_sha512 - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "v_sha512"
+},
+{ "name"          : "v_sha512 - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "v_sha512"
+},
+{ "name"          : "v_sha512 - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "v_sha512"
+},
+{ "name"          : "v_sha512 - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "v_sha512"
+},
+{ "name"          : "v_sha512_hmac - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "v_sha512_hmac"
+},
+{ "name"          : "v_sha512_hmac - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "v_sha512_hmac"
+},
+{ "name"          : "v_sha512_hmac - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "v_sha512_hmac"
+},
+{ "name"          : "v_sha512_hmac - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "v_sha512_hmac"
+},
+{ "name"          : "v_sha512_hmac - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "v_sha512_hmac"
+},
+{ "name"          : "v_sha512_hmac - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "v_sha512_hmac"
+},
+{ "name"          : "v_sha512_hmac - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "v_sha512_hmac"
+},
+{ "name"          : "v_sha512_hmac - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "v_sha512_hmac"
+},
+{ "name"          : "v_sha512_hmac - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "v_sha512_hmac"
+},
+{ "name"          : "v_sha512_hmac - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "v_sha512_hmac"
+},
+{ "name"          : "v_sha512_hkdf - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "v_sha512_hkdf"
+},
+{ "name"          : "v_sha512_hkdf - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "v_sha512_hkdf"
+},
+{ "name"          : "v_sha512_hkdf - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "v_sha512_hkdf"
+},
+{ "name"          : "v_sha512_hkdf - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "v_sha512_hkdf"
+},
+{ "name"          : "v_sha512_hkdf - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "v_sha512_hkdf"
+},
+{ "name"          : "v_sha512_hkdf - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "v_sha512_hkdf"
+},
+{ "name"          : "v_sha512_hkdf - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "v_sha512_hkdf"
+},
+{ "name"          : "v_sha512_hkdf - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "v_sha512_hkdf"
+},
+{ "name"          : "v_sha512_hkdf - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "v_sha512_hkdf"
+},
+{ "name"          : "v_sha512_hkdf - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "v_sha512_hkdf"
+},
+{ "name"          : "v_argon2 - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "v_argon2"
+},
+{ "name"          : "v_argon2 - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "v_argon2"
+},
+{ "name"          : "v_argon2 - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "v_argon2"
+},
+{ "name"          : "v_argon2 - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "v_argon2"
+},
+{ "name"          : "v_argon2 - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "v_argon2"
+},
+{ "name"          : "v_argon2 - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "v_argon2"
+},
+{ "name"          : "v_argon2 - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "v_argon2"
+},
+{ "name"          : "v_argon2 - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "v_argon2"
+},
+{ "name"          : "v_argon2 - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "v_argon2"
+},
+{ "name"          : "v_argon2 - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "v_argon2"
+},
+{ "name"          : "v_edDSA - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "v_edDSA"
+},
+{ "name"          : "v_edDSA - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "v_edDSA"
+},
+{ "name"          : "v_edDSA - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "v_edDSA"
+},
+{ "name"          : "v_edDSA - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "v_edDSA"
+},
+{ "name"          : "v_edDSA - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "v_edDSA"
+},
+{ "name"          : "v_edDSA - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "v_edDSA"
+},
+{ "name"          : "v_edDSA - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "v_edDSA"
+},
+{ "name"          : "v_edDSA - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "v_edDSA"
+},
+{ "name"          : "v_edDSA - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "v_edDSA"
+},
+{ "name"          : "v_edDSA - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "v_edDSA"
+},
 { "name"          : "v_edDSA_pk - sparc_32"
 , "files"         :
   [ "src/monocypher.c"
   ]
 , "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
 , "machdep"       : "sparc_32"
-, "main"          : "v_edDSA_pk"
+, "no-results"    : true
+, "main"          : "v_edDSA_pk"
+},
+{ "name"          : "v_edDSA_pk - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "v_edDSA_pk"
+},
+{ "name"          : "v_edDSA_pk - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "v_edDSA_pk"
+},
+{ "name"          : "v_edDSA_pk - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "v_edDSA_pk"
+},
+{ "name"          : "v_edDSA_pk - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "v_edDSA_pk"
+},
+{ "name"          : "v_edDSA_pk - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "v_edDSA_pk"
+},
+{ "name"          : "v_edDSA_pk - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "v_edDSA_pk"
+},
+{ "name"          : "v_edDSA_pk - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "v_edDSA_pk"
+},
+{ "name"          : "v_edDSA_pk - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "v_edDSA_pk"
+},
+{ "name"          : "v_edDSA_pk - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "v_edDSA_pk"
+},
+{ "name"          : "v_ed_25519 - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "v_ed_25519"
+},
+{ "name"          : "v_ed_25519 - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "v_ed_25519"
+},
+{ "name"          : "v_ed_25519 - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "v_ed_25519"
+},
+{ "name"          : "v_ed_25519 - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "v_ed_25519"
+},
+{ "name"          : "v_ed_25519 - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "v_ed_25519"
+},
+{ "name"          : "v_ed_25519 - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "v_ed_25519"
+},
+{ "name"          : "v_ed_25519 - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "v_ed_25519"
+},
+{ "name"          : "v_ed_25519 - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "v_ed_25519"
+},
+{ "name"          : "v_ed_25519 - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "v_ed_25519"
+},
+{ "name"          : "v_ed_25519 - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "v_ed_25519"
+},
+{ "name"          : "v_ed_25519_check - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "v_ed_25519_check"
+},
+{ "name"          : "v_ed_25519_check - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "v_ed_25519_check"
+},
+{ "name"          : "v_ed_25519_check - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "v_ed_25519_check"
+},
+{ "name"          : "v_ed_25519_check - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "v_ed_25519_check"
+},
+{ "name"          : "v_ed_25519_check - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "v_ed_25519_check"
+},
+{ "name"          : "v_ed_25519_check - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "v_ed_25519_check"
+},
+{ "name"          : "v_ed_25519_check - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "v_ed_25519_check"
+},
+{ "name"          : "v_ed_25519_check - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "v_ed_25519_check"
+},
+{ "name"          : "v_ed_25519_check - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "v_ed_25519_check"
+},
+{ "name"          : "v_ed_25519_check - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "v_ed_25519_check"
+},
+{ "name"          : "v_elligator_dir - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "v_elligator_dir"
+},
+{ "name"          : "v_elligator_dir - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "v_elligator_dir"
+},
+{ "name"          : "v_elligator_dir - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "v_elligator_dir"
+},
+{ "name"          : "v_elligator_dir - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "v_elligator_dir"
+},
+{ "name"          : "v_elligator_dir - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "v_elligator_dir"
+},
+{ "name"          : "v_elligator_dir - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "v_elligator_dir"
+},
+{ "name"          : "v_elligator_dir - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "v_elligator_dir"
+},
+{ "name"          : "v_elligator_dir - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "v_elligator_dir"
+},
+{ "name"          : "v_elligator_dir - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "v_elligator_dir"
+},
+{ "name"          : "v_elligator_dir - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "v_elligator_dir"
+},
+{ "name"          : "v_elligator_inv - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "v_elligator_inv"
+},
+{ "name"          : "v_elligator_inv - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "v_elligator_inv"
+},
+{ "name"          : "v_elligator_inv - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "v_elligator_inv"
+},
+{ "name"          : "v_elligator_inv - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "v_elligator_inv"
+},
+{ "name"          : "v_elligator_inv - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "v_elligator_inv"
+},
+{ "name"          : "v_elligator_inv - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "v_elligator_inv"
+},
+{ "name"          : "v_elligator_inv - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "v_elligator_inv"
+},
+{ "name"          : "v_elligator_inv - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "v_elligator_inv"
+},
+{ "name"          : "v_elligator_inv - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "v_elligator_inv"
+},
+{ "name"          : "v_elligator_inv - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "v_elligator_inv"
+},
+{ "name"          : "p_eddsa_x25519 - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "p_eddsa_x25519"
+},
+{ "name"          : "p_eddsa_x25519 - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "p_eddsa_x25519"
+},
+{ "name"          : "p_eddsa_x25519 - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "p_eddsa_x25519"
+},
+{ "name"          : "p_eddsa_x25519 - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "p_eddsa_x25519"
+},
+{ "name"          : "p_eddsa_x25519 - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "p_eddsa_x25519"
+},
+{ "name"          : "p_eddsa_x25519 - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "p_eddsa_x25519"
+},
+{ "name"          : "p_eddsa_x25519 - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "p_eddsa_x25519"
+},
+{ "name"          : "p_eddsa_x25519 - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "p_eddsa_x25519"
+},
+{ "name"          : "p_eddsa_x25519 - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "p_eddsa_x25519"
+},
+{ "name"          : "p_eddsa_x25519 - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "p_eddsa_x25519"
+},
+{ "name"          : "p_dirty - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "p_dirty"
+},
+{ "name"          : "p_dirty - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "p_dirty"
+},
+{ "name"          : "p_dirty - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "p_dirty"
+},
+{ "name"          : "p_dirty - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "p_dirty"
+},
+{ "name"          : "p_dirty - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "p_dirty"
+},
+{ "name"          : "p_dirty - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "p_dirty"
+},
+{ "name"          : "p_dirty - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "p_dirty"
+},
+{ "name"          : "p_dirty - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "p_dirty"
+},
+{ "name"          : "p_dirty - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "p_dirty"
+},
+{ "name"          : "p_dirty - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "p_dirty"
+},
+{ "name"          : "p_x25519_inverse - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "p_x25519_inverse"
+},
+{ "name"          : "p_x25519_inverse - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "p_x25519_inverse"
+},
+{ "name"          : "p_x25519_inverse - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "p_x25519_inverse"
+},
+{ "name"          : "p_x25519_inverse - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "p_x25519_inverse"
+},
+{ "name"          : "p_x25519_inverse - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "p_x25519_inverse"
+},
+{ "name"          : "p_x25519_inverse - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "p_x25519_inverse"
+},
+{ "name"          : "p_x25519_inverse - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "p_x25519_inverse"
+},
+{ "name"          : "p_x25519_inverse - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "p_x25519_inverse"
+},
+{ "name"          : "p_x25519_inverse - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "p_x25519_inverse"
+},
+{ "name"          : "p_x25519_inverse - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "p_x25519_inverse"
+},
+{ "name"          : "p_verify16 - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "p_verify16"
 },
-{ "name"          : "v_edDSA_pk - x86_32"
+{ "name"          : "p_verify16 - x86_32"
 , "files"         :
   [ "src/monocypher.c"
   , "src/optional/monocypher-ed25519.c"
   ]
 , "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
 , "machdep"       : "x86_32"
-, "main"          : "v_edDSA_pk"
+, "no-results"    : true
+, "main"          : "p_verify16"
 },
-{ "name"          : "v_edDSA_pk - x86_16"
+{ "name"          : "p_verify16 - x86_16"
 , "files"         :
   [ "src/monocypher.c"
   , "src/optional/monocypher-ed25519.c"
   ]
 , "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
 , "machdep"       : "x86_16"
-, "main"          : "v_edDSA_pk"
+, "no-results"    : true
+, "main"          : "p_verify16"
 },
-{ "name"          : "v_edDSA_pk - x86_win64"
+{ "name"          : "p_verify16 - x86_win64"
 , "files"         :
   [ "src/monocypher.c"
   , "src/optional/monocypher-ed25519.c"
   ]
 , "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
 , "machdep"       : "x86_win64"
-, "main"          : "v_edDSA_pk"
+, "no-results"    : true
+, "main"          : "p_verify16"
 },
-{ "name"          : "v_edDSA_pk - armeb_eabi"
+{ "name"          : "p_verify16 - armeb_eabi"
 , "files"         :
   [ "src/monocypher.c"
   , "src/optional/monocypher-ed25519.c"
   ]
 , "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
 , "machdep"       : "armeb_eabi"
-, "main"          : "v_edDSA_pk"
+, "no-results"    : true
+, "main"          : "p_verify16"
 },
-{ "name"          : "v_edDSA_pk - arm_eabi"
+{ "name"          : "p_verify16 - arm_eabi"
 , "files"         :
   [ "src/monocypher.c"
   , "src/optional/monocypher-ed25519.c"
   ]
 , "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
 , "machdep"       : "arm_eabi"
-, "main"          : "v_edDSA_pk"
+, "no-results"    : true
+, "main"          : "p_verify16"
 },
-{ "name"          : "v_edDSA_pk - aarch64"
+{ "name"          : "p_verify16 - aarch64"
 , "files"         :
   [ "src/monocypher.c"
   , "src/optional/monocypher-ed25519.c"
   ]
 , "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
 , "machdep"       : "aarch64"
-, "main"          : "v_edDSA_pk"
+, "no-results"    : true
+, "main"          : "p_verify16"
 },
-{ "name"          : "v_edDSA_pk - rv64ifdq"
+{ "name"          : "p_verify16 - rv64ifdq"
 , "files"         :
   [ "src/monocypher.c"
   , "src/optional/monocypher-ed25519.c"
   ]
 , "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
 , "machdep"       : "rv64ifdq"
-, "main"          : "v_edDSA_pk"
+, "no-results"    : true
+, "main"          : "p_verify16"
 },
-{ "name"          : "v_edDSA_pk - mips_64"
+{ "name"          : "p_verify16 - mips_64"
 , "files"         :
   [ "src/monocypher.c"
   , "src/optional/monocypher-ed25519.c"
   ]
 , "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
 , "machdep"       : "mips_64"
-, "main"          : "v_edDSA_pk"
+, "no-results"    : true
+, "main"          : "p_verify16"
 },
-{ "name"          : "v_edDSA_pk - ppc_64"
+{ "name"          : "p_verify16 - ppc_64"
 , "files"         :
   [ "src/monocypher.c"
   , "src/optional/monocypher-ed25519.c"
   ]
 , "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
 , "machdep"       : "ppc_64"
-, "main"          : "v_edDSA_pk"
+, "no-results"    : true
+, "main"          : "p_verify16"
+},
+{ "name"          : "p_verify32 - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "p_verify32"
+},
+{ "name"          : "p_verify32 - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "p_verify32"
+},
+{ "name"          : "p_verify32 - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "p_verify32"
+},
+{ "name"          : "p_verify32 - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "p_verify32"
+},
+{ "name"          : "p_verify32 - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "p_verify32"
+},
+{ "name"          : "p_verify32 - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "p_verify32"
+},
+{ "name"          : "p_verify32 - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "p_verify32"
+},
+{ "name"          : "p_verify32 - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "p_verify32"
+},
+{ "name"          : "p_verify32 - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "p_verify32"
+},
+{ "name"          : "p_verify32 - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "p_verify32"
+},
+{ "name"          : "p_verify64 - sparc_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "sparc_32"
+, "no-results"    : true
+, "main"          : "p_verify64"
+},
+{ "name"          : "p_verify64 - x86_32"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_32"
+, "no-results"    : true
+, "main"          : "p_verify64"
+},
+{ "name"          : "p_verify64 - x86_16"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_16"
+, "no-results"    : true
+, "main"          : "p_verify64"
+},
+{ "name"          : "p_verify64 - x86_win64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "x86_win64"
+, "no-results"    : true
+, "main"          : "p_verify64"
+},
+{ "name"          : "p_verify64 - armeb_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "armeb_eabi"
+, "no-results"    : true
+, "main"          : "p_verify64"
+},
+{ "name"          : "p_verify64 - arm_eabi"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "arm_eabi"
+, "no-results"    : true
+, "main"          : "p_verify64"
+},
+{ "name"          : "p_verify64 - aarch64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "aarch64"
+, "no-results"    : true
+, "main"          : "p_verify64"
+},
+{ "name"          : "p_verify64 - rv64ifdq"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "rv64ifdq"
+, "no-results"    : true
+, "main"          : "p_verify64"
+},
+{ "name"          : "p_verify64 - mips_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "mips_64"
+, "no-results"    : true
+, "main"          : "p_verify64"
+},
+{ "name"          : "p_verify64 - ppc_64"
+, "files"         :
+  [ "src/monocypher.c"
+  , "src/optional/monocypher-ed25519.c"
+  , "tests/utils.c"
+  , "tests/tis-ci.c"
+  ]
+, "cpp-extra-args": "-Isrc -Isrc/optional -Itests"
+, "machdep"       : "ppc_64"
+, "no-results"    : true
+, "main"          : "p_verify64"
 }
 ]