From ccb9568e7eea9be10865e3dbfe2b830637d33baa Mon Sep 17 00:00:00 2001 From: Manish Kumar Date: Fri, 24 May 2024 12:57:22 +0530 Subject: [PATCH] specific commit added for sp1 crate to avoid future compilation error due to change in sp1_zkvm codebase --- hash/sp1/bench/blake2/Cargo.toml | 2 +- .../blake2/elf/riscv32im-succinct-zkvm-elf | Bin 143412 -> 143420 bytes hash/sp1/bench/blake3/Cargo.toml | 2 +- .../blake3/elf/riscv32im-succinct-zkvm-elf | Bin 135336 -> 135356 bytes hash/sp1/bench/keccak/Cargo.toml | 2 +- .../keccak/elf/riscv32im-succinct-zkvm-elf | Bin 114172 -> 114180 bytes hash/sp1/bench/poseidon2/Cargo.toml | 2 +- .../poseidon2/elf/riscv32im-succinct-zkvm-elf | Bin 235916 -> 235984 bytes hash/sp1/bench/script/Cargo.toml | 2 +- hash/sp1/bench/sha256/Cargo.toml | 2 +- .../sha256/elf/riscv32im-succinct-zkvm-elf | Bin 113704 -> 113720 bytes 11 files changed, 6 insertions(+), 6 deletions(-) diff --git a/hash/sp1/bench/blake2/Cargo.toml b/hash/sp1/bench/blake2/Cargo.toml index 31c4ebb..8c830ea 100644 --- a/hash/sp1/bench/blake2/Cargo.toml +++ b/hash/sp1/bench/blake2/Cargo.toml @@ -5,6 +5,6 @@ name = "blake2-program" edition = "2021" [dependencies] -sp1-zkvm = { git = "https://github.com/succinctlabs/sp1.git" } +sp1-zkvm = { git = "https://github.com/succinctlabs/sp1.git", rev = "4528b7861c60ef5e25c2d0b328fc6d244e2ac98e"} blake2 = "0.10.6" diff --git a/hash/sp1/bench/blake2/elf/riscv32im-succinct-zkvm-elf b/hash/sp1/bench/blake2/elf/riscv32im-succinct-zkvm-elf index 422ae58de4938a6633498f96706f6c0c9119d168..54aee86a26fcd9287274c49962f226a8c2b0c6be 100755 GIT binary patch delta 25749 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 delta 26147 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 B2hsol diff --git a/hash/sp1/bench/blake3/Cargo.toml b/hash/sp1/bench/blake3/Cargo.toml index 6e51f20..eae6595 100644 --- a/hash/sp1/bench/blake3/Cargo.toml +++ b/hash/sp1/bench/blake3/Cargo.toml @@ -5,5 +5,5 @@ name = "blake3-program" edition = "2021" [dependencies] -sp1-zkvm = { git = "https://github.com/succinctlabs/sp1.git" } +sp1-zkvm = { git = "https://github.com/succinctlabs/sp1.git", rev = "4528b7861c60ef5e25c2d0b328fc6d244e2ac98e" } blake3 = "1.5.0" \ No newline at end of file diff --git a/hash/sp1/bench/blake3/elf/riscv32im-succinct-zkvm-elf b/hash/sp1/bench/blake3/elf/riscv32im-succinct-zkvm-elf index c3755868313377386f9d0f5309fb57bd196031a6..8d75bf2603c8fe492f887c9bf54ae9d32b34b230 100755 GIT binary patch delta 31624 zcmb82349bq`uD3lnH-!sI6}BOObFo$bI$}324RpzR=^Vkg*gEU5FuQGP7o7OLBT=> z5H%nu>qbR_!tSC5A&S=@R8&-4abaClR8Uk@l=t^^cO{*Mpl^LXP3K$BQ&mqrb#`@+ zZrPBwYeU)!MLN7PFWmXyXN=KhVF($FNw^*S0@u$9JGgQ~`}7lv#7_A0*ol?9z0%fa ze@;#1rDNs=d*GsX|6b&-=w_}R3AVHK~d zsZ&#SWvBR&+hRS1{~DxVNFh;*9Tt>S5qN`i+SibwNw%c!7S^8A-%BifLV9ji(p9?c zBNS6JBOa>!DKF>C&AVfGHK zij_OEQxrCnvDS^{6+1QgEC0w&u}P4(%uZ>irjKj&uKQ<$k5q-`TD;{2N+A5C`$cM; zx%)-E@Rv|HGWVxyX)9{8Q>sj9hy13=y1z^OnOSf#a9=9M~YmAfB z7+&fRmcY||QmZb=DBkMRtlHnREsN)KizFp%YO7t(OIu$jv&Z)J6zkLfOhLN1-ZdVgILbWR5_nRrZ)IR3-Lvni_&c}w;aupdUD`j4 z3{hp3f#<1C^yz&N5LASG@%T=bZ_DSlE!Epo7wanp8_)`yG#TD3I#- zy&W!**|*$(w~e3aaBKIv7S=u+WZfaJS&Q)ZdkRdjd|_2KBx~_?Jdr!3L-|TFE-CO} zCMqGJjacI3xpNri{QF$1T)Uj-bi69dEG(bS7j=9<^7Gc6#!HM(>y*I1Nu95d17FsR z?tGP;#sd7#HW<(R_Cp2yK-VHU@bv>qyWGGxC`450W7SjCIZ^`Oa+}gEt0I|d&MO1z zAj`fhaIz+%%$1P$$9eb5V=RCvw?qM@ugG72^Zu zvgB+F`lafp@>lty9;n}GUfm;C4*bCP_2?o8eylm(<3CAl%kRM8uyD)n7L-U!;IH|# z_iVXY;3v&;%P)LF(LWn3PuDEB{904kuazX%UQ*+;eI&Ol|D9VFW8z~eN!@p|#1U$u z+7>m1&MPH&WS)!5<=@n_aK9siKJ|{mzx{k~$d=#vS>Jc(XMXm9{<*T{x0+7i(KX2fswdP8>Q&wlH2b6b7BE*){ab&bgLkYqw|R9Z`kWtRB{U{7v1W z!Xoq9(6Eb%mGD*ao^N^S+%|m0VGCa#9w(O{=SNoNrPQ1|hefZZb)*M;`V~L9#LlNi z$I0v{{_Mn$L~oVLKjaf)-^k^!^O2L^NB^=;Nl5LUYsD?K%v!iXw)T2f)`oGQH9s)* z%2sn)W2uoe%jUG^eQtKhZL|2Kn>!@2=d$>soBQ{y$jWZpmW4Z6+VG0K+Tc#HWMo?g zC+mZ^yE^o`SMX17?n0>^n05m;2ji#hmn|8*Pl=<*veDY-*<=jgWN%w_26-66H^tgb zO0nikDQa9w-3IlZYI&S5E9rl&`^6nl<&||W(>?pHx;k!|l$@PnPfbjsnWT1=+QHTA zEITnvpf6`IDxyA1i)Du>hO*|C3f^)0_1!J=tOf8xA(~?|HBH3|@`<(2ZdsjQXdq*X zOH6;Pt$zr4jW!$E73o-bwE1MzjE=o5S!!wJo3p~XDJh!s>bg=Bt9kd4^f@cgjIWyU zcw4`-J|h}%BBPo8dacED<%emQuGCn6pKur2SeWB$d-2-YUHB_AGm6W5CT&h;;Wn0J z?@*fYR++M>?XG2Ej>jxldWjr3%14&YI=|eUCdzHckC)!izc%aQWwO>6F0;HP&nWG$ z6R&!=(996>?D>LtuEkS*RLy}M)i(&GVa5f-!mu@rSrgLuqsKVW0eA79|gt+O>%8b7_@x|Y~{^b(trI)44F z6OsRpTgRvDnL`^Qb=EFlIWBbtO&9(dG;ODHnzr{$#;Osk)`3>_nRf<2gKxmDbKhqw04DOG$06SC6VcOLE%nqth1+t|l!qiHB^=-Xn z%j>-Swsu$-61VlU2L@5sp=8uevMr+-sdBk;pn6Xkrqw>JvcJk{pV$0!+trd>KB8u1 zyqDCoZlrbNW;XNWr@v51*_D>dxCIlmT6+0g4c(@KKU&_tSD;wyo04iiw^)XuV7)(= zcc|A+v5eqH%G=4v>`Zxo80uWyL$-|O6BdtXTi&9+kJfwA&;Pa9+jiJodIEH&JdP*A z6t<%sYEfCqQ}4K1dWDa_qn|W{-+PBus;hbCjzP4;`F6>@a`{jCV%>p1d*@2I_8oO) zSG&j%KCObZ@2_}Q>Rz`k+oGUDW5b(*v8py-xngCj)TYJoS!?aKiGTZi=XkaxB~#zq zLCayK<$hj~qSvqX2C82}Ji388j{W1*daKK4#RKFYb#P$-S&QH&H9oK${hV3*Xbivc zYzy{mTKdiP=~FCHg6A*AEWe&lT3R4iJVY*QSG)FnmzA&KyB7E1ZSGzzmoMYhcX!J~ zH-6Rz>qGg`kimV+LR!$?^Ip;Zs*;?KDSS3pqKlywPKenvzCDLPVRh*iOqLs=X5DI=GAa_hES*m+xz@th@DXw#gCFC)GS8dedDm4PNjPBDh-+z?L1WbC zQ2TM1SyCuhtMVMPcEeR@VKo0FJzkN$meANMfLYi(4=KR`C0dhUb-&# zyyDr|3tL@&9Y3*t;Q5st(?q$WQ9>H;^H2wV%fq*k)h8cbcV1!Tmo$;OKfh-E!1K*^ zH*L0~3A1e%HoJEd1^22q`|U?nvqx9mBUk*JkFF}>%{B}df8NpX=PwO^&f4ggYk%c^ z9xLMi*_eZc=GTq=u)_3y>~cIi)|5R~KnD&FZSrRB`HnJfw!b-tQ@@`oyOuXS%=FE&oxo9Mi>93$a1F`sp6{cj43X z@bCBP-yNTsjlb`IhT?aqfA`)>e_y?Ih#W}gYqoB~LVU%uttCs{QeJ_*>NYCl{%u!4 z=i_ZJLHJNjQZwm6{^$!<%-MTh7$r&n<=HP;r60KWrOVq{v}5WdI*i-1PPM9HPP>{_ zFTI{5TkhtQ_T(a?g?nhZe{|2g62+C(T~}baLEF;qZkYSj$M(1Jh$`klO9y_kF4PUG z5YeQjZb<9Yld*9PYIV7M(YxLF>Q@$Zex+k}%4i%qm*eP?VOqwjR`@LQ=3v4~Tgv;r z>MX*pHh)91nppv!)3wZ~fMjkNEa4G3nI5ve>UzF3 zuhN76kbRS7OIKdK@0;sHrV>3D>zUSFN|~yAzg~#@FIgSWnYQ8P+1KC3IY<+790h zf8#RQ;^NERc%5!z-&`&2;orWwLwc1z@zyB(`_o%aIpE@b{_i_v-*x}HSbV?VKMH>j zIiL#WAE-psxdYU%7QQ`GP8rNkyzS{+=jE2tzS*?*V$@B`GaL3ucZ;gg17d+(=WH8R9)*twd>b9%Pl3)Kt%rzbg8XpVXYX)i=X9 z>KB|kSpoV0noi56j(>Xa8T9-6-y0(1_U;GGC3O5x4|SB?3;EeYSUaqw7I@;}|NC$hDfm8`fpPT2NB!WB4?dcQd`5lT5zd|V@jS}r z*vAEp()*LN^w06Ghd;oW`{^)^xsIPW<&;Hy^e2uE=yvD_IH{w4tBsrP@Hq;6=#x>o zO-dK@^`G?OMgPukQpHkHQ}XXz38vlksZ|c#!>d2-g0Aq!r{5y#Uq>#%SpMnAsHF6| zdv;KPm34g7vGyJ6R`7~6(J9ueor0v8h~vjD&)ocyw*cNqd3>*WPhHJFIA+bPTdBnk zOK7o`HO>D!!IJ87JA5IpkI(qBi{#?VzqI1tXTR(%?c<+(dAW3wcmJw)%K^VCtP^@* zdt4{^jbC+@N2l}Kzv?DU;v2rQ@~W?z^Zj4-m2CXCuSQ7+_+L*9Lc--I?yJvy-Pc{X z|Le5$<7XAjU5vHjW4^x3Ank>m>b@S7dH6SlwS@c&+`Hl4oVWdEVcgzt_N;KflBuDh zS+g(yU12wp8F&GiiM!y{GGomQdt{ELPYg=ux1Qo$gjxS%t#xgiiIX z3OkO!3o8{ifCo+u>QE}>u{3DS$GsKqmAIo7*i!!Rsq1g723-l-1goiY-U(3`+>LgW zM-`S6QP_k#lt%G|;0dsUawmIF-`Ci#gM7?)-gL^D!UVqZyGx`h{?>P1%V9Z>_2px} z&*6FBThrSlA|wH=qyDm>txN(r&E*S zqv7lUmOQoy*K%Czas3_F3%LFd*GITU;yQ}!8(e2_SyJ*?Yh0ah72+z!bp@_*xMt#7 zh-)nJt;GF)TWj;VD}ZY>u4{44N2`(_ z>59N-i@?ISKKSVXwfY_Wm+!mC2h&tHv2@K%K)6Zvr}K5EdtF+NSm7tLKej;D8u=IE zI*dF;{u%IL;r$Bp^S6J#+;SFL3J;#m=C)r7GYgyLF%R_H;7Z3;%BTL)QJT*yewjFZ z6=Y)(ckJGV_NLxwk&vO(3m)e zzx96HFIZACGpx?}vFT-)^Q&6ru^i|`Fv1nwCv0iRaX$V|`y1u>-tW%zv(ThT_6W~B zcX`V`Pm#8kzl}%Fbw%AP&h?WX;m@7>AYQ!{DWARg^(J%<8T5`B{{Ex1e<1hN7k=Ub znKBqwf_TxiIqxZ~>H|!oiNV-{{AFZjp1Lr&(VcQpL%~JhZs7j7mO+OC-O0n^-d|yC zi!R%ecuJBwcGwN13AP%`Gj*;O7`@cd_9s4*q-l8_v+`JTU;*w0xKF~Mq`7G%I7L;P zE=yfAh1w!Sw^O4ZmL;oHo!Bi)S7&~RSn5RI;NBbeLy7K5(xA+t*_a%FqjAxF=#Du_ z(zK+WQ{GWPTHCF9U18Drr6p6bW+|n?8B@cIoxzruOg^4SPn9~RAEp5Z%t`c3m7JNK z^a@rRlY1SCQY*ToCKt1ap5AzO_;NgiMSBhimRxIv8u$wY0~wXA3(i3 zq9_T?6Cdobq)Sg&B>#@5T1l5= zO+Ev6n}MGPPXd?f^51b^iWaAqmXM++ddXODy3W^tgJ7xw$>ZP>gZ`7?MGg9K_8uY* zpa2C4$bilmuP4EibdG{+e{Cpm1$cD2=5x|N1fBryqw9NzsyD>;*6odh2Tks1b2ed;GtaIz-PdV4Dy}eZVhe9j)K=1`Y`Z3pt5FIf215aQs=^iE;b76p=7Nv?qP00?Pz4?fgK69mzX9F^c^jR7 z0Ox~6`mSk=?KJRTz!9~=D4#MYLqs2g2Oa^RK^ynhGu#JWWys(=unT;nF7JfyzYp9| z=V9QJ;7fEa1&ik)D$jQ+&mUQ0pO?or<5E);QwaQWI}B@yjOu)Wl~^+<_Xnp}=#V zMjStN?&?Mnr_Pm{c)5w6H1Vq@K4xO6r6?Xlkexc$#mI3)3^qo9r^oH}Op-US#5RCf;e{_cd0_R}DCAQplpE z%wT{W+~RjURU?ijp7CIDYC~KB7NUMhzzKyD8swJ#|*p;eA>XDfRoQP=%-=RS*|GTB$iUjZy-1y`c^%^Dd0A7 zLjsP7y@m{51aCL+7nFfPzYW$xmw^X?OA8dXM&D$_!9xx5C&AYk_&snuVu+v}Yg!?; zIavD0Vh^|s^4_||L2#8pe;IhIfp>t982CTnS_8L4+Z`~lFNeihr-2F{ytM*LsBv-j zAzYpSpEM-+8&(l4#GMi0lAn0u@*EgZ{RpPgaj0^1{xxPK|xJN zCuv%c*huV;h^HVgp>LFv9-Y2vL1NX=CtiUFq2C~09E1KygZ@hJ3Ip!~9|Vgg`X6{1j;RG_b;EL=lozj$Aj@pGDw=_MlNk9@ zBp8VdM2)9_>Ezzn>xs1>v3-z>6MFL4cVKazPu$r`=lbzH{HeKgI3kuxqLayNHdq|> zQ-Vjp6Hp_&uKyai3hdDNG*~^P*STvxnhXZJbshm02lbR+q68dAuk}k9CYalIBZ7Km ziOyevsZ$DWI~|J)I-$^?gA7HWse2`ueh8lMTo{-a7U{zyTc zt6{)FQ-+iSy+Y6etfH_`QE#G?nVDWIXhG9gF3xdA?*ohp=v~Cc_^?Sn`u4{9Mm~uO zy@_`Z)JMqW9lJB8fJGk~)*bzSEFwg&yafuA3<~SPRR$)*G8QXzL(pny=97yR5+Z1F zBfpCLB6wl2NtMcM1f89wr8Ptx04JkBT9wJ-U%}#)3UNUX?C~J)tINlL#oHBH0e!&qq6eE>m9GcWOCOQn9bkF^q!}ES*;9z1H$mxof zDe=0mh@jV4B7uDY6fmr6F*VY}bTgQG`4J=_?!5>b6m&v$F~TnQA7Gj%P_8O3x($C| zn9>wP`p3XDFNk^OFSj%GwIt-IKNPkhg608r4+sumSkgS8=ovf*UX_#wf(KCGta6Rj zsT;fvy#B0KAj!W2uYtZg&cTkwSPKmD+2Adz92rxB?TFZkh*Z6RAHcPS3_N#Wiv}i_ zk^VgJA%lD;xXMt#&*0MrdH*Fi1p}w(=@){(q5M$3n&B09;tvdy7CJ8j)5PHelZU2M zg5h#?9K(RWfsHOcYvQG7QW0ovpug$evlb-vM(?Jnd<2PYLV{hGh{OhiV(GP}79_SG za(b<)wjuN>5Nko>H5cJdMOaOdfBn=8#%s}dqkTNRCpBhB?@k3jjs(Oj5J8(t3Pw3G zy_430#5T@CA3%P>gR5`Fatjun@Ktc(9dSi{S3)kn`Yx@;qSrpTv@vJg-I#APadJPs zY~0A@iiro9n6&rB4Hi=bz1h`*Rzvzm;bKhREg0oyrf(XAd@KxDkJnXdAA=8{^0TFc`2`SNO?fV746(8iq}#e#N^mYpD{ zs(|BcA|fUsB12aQEk^-Jpy<3AEWTr)3?{<>5y)dpz*NIzM2dOASmT!=KMr}mK~Ag% z{rSJeG7+J<*vuu%8_SLCaNx;C)EFk*2tHw8DyYwWjnmgNJ^wF7f{{?z0!6C9XJGp3 zf;y3?5wR8|7IMPn!eh{&Kvy zk-r|a^M3+i5t%@NzG=~d#`K-g#n`{HvE0blqQIf>fI1K89;0uLnEG-J1;(M!$Dr^x zFn!3Pj&t20Vl8L}WhCr_rLOUu2O3Ayw=hOEGw(CW&3u?Qq;I)U^9%Wl9KRM!W>O%> zrrn7KoFJMO5i2lXQGqM;1j*PIkmGzXnKJN#sp4W0{5#e>GN6qvzZ&zE`q7S_{#7tF z#1Wl;0h41z`h2&(fq-0H^!#|*O-5Hxn_3-{82*MDk=}q+3f&MiM;dwK3{5TykkQrh zksoPN*IGqS(|SDF%fo8Uu zs z2OnIl>04Oa6I@I=^8hyIC{NXoBZHZU*k>?c8<+}IJplP>@KW#~ z-2e|qCxd=hofm*hz@2s81r{Hok-^j9F%iTfEt&xBueDjEp-oiXQUl+O4E(5}=tQKj z!XPI;xJIEHg2di{{&0i-WO$77Qy?XeFbs1t0IWSgg_h!60TJqw0fp-y#H${(vGBlJ z@KBKOpuwGq@wgY92^itLQ2kw@KVG zOzN5_A0}nQx0__AA8M>?=4&2lEH|_GGD(zeX7$ zKp3#bRN%kBl)ex07JDLNew6=~O$yx*Gy@DAXTO;;v=(cs^e@%uFD9O8;$>j^pj2I$ z^a6;rpcN=SD(3amI%%n2utC$PPzMG2_SBdmvB)sz5=>I)6Ba~>g^6u$kY5J* zQ2qNn;uVMxE;hDMc+GB0TFL11B=* ztrDJf{CNB{c%&G-%)n4%rwtiKATNcy1LDbJ_k%^C3Rat#WT&5sD|AQDYP{-cMWv?L z^-N>AnGcxcW~L9gwScEZG|8KBSiBE0)FzK1Vwb2Pc*r^&3xR1yAbF>U7<&ZVQRmnE z_(Kn(6B`To+z*eSz@^AQG#RlLB-Vd0#^0(8t&@<-5JXfP6s`c%H|rw7HQ+Z5@(E!2 z7GB6BVEP_ja0&Q?fy==38M~0<9%pB^HHtWo+tf6cmps=r--ZI#?^M`&fb-#;2Fn0ffF#&R={HOc3j_)QZhzi7yh`hTMcaEVa?T=tS7!3B7WNp9r5@W`Uf zhI!>%aEXDbe71K_;{wcl*d$+3*I3`oRR($PWtg~7pxSBCC^w=LQzupD85!%};D@or zf+YgjC=);C+yb0^;D4kc*k~N$@q07wY=B zvBK9Cx*%iit93)>17Qg%;t_F)=eh_~E z7C-qQmILqr3=(~yFIW!^$4o{GM?j$yeg+~uFb8}H83==_z~a{qh<*Q5dIr~n zDA1@+qS61S=o*>F}-s>pu$KWsrXc{ufvnJQ6h)fhN`eqpbs8#fvE? z10GlgkHkfWS0Q4NXfqhp`cW+P2DUzdM+$JRZopJi0hQoQkf)Ixe%uPK22&uWu*uLz zh%-J@sQwhlZZ$%^3(h~P)bmHkunHN9alT-qmSG7Z$mPi+byeJ`#(5?tsWHESkXPs6 zQ@P#{kcCqbaTW!LUcU<5qC*2y2J4S0bVJY#HZ%KNQKck*3F*ae5h?#DJV*x2M^Z9) zJNTD)NBrQLvV+TiLd1wpIKhPiasMrhP3?>y!Rve*xDyN-tLxW-%fNeePWl@*CcZ8s~pyBgRkV7Bq@Db#9Z1_k)kO zP%wScfBpj>l!9||6s90w;=|zi9cVGp_yoArz(0XUg7bB`bS-1$;1A|=YmNVkwu~c{6wd3ZRg|Qkd-~ZJRw-mp=)nU2;UP(C1(}Y*BQ1$BB3uQ=_o> zSS+7Z;AM!Q$H)?0VGEe{e4>V5f%ooF)NM5BJ0~^nRI9Kw zdG~{{D~_vARg~aOM9?l+jDluZJm@(<7%&PbGT&Z`-bVSf&prRLW08H;DhD(~osZngX(5b3*E(X)_lPKU8Fm2nH>GG$*v@PGK z=l3O;PJ_1Va(fIFjt@hxY_ApIgYW4VDqE5@E&-1mtZhIt(Z+3Opozc`h#B+Y=SV0zR) zu4kCN0O#1ZDr}LSK^HK+kLslJS}=Y2Hd5yw;xKR_zD$#~{64x1y&fJe)${AV6yu+^ zP@ngSEy)J<37Y!!9rsv`T+{YUR%8yQ*&KIjju{zSiaIQl~#Z=J_GADJhry+RD9>U z##8Z8Fdf3$bc0s8*5lD=TZ0SdRbifZPdj&}8hi?-hfCblVKZbSp4}2}N2G3;o^wT9dfxM&af{M2_zQBByXn67Iw!xcAGm`9E!&5K0VqK zvj>BAyR+Ek4TXz~J%L1Un$$D#ZdCejW;o)r7u!NXThwEBM5{&Z81m45%Kwo?G9(u5l*c9O|oWqg0_e|8Vm=W(NM9+k)V#CgG1R3q< zakI27x#ukEv`@~zP&7EF^ETX=UJz}@pTyDGDnUH2m<9df8 z!6=MzIg8!4pv&V5TqMDrGo{P2Lk@4m>+{-z$j%muxB^AC#62@5TOz$w%9$LDM193B zMB81(F|RumU_~Q?GiJ^xDt6gDK8M}sj1@a$p-4Csa@%Z&GugLED^Qy3Y zmeg^_W2Mr|QXGEwq5U0RuhZ_Z72ErUC(kLesnsZ*6%EgvUOKfTI=jg0b=!UD2sXFF z;r2$os+#l9sW~p9*4L1o{UUmrS|W3{)INSeTik4#!|f?@N9;}?yc_e`9j=f|v(sk3 zn9z1Hq4RuUydhu5`O*fV>te!-np=F4ly>{YDr3K(MTzUnBwIXU_Y?<1;h4=HaoJop zkJ^Orc{FStw0xxL}wL+Lmp?y9WF+Pjt1>9z1P_;BC}sa z=D3K=DP-{r6nHUX+#=xx(s?c-^EM%i)41|AAtYIG(=z)-JcItwq({*m>SaUB?zY#v z=KLCBI;l@+NSAnJuH=n7JgzWCnaAdJggtJrOYcbGSqn-1lQiDAV3$eUSn6h>sWZYeBhjK_ zXK}39i)G6mbw)ff&2=_0b;q2+VANxC27Qs3+vfFpL(WLl;R?guUbipeD5{_2WAQ&y zwg2f%9e-NW$wDQ;X;EiUG&I0g9P)V305%_%1fTAGeYJ|%qhXK77xcwE!DuuV!KxYa z#B6SF#N)PO7m^saKQeiwC3A$)&QXF>1B9UVIpRYiDi~phh&Zbo{p*Qksk;DCG?JsiF_oP3zpuQ)W zR5Q;k+Us(8!dP0czQ6;~#MYOj zei_9Mr!$HL$5R}$M_t}X;@g*`M>D)pN7U`M`LM7ALqSh8@kp(dKL~sKXf#qBwuNF& zM=%%+u!%QZ>CxtU&+y>vDbZQJ*wh)plBu`iNpDIl7<1Tc;b1Hl3ps*zJW}kIuFbI1 z(}COPh&dxMdH~%K+buPdG9or_C>9Eaoakcqm^+pze_6UY{>RTWwxW^}JbKxk9-G5u zw|ks6x2xFaaC)2`thayavB=S67Lq6N_6L|2Zr>yIy!4N4u{W8Kmd}ned!(CFGMred zosMYK=Ze}Q#U96lnR166_r4A<#BKIspDP@7+TkFt(-RA5b@;=6~?qYpUlBdj%-h!yg(j_o^MKdaktGL^x4t)wn#Yaa76#CadzRC3*`J~twS4) zQ`@=8JWMOk`7^HG%ucV{<#xJ!cDL8&v^$-c2NHR2NmuuByIf(LyEusFXNN7~4K(f2 z#KUh%vEI?3!-Jy*w>yLpVhcMimf+d{lWyqkamBEq^~HR}?qWwU~5j} delta 31404 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 T9gX2;YTFf$oY5a%7E=E|K9yhu diff --git a/hash/sp1/bench/poseidon2/Cargo.toml b/hash/sp1/bench/poseidon2/Cargo.toml index 9a7b28e..54b67d4 100644 --- a/hash/sp1/bench/poseidon2/Cargo.toml +++ b/hash/sp1/bench/poseidon2/Cargo.toml @@ -5,7 +5,7 @@ name = "poseidon2-program" edition = "2021" [dependencies] -sp1-zkvm = { git = "https://github.com/succinctlabs/sp1.git" } +sp1-zkvm = { git = "https://github.com/succinctlabs/sp1.git" , rev = "4528b7861c60ef5e25c2d0b328fc6d244e2ac98e"} zkhash = {git = "https://github.com/HorizenLabs/poseidon2"} ark-serialize = "0.4" diff --git a/hash/sp1/bench/poseidon2/elf/riscv32im-succinct-zkvm-elf b/hash/sp1/bench/poseidon2/elf/riscv32im-succinct-zkvm-elf index 742a2c8eb9df5cfde75940a18a5fc05c0fa092ff..eb5740f1d3d270e1799f3e02511df73d72923904 100755 GIT binary patch delta 47232 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 diff --git a/hash/sp1/bench/script/Cargo.toml b/hash/sp1/bench/script/Cargo.toml index aa82847..f8cba27 100644 --- a/hash/sp1/bench/script/Cargo.toml +++ b/hash/sp1/bench/script/Cargo.toml @@ -5,7 +5,7 @@ name = "bench-script" edition = "2021" [dependencies] -sp1-core = { git = "https://github.com/succinctlabs/sp1.git" } +sp1-core = { git = "https://github.com/succinctlabs/sp1.git", rev = "4528b7861c60ef5e25c2d0b328fc6d244e2ac98e" } rand = "0.8" hex = "0.4" zkhash = {git = "https://github.com/HorizenLabs/poseidon2"} diff --git a/hash/sp1/bench/sha256/Cargo.toml b/hash/sp1/bench/sha256/Cargo.toml index 9973ccb..81b1556 100644 --- a/hash/sp1/bench/sha256/Cargo.toml +++ b/hash/sp1/bench/sha256/Cargo.toml @@ -5,6 +5,6 @@ name = "sha256-program" edition = "2021" [dependencies] -sp1-zkvm = { git = "https://github.com/succinctlabs/sp1.git" } +sp1-zkvm = { git = "https://github.com/succinctlabs/sp1.git" , rev = "4528b7861c60ef5e25c2d0b328fc6d244e2ac98e"} sha2-v0-10-8 = { git = "https://github.com/sp1-patches/RustCrypto-hashes", package = "sha2", branch = "patch-v0.10.8" } diff --git a/hash/sp1/bench/sha256/elf/riscv32im-succinct-zkvm-elf b/hash/sp1/bench/sha256/elf/riscv32im-succinct-zkvm-elf index 5c22e41a4268a0dd74ded1017877f1e2ba03a8c8..c5498709935e68d81f20299a9bcddd100292b30c 100755 GIT binary patch delta 8544 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ᰩo1*VF_K=E<# z7u8=`&ZZ3Z4Nq20_%LNJGy?yQv>dN1$Cu&dayBf`1JiLr#qm@ho5obzH=&{WGCIbv z+>9@Wnr`B}F--*G+p?K4y>xOocc&U(dlS2%ZRfYyKQK$NeA`rH)v`22l^rE}D$3a< z)Hj5FT}^%U@~|=O8KJ5>s_JAy&({ny-gXlkYIPjV8sp$azPdDi7sgSi#(KBL**Oea zhNC?lsJ5j!$h@s7NLr8!Ug=6G=Y>&crdnRwnNaOYsCOmoEZha{@j6|YDqSr`DH2gU z{brVq0>yM(&(Fw8prc{UY;qK841FctsSH&wDnn6=%Ct^pQEoz=g0La&d#2_YzGG{d z&{Z;`%j7O(N*6M<3z?ReMV(C8RWL^0uoFA83z=0!7U6aw+eL(2<`kFVU@V$7bVPAk zL1wBurW@DH;)Y#hMlr~5c(A^yuF|VsQeE4WR!!YkG~1Ld)i(`GkKen6T^Ds6&Fw{M zaBG7~zpf!nXDrnXd_}f1njKiO*sQc9Y~ng~HR(_`16K<@hhLRLH6uK@wGUR+tx79O z#`PUFu-w2hyio2SjXD!6)RnQ?rBv%us&|w|SH)$JS6%DZ1!3CJoQz|6xC4c_^JjDs zws>`AG}jGHS##|mW5||ed0K#j)<=RZ!w%GR`;DMG%{l4zyHaGs!QcbaXlj%D8* zp9-ANcU4t49M!aR#fX1j%_iRBWx%eYdY-4an(y3^UcMafNX61M%XD;E<-c^*k##$s zwv<(-LPhueFbEYlFfhTNW=s2~EU59zCz|#~3S5jYg zZ7(*KvFB1&sD_3i+enk^xn>xDu#9bv9LrTKQ`JJ#&;s4ZWwK`@~6jJYuKXrL_M3Ea#VbJpwCPPA0N6E#5X^{wx=9FFcscW zZpO2;(2q|)z&1pdf=?CQ4joO^EZxHeqi2b-|Nn`S;i9}qqNsAgUAkOZK7CGkV^dr< zlZ|d0*2wm<6hbx8G@jVOdc_=tWkcXfIDKqEXdk!huKKu9Bzy16D_T%#UE8`M-mm}2Lb~HoqQ%tfr_E>k4IQ|y-yO*` z_Rsvgt|T)ou-D+s@ckoOr}y8!yWniU=1=xcV;7o7?=#upR%hRNEqLS+qU|?JG@TI@ z6fnAN7SZ6>B`P8!R!~6mz$tJ{@V|l2_RGk*{>s@z7r-*)oPRS1_WdLNavlV*zf0Jg zj}eUme>20a?|wYFp!it?v8+U*Gs4M^<{@W)HGJEAxH=-yC}H{m_y9N?%JkMDzrJ>} za;}VM#8`D9zNpNq$%2Pz|fd>oT z0sbsUehqv9yfY&Y=%ogt^|nNkFeq3;RR0F2Og)YXMtte|TmxS|oSBfDgKtX9g94g@fn7NY>%a%Vg~GuJ@Sz-e;WI>6asrqJKAj_f z9()4aN7$bPzmwzdp=Cs8kkKM8HxS`Q47@&3A`1gN<^Bq!5DK>n2Y&<3P4ORAv@ZIu z0nGWGM^rv3vinU9`U0FyeMv3RMflZ)-`OjPCPAJp)!tRt^MKXY^UBs!m$tG%bBKCR zi#lQmI%Lm@s3WFf+VS^G#PgosAmD@GNrLx-FM>-7GV*E5iJGQ>h5RC>Z2|8Tyy02c zza@dv1^hF57X#ZdVLD;R*MI;O1!wa!y7}rC!SK!HL|;4@ZK;0+pDvB~=H}i1GtPO@ zC0dAG&^PV8H=RqNnDCY10=m~jEx`Qa-BSs^3}%84fXBZbbzAvbY!}ESA^+>vvHu&e z$)y!UA3h{eIqY~&!b$}9aJ1(BFx!YQkdpLfT=N{!bhzaopZ3pNKmT$j3l^Y)N2f;> z{1n{xCz0BVONlHnPbD|og4EJ1iJI^apSA#AN@935j∋)CR7O3}`^}scU7$mvC(@ESIQWxK;jP0{dYBdoBFDfW1HY$R?ta%4n0{ zv>BPMh}Z#Ng#4(m{w4S*7Rf)JxnXTrd$FxdDSwe@?>iEm6yrYt?*wNvI(ZB3YcN7h z+kLI=p9oW83qBMl3 z`m%Auk9`-Z$Z=D!gQx<`KOXkfwjnpO_Zho8{JbA~b@&c=DcUH}9t@XypQstJ??Y8;_#NatxZlS0Kmg(g9rp@2rVf!igzEbM;*Zn;CEB6Q0@3K*Tjz%033K z`6{y=im~$xQPG1a5&vS)F9Of)HC%9S8Va5?ICHx537!C-#CDhj4bGdvC*Y5NF}yNw z`!?=;WDLU;aD^=xh;5T7B_e(YEFoeE3S52-e5M`-*w>uzS#W)cHh^8Gr&je|QA7Wq@m5jXf2_(Uktb|HTOyca9THr*-k zarDd>A(#K+`hc3ixdC0|oDLw!OsFhE1`t5DMq9wS88{CfwMA;r$RlM)v5OjtjC}_@ z_a2G%ik>(OKJ-<_UoledIyf1@5EC!yK5)xy+=ZAwz2e7QG~qmn9uN-yy%JA)HR{^B zCy@b7qBTPQ3-ALvezFN(QH34>m*R-y8T%1<#0wIACj6B{@vJ$AUJ%?HPq9X%kRL3?NaRWIXLGRa zg#7CB_+u$jE;29%hPgel4V>Gg{|(+*6GR8e{*Bmn>!K9R+Jp($M<>@haP{}WA|s!? zc-=`x&uzK>Ap12~UxMHHBA}O=5D<1zHsdp!k>N3GB|0QhbQJB~_!3quCK!Qh?#lM) zWPBmKdKU{~n(r!_qByo~CS_Z*!_9+PS)dpxUDY(%N+@b7;h9q@KHaIUtBspUJ!R>d zZKWLBaD6YSc&U`_8EVq7eA9N~iq>P*L|)CHqt~80HS;>{=u^@2s@^canpd@>SEI+8 z`KMPpI#pC!QsJmZqO885ZgGQC6ThKsFArrCie=4pT-DVS%a%>s)~1H94rOMbTaK#f zz9rkXkx&we_G((L>1duUYqn{dvZEzjFQF=qnbaKJH4IeK$}XpS)%NvtRIR+xZF`nF z>fWf@-X-0un(5_!Q+Lsbx|=X`S@RV;YTj-=7~z8bY)p7`H7TjxS_I_m4p}evReaH(QI3>QkJL7rm5LHv)`KgkfN8#_-o1({Gs$XgWM#& z$-0e``{d4pvi8R8)~4s0e6yuPZ{KzKoCocV!i%4_$=d}tRF)SuZPN2*Xy4o-pdf$e z^2SYj?|J{&S(A>_;2O^wUp>Jdy1uZ&=KrX0(6RmD#zit58%wEt|?)K%S3O~*1U98apJ8lLYb zbl;U#Q`O?pk=&hXIN)A3v~9;o_9ioRFJUCTgeJR+k#rqxY;y6_aXGz&`UWpqS5seE z?JbF`Nfqa#tvbmRZY@;_x8BR{FguQ>jd9!}UtJo14CA0vW4&AB^c)6NAvtkPbA8p< z+@!3Sj;X4d;FYd~a#k30W~ybSoe9;hgnC!P&ca>L9P|J@ejRqF+4lBWcFXvfVi_o& zt=f7rWhPZE{G^iIH(FCnTh(M)OPVQD^%GO$)z!EoRSi!$%TCA|ZZAzYO(lHzNmdrK zWz|z0-S!;Sc1_<6k37kwm~WaYHk|Ay98JcW`SWl>%vDpm<0&Z@FGJTd)zGYBuf}k8 zI7v&9ebv&Pl$8uWtzw&kl&gD&j7!;da1GeTR8*!XzqRaq;r7s8QPK_ub++J}YS`*q z4O`Y#)$>zH$8nQhSY6K+g)Kvw8gnc;;rXg#cuB*x5?=V~L3VrFz8W@##aumQt4SG8 z3{y+!4qoMug@;?%xNuS(`;YLQdNwbnCoTNo#Isu0RM&QmaNJXDd(2b~-_SKvO`!me zp@ttk#nuO!g=xV~0Exu(@`tCib`8|YeIU5x2d76zL-@Ttq3&cB# hWXEz=()P7ySn`3kHAh$rD><_p|0g0o{3k>D`#&VISKt5u