Files
Picus/scripts/prepare-circomlibex.sh
2023-08-16 16:56:02 -07:00

124 lines
4.7 KiB
Bash
Executable File

#!/bin/bash
declare -a arr=(
"AND@gates@circomlib.circom"
"AliasCheck@aliascheck@circomlib.circom"
"BabyAdd@babyjub@circomlib.circom"
"BabyCheck@babyjub@circomlib.circom"
"BabyDbl@babyjub@circomlib.circom"
"BabyPbk@babyjub@circomlib.circom"
"BinSub@binsub@circomlib_16.circom"
"BinSum@binsum@circomlib_32_2.circom"
"BinSum@binsum@circomlib_32_5.circom"
"BitElementMulAny@escalarmulany@circomlib.circom"
"Bits2Num@bitify@circomlib_1.circom"
"Bits2Num@bitify@circomlib_128.circom"
"Bits2Num@bitify@circomlib_16.circom"
"Bits2Num@bitify@circomlib_253.circom"
"Bits2Num@bitify@circomlib_254.circom"
"Bits2Num@bitify@circomlib_256.circom"
"Bits2Num@bitify@circomlib_32.circom"
"Bits2Num@bitify@circomlib_64.circom"
"Bits2Num@bitify@circomlib_8.circom"
"Bits2Num_strict@bitify@circomlib.circom"
"Bits2Point@pointbits@circomlib.circom"
"Bits2Point_Strict@pointbits@circomlib.circom"
"EdDSAMiMCSpongeVerifier@eddsamimcsponge@circomlib.circom"
"EdDSAMiMCVerifier@eddsamimc@circomlib.circom"
"EdDSAPoseidonVerifier@eddsaposeidon@circomlib.circom"
"Edwards2Montgomery@montgomery@circomlib.circom"
"ForceEqualIfEnabled@comparators@circomlib.circom"
"GreaterEqThan@comparators@circomlib_16.circom"
"GreaterEqThan@comparators@circomlib_32.circom"
"GreaterEqThan@comparators@circomlib_8.circom"
"GreaterThan@comparators@circomlib_16.circom"
"GreaterThan@comparators@circomlib_32.circom"
"GreaterThan@comparators@circomlib_8.circom"
"IsEqual@comparators@circomlib.circom"
"IsZero@comparators@circomlib.circom"
"LessEqThan@comparators@circomlib_16.circom"
"LessEqThan@comparators@circomlib_32.circom"
"LessEqThan@comparators@circomlib_8.circom"
"Main@main@circomlib.circom"
"Montgomery2Edwards@montgomery@circomlib.circom"
"MontgomeryAdd@montgomery@circomlib.circom"
"MontgomeryDouble@montgomery@circomlib.circom"
"Multiplexor2@escalarmulany@circomlib.circom"
"Mux1@mux1@circomlib.circom"
"Mux2@mux2@circomlib.circom"
"Mux3@mux3@circomlib.circom"
"Mux4@mux4@circomlib.circom"
"NAND@gates@circomlib.circom"
"NOR@gates@circomlib.circom"
"NOT@gates@circomlib.circom"
"Num2Bits@bitify@circomlib_1.circom"
"Num2Bits@bitify@circomlib_128.circom"
"Num2Bits@bitify@circomlib_16.circom"
"Num2Bits@bitify@circomlib_253.circom"
"Num2Bits@bitify@circomlib_254.circom"
"Num2Bits@bitify@circomlib_256.circom"
"Num2Bits@bitify@circomlib_32.circom"
"Num2Bits@bitify@circomlib_64.circom"
"Num2Bits@bitify@circomlib_8.circom"
"Num2BitsNeg@bitify@circomlib_1.circom"
"Num2BitsNeg@bitify@circomlib_128.circom"
"Num2BitsNeg@bitify@circomlib_16.circom"
"Num2BitsNeg@bitify@circomlib_253.circom"
"Num2BitsNeg@bitify@circomlib_254.circom"
"Num2BitsNeg@bitify@circomlib_256.circom"
"Num2BitsNeg@bitify@circomlib_32.circom"
"Num2BitsNeg@bitify@circomlib_64.circom"
"Num2BitsNeg@bitify@circomlib_8.circom"
"Num2Bits_strict@bitify@circomlib.circom"
"OR@gates@circomlib.circom"
"Pedersen@pedersen@circomlib_1.circom"
"Pedersen@pedersen@circomlib_128.circom"
"Pedersen@pedersen@circomlib_16.circom"
"Pedersen@pedersen@circomlib_253.circom"
"Pedersen@pedersen@circomlib_254.circom"
"Pedersen@pedersen@circomlib_256.circom"
"Pedersen@pedersen@circomlib_32.circom"
"Pedersen@pedersen@circomlib_64.circom"
"Pedersen@pedersen@circomlib_8.circom"
"Pedersen@pedersen_old@circomlib_1.circom"
"Pedersen@pedersen_old@circomlib_128.circom"
"Pedersen@pedersen_old@circomlib_16.circom"
"Pedersen@pedersen_old@circomlib_253.circom"
"Pedersen@pedersen_old@circomlib_254.circom"
"Pedersen@pedersen_old@circomlib_256.circom"
"Pedersen@pedersen_old@circomlib_32.circom"
"Pedersen@pedersen_old@circomlib_64.circom"
"Pedersen@pedersen_old@circomlib_8.circom"
"Point2Bits@pointbits@circomlib.circom"
"Point2Bits_Strict@pointbits@circomlib.circom"
"SMTHash1@smthash_mimc@circomlib.circom"
"SMTHash1@smthash_poseidon@circomlib.circom"
"SMTHash2@smthash_mimc@circomlib.circom"
"SMTHash2@smthash_poseidon@circomlib.circom"
"SMTProcessorLevel@smtprocessorlevel@circomlib.circom"
"SMTProcessorSM@smtprocessorsm@circomlib.circom"
"SMTVerifierLevel@smtverifierlevel@circomlib.circom"
"SMTVerifierSM@smtverifiersm@circomlib.circom"
"Sha256_2@sha256_2@circomlib.circom"
"Sha256compression@sha256compression@circomlib.circom"
"Sigma@poseidon@circomlib.circom"
"Sigma@poseidon_old@circomlib.circom"
"SigmaPlus@sigmaplus@circomlib.circom"
"Sign@sign@circomlib.circom"
"Switcher@switcher@circomlib.circom"
"T1@t1@circomlib.circom"
"T2@t2@circomlib.circom"
"Window4@pedersen@circomlib.circom"
"WindowMulFix@escalarmulfix@circomlib.circom"
"XOR@gates@circomlib.circom"
)
for fn in "${arr[@]}"
do
bn="${fn%.*}"
echo "=================== ${fn}: ${bn} ==================="
echo " compiling..."
# to compare with Ecne, you need --O0 to disable optimization
circom -o ./benchmarks/circomlibex-cff5ab6/ ./benchmarks/circomlibex-cff5ab6/${fn} --r1cs --sym --O0
done