From 8e3f749a30f28e4916f66ad1d522f178cb3206af Mon Sep 17 00:00:00 2001 From: ayakayorihiro Date: Wed, 18 Sep 2024 19:31:14 +0000 Subject: [PATCH] deploy: 651c47642892066383ecc1ec6635744013e0119d --- ...jQewO-.wasm => calyx_web_bg-_TfqD86u.wasm} | Bin 2660941 -> 2660949 bytes .../{index-BCzwzkYC.js => index-CDNTEfUJ.js} | 2 +- index.html | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename assets/{calyx_web_bg-DnjQewO-.wasm => calyx_web_bg-_TfqD86u.wasm} (98%) rename assets/{index-BCzwzkYC.js => index-CDNTEfUJ.js} (99%) diff --git a/assets/calyx_web_bg-DnjQewO-.wasm b/assets/calyx_web_bg-_TfqD86u.wasm similarity index 98% rename from assets/calyx_web_bg-DnjQewO-.wasm rename to assets/calyx_web_bg-_TfqD86u.wasm index 8ff1ece34565edb5f6a1587c69f332772f12119d..f2a10f4bb1d38a31e045d0f112ed40beffb3b5d2 100644 GIT binary patch delta 6501 zcma)A33yahmacQ(t5?gdS4+0aQY5b`2?>ypAQ-j)xdJHyEl8_K<8F`RfVMP@sI*Ez z3<28(NSlidA_$Fk%U;MGw^3|FToGJYM9DZd?cOeE+d6H}e_tgEe)fEme5d|%&OPVc zbMCv_doS*|k6r_9-52pKJGz37gqLPsk5n;s*weABY+T3Uf?Q1xwGi z&vinz9ugI4``nIMg^ii(^7azh+B∋7`O3crsTPE+BSDN4PO_Rq+-Y2ygo=hr0b- zj)~WMl!kc0WliBtYa=t|6)$AYOpG=tH?yp)9~-OvM`isRyE&#aaCL?o$z@G9(kRxH z{dY`ZrEQOP)DbClvyp?Yp!T7VGqm0k6`8v#XPfMgo{Yb5fO&OSLprt$tfrF8sG1nj zkd6-r-Jkhe?PV0wZ37)cm(kd9MO{Cb{HD%kY`3Sw-}m>K38!76%kS7YP`4Z&2^JdM52fj_Qipbc6yy@dnJsnoUwv zL=tjkeZ-M%*U*AQz%fMLRWni;Uyto`sG6B6!!aizoq$Zup%WC4@oTB7GSI+&<8zop z4Qwe;95QC4yuhWt87VXRh2LS-?2vqU4i(Akuf-%gzbPp1yp{@D0=ng0BWY>uGLmqv zW=D-AM=)@o7!7Qr2_79hpwVhz>or2ZMx(ERtT zHEFw_E}pa|%Q7*ln=?dMa|Y(DP1?%DFoI)ZjTenU(|2yOlcC z0}JVMJrt|j=+6y5USB`1YiPFn^o%-0OD_X0d&LO($RfH7A$qmbL;xzf?Efg{+xDJf zCc*fmI=pTja^id%{=*tBfhBT3TmEhdm4ZhB74qFBbTtJPs<>4@Clt^mQ@7Lo-Lt1b&lJ7mlx648>2m4{8it_rS5hDO*a{k(<%?v=-L$ToSBLJVv#3ljm(r}8 z8%FOhu55_Y(IU@ZfeH8Xm6XW3P3wttVkNco@Q6BAu3AMG^(YX!w;Fa2H8TGFhz8_> zdua_!QfugiQ}lmZLxZ62zm~29ELcyK@`<(73zPKCwX_NF>-(qCB^fr*zo0?gt&7@&D}WlokJdUn;hND!s^X z@Pl+YLf!KqO~YRC)q^yJL7cRiN&r`Grs)O2kco{?bh&x%LJ2xgOYYi8NyWENfQr5w zv5@~%OIf>>>e0zXTdBYoz)q5nnRUZf`mJ7s1=}%r0eSOw`hyjS>cH}}4DCmYxq~(W zFnCQc_-qGN*nt@>Hh1!c$BDwO{2@%1fV}7-x&pB0A!?*xyRnl%3}k>zW$g5Rw2U^W zPtz9Waw2W#WzX&GuM^Z;Z{W)CFtgbG^JJme=*D8wjJHSn5oE>OvGf60q=PYmE{gO* z$&-_6bN%Y;7V9}?LRpwyJ&){&I?6oLs&|!fxvVL_QC%~sTQ1N>jq07rkSU?^&#@vJ zE2mh;ExJ{OF0>M?zdnGmKe<OgWk77s~eCc7c4cE$&m!HP$b@y>+t(4rV$< z*rT);vTn8+b_g`M;t`M9KG%vj(0cXU7VBe!_R5DdRt@b@$1~P87J3H5;d4y)43+oo zL`$98x6>LQ4EYfq=T^3*a+g)(+vCyuk6(V6u}WprQyBE7DxXn5>;vB0-gzu(Lu$tvu%bTmA=70)L=(FYQa4JZ^I7U$aPB+#sQx0 z1k)qs`cr%3?S4=|HQpY4=K=aiB^!8eR*`)WUR~};JuiZI4ym961;cGOkv#C*%_|yXe!VcYMI8rC}h0VJFna$y5!`8slM_P5wT@kOJPj?t}`@%tdeX} z^H0PQvTH)vk-r`t$y2o}Lcb&`Q>*XBu|g$k@5<1hKc{=u);sM|=3ewej$eRP+9evt<+6p3&ttYu-$+d0qLb+tOotK^FZ@plTH|e12 zv)`UYIj`Z4ZMfm=?6e%EHXX2^BC1e`Hri+6J{6K%57-Iy>Kpc$V)_qN^rd~oz-hSp z8+*Il@U{IVRVwfS1KYv_-`e|FVWN2!s`8CRqLpBA@zhm`K58k2cSq^CIyWc$sX>F~ z;pC^jxwvBRXN%*e_5B_!L#eA{Da$9jYp~jVkmm4MD z^%Fd)pP+~}+lIWqZ#b#q<>8IJX}j9p68?zDtF})FKgo>!p0r$Zcc?&aX^RKt;^s)H zykL4fPwkl){^AuntR726W)OSDBdLF6y{xN>^p*SiM+%i)8CgiVebeqVo{i__(@*(T zL>pCs7?@>OD_HNh;H%&}o#mWl>`sY+Sz86$(ik03kBG=@a^GKgcE7-LLtMQ~+zo`K zOp#LKM@J?yZw1Qda?)tLbTl2yan#|lk@Rr-KqVI-Evx>==B>oM&5@ynk^iP%>eGdh zhe%H!>YhICeqGV7+9FD|MFTaoQtjFny^nk->AU-xYRg3P$U6|7TkdL7I4`zQfwt*> zH)h$1I52H9*P?yZ&Zt_oGxn#U{Od3awHkW4Jt^1JL@LzQPhw-p8u`Oy8$OGD<--DS zyZwIcLETrb{ycV+^3{zeV#C*&`uuQDDEZjVXrA0xABm~NikuV8F`s_J)q8_KyEmj% z@>ou$-h3>~!g4}WVN!O9NH0|o&7DKI$vlyho0hM{az7xy<_}odv~e)VWwG3Z+Mb&` zrzoesXSdT=a1b$P9CVmw&2rZ1ky<&TB@&X(#YJ<~)^p<*W=C0 z&SG{nD9;+1-$yRpg-OtLuwb0L=a%^U|2#?fkL_cw&!Ld~%TMFw@{?4=*SS3^)X%rz zb&ehMsDIrWFP%Wosi)mSSLU$P_iJjbx<6VNAAp_V2~pVT^S&LW zP^+BSRM<~p+ioVd&m+-tldM^l49oFn6b9QbolvMQolta3E-N^xaD~F3uJmq7P`LFj zQIK$}QK7b?@x)&8sPh&TU0y-8 zuA-Mz>1!odvx@BNgio+$d~k?nUnjzP4dZaKvn!)PZ97=9-pGNeySDW?fX_)xG^i`y zD9Jxc3)M|3@hstd!|Hbr`+$?9kCU*dSJNI&*v!yt|Kf)eiS{LrYU%|l1(ksuP*N>< zG&QS){-C~jJvAr$NyOctx=&tPZz;CBW2JmJPwzOKdWKQ4nsPL?(}=}%UfJ_D=AO6h zy}DAMa@DJ=;`XiPy8*n?Z(dqiWScFx6B*SkgqM9LonU@pl5l|N?;hArJY#Lcy#^)? zEcyB?Q>?-xNM5?BJWnp2P33aU8UEYl{$-U9x9;~ODRdDR6@Ux5NC7V3A_O>}i++G< zT

|KjWeZFqI1}oyWy6z!WZgfOEOX2b{x&A8Gw7Ixczx`g0Kg)N)Y? zsNrHLpdS}~lC2c#i(4_oK3wz%RCBRMdscBV7|@%G(*TuR!~hjs6a&h+r~}|;e@vSu zxrhL83Je02;ROItitnX>URf!@#Q|+v!bJ|Cn2S9G^OYIb0ml7~>)r5ar^JT8wZp1Q6z8w-#+K@&F+&$^e{;0e~RK$3$R& ziz6ESyg}3geOx@RWsBpRBGAi43BcrH1i;|J0WdC(>PF&%%Mo`~mdaQ-KdElKt8(wb zR-eb?F+hHh3F4p_Nb7_P3PV`*C*tA|41b3LBc zQ-W(_?WjA{qytAmTBkeEfy3RT6V;>x>Nd^ybgY9%K)O@ytK;@`90%W1bO8Okjygb3 zraIdmW1Rr9bZvA{9jvEgt=Gx)1lQH;z)WWkF49Yt+vzgH6K9#o-fR(XCr8g zFY4KBMLpL7OM!8a#~by;K(oQ;1E=_-o-WuffXzUy1Ezs*fi4HX8}whGAZ%{~ZU9b2 z+h_3k3$OwHqk%&}Gtl1p0e%FOlb|>RqmSV567W~r0JI45WYBu>JAud1b}29yKHH%q z_%{N-1-=5@kG3lC9`J90-vxXXatH8#;9CbA2K_MjH(AkE&!Z6fLHI}qM&o`MzXd7= z|2U`*+6O=`1^xt>gl#7~OQfksh9Kj9I8AfDue1IduC=LS} z79nnkl96KbiOMkWLpmh?TM#*HV+MtL#8e7jYv! zFx#V1N&DB4>FLe6>xr!Nq`a9#`H)=HeypT#`qqMHsJE4}M%d(7baEO$=IUg1e$-(N z?oKHsBkATx)0f9D&}pc0lRj4RK2^cR(2R>$q3y65H##}p@#Y8(ezg5`BAnB3B3(Qrs1?G{XZzHs-jp5SI^uTP8V{sf8pnC{ z$yP=C{=vEFy%$}r6+=7dXeUEFH)VNkFDx=5WzaP2QzKph7jC7bK?Mp%S6he1RU>#w z6iYN2Yh=3U)f{H#Z8n{U;K+9g^HhxU+h_wg!E+yIxzR(5Tl|D1>~uLX5pkA*L{eDo1OLTBEXi zz;MFmJ6scjhO4@os#zxQUPj(kDHdUNu{!^w!|KRgi&UpdHgFnW?#BFqm{L*~)9;|c zBK|81h;4UJ9_ixH9rQm~g_CU*7bhSGf96+o7vScpR8D^R$W;1($S0;xqi(tW@GiIQ z51$Ia;X~&5q(A%~mQrq(J zGBXJkxx?xR85`zC0yu4hzoWXu@8?pXc(0W%gzE`y)ILy0dplZVxKBbG$uc-vHy7L|?_hHFT8+OQMA~KcwGhetH=Ccm- z@rkqd&?sLB%?I4$ZJ)U8Ub;eznMK7IyLA>V0F1nk7Rpt#=~J~TCm*0jabyntuKy3u zw~DD5HCq*3dxECQaHs9Y1jX}nX)GMY+vrjN<~R1=P7T{3FstF;n~>X?khpXP4f^h6 z#=t2iF$sY9yNeI+rCZ1+F^T)sjv@XJi+?!ua%SUH^KR-WrDV?s=_;Z=V)lHh(q3}O zXXaCZ4hOF;pfbQG3uuAq%SJKS;cB)hV0R`>jY5tKJ^cF3rJ<)UIH~=|F{-iiMhsxcnG?iK56*K{= z(^pWbc;Rs>!rpFKK~DpI@ms1v&!fMkq5b^f1%4d3(*Zj>{E8d@{_Gq*oau9q;%TGn zDB@@a3e_+xzZKWvC#f%7{%g$he{i_k|L<@zu#!sM@Z9?;x)ClHJw?}|W_dx9!1F zW+j5CB_@{CC#S5VCF&eTHefYzx;M~&nf|bHFM6hFKYG4S(;5I)^E@90DA(>WlBjXd zQg_QgzQtm84tLpM=ofE93i!n}8|fy%wvE(4zP65y1kyk{$dDZy-De)A#qxB@Y$qxb zGg{1?aL)buc8TjuKFSeNZg#~U$q8BjRRQF-N?N>Fs2%I_-+2Txnz$>+j%~v%8 z!aV1o$kUgYBb;_jwHxI0;byJV&dnU8#$F*?p1ur1Dw0K4njwWfN17j)?EVTZr`4^l z$QkV?L*?pPwB!||&7;n%1%)W{ib!G3V6`OU4d8Lx;HFJkE+xceEPs5RS>=udQV^?B z?8pts#SP}OMhQ%Ootj-5PTSzyaKLr+byqL)?qHyXs4($JOz$K zKw`_OdF&X5P7)8N5C(XS7h*}A zH<8naD?^T$<{h9@oxJ}p?~-6bnUQ0bAS?hZoupDryKG`(S|EE=ST2|Jx z9?sK@*={w_ergx|So@@32{gQJi{!-f*vlH_$^L`bMm;i6?WlTI`|O}HDUx3eVXu6i zZK%PNJfc#VcrPrDlfn`ye1k^0^6~+JnVNwt3TLwPmT;aeqYZ(UYw2@2dSPHT;cY5U zioi~C2jR#PTZaeZBLD8tMKZJ`u+{0_w>0qKr|zXO3bu-4GG2?rmFI8Y686Zi=357; z4tW%?y=vtwUa4jS-g$dFQXR{OFjdMrZG$JIZ-F(+sDvFkb_v*6nOyHQ?Ob%1>egW} zZ=uyvodZW+XTHJA=fxf@eo(C6V`WS1{tiu#G+ScyUMne2?X-59WXQF9tht8&V4SjB zas1Zl>V;b6yi4W8{Z@a9zJ~X|?)bDadH1eMKKF*TonSoefOUaKgJ8>H>t_Y@g6#Hp z>ySg1d=g0^*c-EFQd3j42F$u0~N33CVmlN=->{ zgC7586#u!S_<5|^(#6x2!GtX87F^SV*2`C0f@cVq?Q_F|TQwsqmD%FVv6f3O4VE1c zk5-2oWJfYoL%1Spx`)PTS-Y?-DkmpnXFO^*dyC6hPE33~kIKb^;k;5AEDQa^L_LQ7 z3c0pdXeWKk$l1r*?-&UfRR}0o%0YFZxnZ_HOAEA;QyIn9`BrsiXYj>PPZdsea*71f z7g4Aa;#3VSY2Z_3GHMS>q>ktL`o)1cqdp)ZK3XN0PuoeK5xy{1rV zkUD=eL$iq*1d{$Hkuy8=zIj-^hq9c^m&p7_D1tVIu<@CmzW|1{2RnSL$->Mpc?*UaK)OX;y%kuN%S+~{Fi}G+Nx`|9E zVqL|f(P&(JkQMDA4o0GXF;SM!m98gKE{;YY$&WO26(E-RC^giEUo98*jJ`<*ZX{gS z>XE6cj+ovnn$xzqCMq}AWY0RRmN-+px=bZZ_mQeq-?frcteoSu+MfcV=I&U9oG~P4 z2t_KsV_%gSx~ws0EEyHwchYv8=g8wc_h&=hyYYB+iT!?0LjK3h+$~poyQeIdT9bC3 zohMTVb2m@Ze9hvqs!&fc@BOTRY`iM=R`mN3s}W0N)415F0y->v-5neIZ^9}OP-+$j z=f(m;jEjwu6XwR+%W*q?y*73$QMH`3E>=8@UXc%d8GDZ?M_}uk+in<^CvO;*|6o)r zIA=}*bDAnwUYCDKsc%gjl^x}ApSV7d$Q5JO7WwpiE=7S1kd~IQ{jP}Z^w+e63N;6*#9h~7ufeq=$g$EDQTzRjI z@1mGf6P$N|&(2a;PY{o$$xWi}g?O%PeLnsfnLLE7XJW$h@p#*U7ZnwOia{kH8 zUQA9Zq}9@RCwY74rHpddc_~|}1vS$3lPymcji_L1JIp++IIT;*CgsVQ(Jb;VPQczbDS|4>55y4OxfYTaGjouKx= zhOS!>9wGKk^=6AB50^gInw6lyPx06SjAlF+@Ds-0b^(9Pcoc9g;{>>d@tsOK3S|Ot zHRC?ONXGjBu44R<>b#QiQot3AR{}0)yaI3;<0fDP!w*@&;V4glOBr@6L9KxwF{4LcPWZVW=jBi!V0OLUbV>|%xGwucW7-s-4@@Sh<@-Ti} zp~<)cH{;tC8VtXb0CmQ@12o3#0K|BqdJSv5c6@i2?F!Fiwu=YGhiBo19D>{?K@0MW z@gSf5Na?P3TA9n`a)ZJkAIJ~VK@pJZQ!)eO=_I9VfufylrFX85lB>2C)aAnjuly>R z;+4N32)s;!I_Dp^+`N=G^B8XyE-1*QTzcMxTxbXBm*pVC)$%8&A? zNbwfNcRExwN~jbSuN)|2HJd;uAM50mqpn$W1*UYAy&6mf)TN_%x>b0UFHtE1n70}Yd{s?r+C6H9sU1Adk5M9@Ewqi0{sQ_H^}EIIry#MKLGs_ z?WaNSfhg~;!ujfK{5D=!2Rei2IeRN z|99YU^j)ZIRX?Z&HoJi?&}8&Af<6Y_2%QwL9kc@UCa3|l7DS$Kt7``oPJ*IvP!Bo- z2iJo>LG*o~REItna1&$$L6@Li26`9#A0Q8at_O{WtVSVdCHfAaeF8oP!sm-{(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const t of document.querySelectorAll('link[rel="modulepreload"]'))n(t);new MutationObserver(t=>{for(const s of t)if(s.type==="childList")for(const d of s.addedNodes)d.tagName==="LINK"&&d.rel==="modulepreload"&&n(d)}).observe(document,{childList:!0,subtree:!0});function r(t){const s={};return t.integrity&&(s.integrity=t.integrity),t.referrerPolicy&&(s.referrerPolicy=t.referrerPolicy),t.crossOrigin==="use-credentials"?s.credentials="include":t.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function n(t){if(t.ep)return;t.ep=!0;const s=r(t);fetch(t.href,s)}})();const Me=""+new URL("calyx_web_bg-DnjQewO-.wasm",import.meta.url).href,ze=async(e={},r)=>{let n;if(r.startsWith("data:")){const t=r.replace(/^data:.*?base64,/,"");let s;if(typeof Buffer=="function"&&typeof Buffer.from=="function")s=Buffer.from(t,"base64");else if(typeof atob=="function"){const d=atob(t);s=new Uint8Array(d.length);for(let l=0;l"u"?(0,module.require)("util").TextEncoder:TextEncoder;let G=new Ne("utf-8");const Oe=typeof G.encodeInto=="function"?function(e,r){return G.encodeInto(e,r)}:function(e,r){const n=G.encode(e);return r.set(n),{read:e.length,written:n.length}};function J(e,r,n){if(n===void 0){const a=G.encode(e),c=r(a.length);return U().subarray(c,c+a.length).set(a),z=a.length,c}let t=e.length,s=r(t);const d=U();let l=0;for(;l127)break;d[s+l]=a}if(l!==t){l!==0&&(e=e.slice(l)),s=n(s,t,t=l+e.length*3);const a=U().subarray(s+l,s+t),c=Oe(e,a);l+=c.written}return z=l,s}let K=null;function N(){return(K===null||K.buffer!==X.buffer)&&(K=new Int32Array(X.buffer)),K}let q=C.length;function Ie(e){e<36||(C[e]=q,q=e)}function qe(e){const r=ie(e);return Ie(e),r}let V=32;function He(e){if(V==1)throw new Error("out of js stack");return C[--V]=e,V}const Be=typeof TextDecoder>"u"?(0,module.require)("util").TextDecoder:TextDecoder;let he=new Be("utf-8",{ignoreBOM:!0,fatal:!0});he.decode();function ve(e,r){return he.decode(U().subarray(e,e+r))}function Re(e,r,n){try{const d=ye(-16),l=J(r,Y,Q),a=z,c=J(n,Y,Q),v=z;Ke(d,He(e),l,a,c,v);var t=N()[d/4+0],s=N()[d/4+1];return ve(t,s)}finally{ye(16),C[V++]=void 0,be(t,s)}}function We(e){q===C.length&&C.push(C.length+1);const r=q;return q=C[r],C[r]=e,r}function De(e,r){const n=ie(r),t=JSON.stringify(n===void 0?null:n),s=J(t,Y,Q),d=z;N()[e/4+1]=d,N()[e/4+0]=s}function Ze(){const e=new Error;return We(e)}function Ue(e,r){const n=ie(r).stack,t=J(n,Y,Q),s=z;N()[e/4+1]=s,N()[e/4+0]=t}function Ge(e,r){try{console.error(ve(e,r))}finally{be(e,r)}}function Je(e){qe(e)}URL=globalThis.URL;const O=await ze({"./calyx_web_bg.js":{__wbindgen_json_serialize:De,__wbg_new_693216e109162396:Ze,__wbg_stack_0ddaca5d1abfb52f:Ue,__wbg_error_09919627ac0992f5:Ge,__wbindgen_object_drop_ref:Je}},Me),X=O.memory,Ke=O.run,Y=O.__wbindgen_malloc,Q=O.__wbindgen_realloc,ye=O.__wbindgen_add_to_stack_pointer,be=O.__wbindgen_free,Ve="https://raw.githubusercontent.com/calyxir/calyx/",Xe=[{name:"Sequence",file:"tests/correctness/seq.futil",root:"/",passes:["tdcc"]},{name:"Conditional",file:"tests/correctness/if.futil",root:"/",passes:["simplify-with-control","tdcc"]},{name:"Loops",file:"tests/correctness/while.futil",root:"/",passes:["simplify-with-control","tdcc"]},{name:"Invoke (call)",file:"tests/passes/compile-invoke/compile-invoke.futil",root:"/",passes:["compile-invoke"]},{name:"Parallel",file:"tests/correctness/par.futil",root:"/",passes:["tdcc"]},{name:"Externalize",file:"tests/passes/externalize.futil",root:"/",passes:["externalize"]},{name:"Minimize Regs Simple",file:"tests/passes/cell-share/simple-liveness.futil",root:"/",passes:["dead-cell-removal"]},{name:"Minimize Regs (Nested Par)",file:"tests/passes/cell-share/nested-par.futil",root:"/",passes:["dead-cell-removal"]}],H={url_prefix:Ve,examples:Xe},Ye=[{name:"well-formed",title:"Well Formed",description:"well-formed"},{name:"papercut",title:"Papercut",description:"papercut"},{name:"externalize",title:"Externalize Memories",description:"externalize"},{name:"compile-invoke",title:"Compile Invoke",description:"compile-invoke"},{name:"collapse-control",title:"Collapse Control",description:"collapse-control"},{name:"simplify-with-control",title:"Remove combinational groups",description:"tdcc"},{name:"tdcc",title:"Top Down Compile Control",description:"tdcc"},{name:"dead-cell-removal",title:"Dead Cell Removal",description:"dead-cell-removal"},{name:"dead-group-removal",title:"Dead Group Removal",description:"dead-group-removal"},{name:"go-insertion",title:"Go Insertion",description:"go-insertion"},{name:"hole-inliner",title:"Hole Inliner",description:"hole-inliner"},{name:"clk-insertion",title:"Clk Insertion",description:"clk-insertion"}],se={passes:Ye},Qe="c66451d3c7b971d0ca81031e73bcb07afdd0a465",le={version:Qe};function L(){}L.prototype={diff:function(e,r){var n,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=t.callback;typeof t=="function"&&(s=t,t={}),this.options=t;var d=this;function l(o){return s?(setTimeout(function(){s(void 0,o)},0),!0):o}e=this.castInput(e),r=this.castInput(r),e=this.removeEmpty(this.tokenize(e)),r=this.removeEmpty(this.tokenize(r));var a=r.length,c=e.length,v=1,y=a+c;t.maxEditLength&&(y=Math.min(y,t.maxEditLength));var h=(n=t.timeout)!==null&&n!==void 0?n:1/0,k=Date.now()+h,E=[{oldPos:-1,lastComponent:void 0}],_=this.extractCommon(E[0],r,e,0);if(E[0].oldPos+1>=c&&_+1>=a)return l([{value:this.join(r),count:r.length}]);var x=-1/0,w=1/0;function F(){for(var o=Math.max(x,-v);o<=Math.min(w,v);o+=2){var u=void 0,p=E[o-1],g=E[o+1];p&&(E[o-1]=void 0);var f=!1;if(g){var b=g.oldPos-o;f=g&&0<=b&&b=c&&_+1>=a)return l(et(d,u.lastComponent,r,e,d.useLongestToken));E[o]=u,u.oldPos+1>=c&&(w=Math.min(w,o-1)),_+1>=a&&(x=Math.max(x,o+1))}v++}if(s)(function o(){setTimeout(function(){if(v>y||Date.now()>k)return s();F()||o()},0)})();else for(;v<=y&&Date.now()<=k;){var i=F();if(i)return i}},addToPath:function(e,r,n,t){var s=e.lastComponent;return s&&s.added===r&&s.removed===n?{oldPos:e.oldPos+t,lastComponent:{count:s.count+1,added:r,removed:n,previousComponent:s.previousComponent}}:{oldPos:e.oldPos+t,lastComponent:{count:1,added:r,removed:n,previousComponent:s}}},extractCommon:function(e,r,n,t){for(var s=r.length,d=n.length,l=e.oldPos,a=l-t,c=0;a+1x.length?F:x}),h.value=e.join(E)}else h.value=e.join(n.slice(v,v+h.count));v+=h.count,h.added||(y+=h.count)}}var _=d[c-1];return c>1&&typeof _.value=="string"&&(_.added||_.removed)&&e.equals("",_.value)&&(d[c-2].value+=_.value,d.pop()),d}var we=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,xe=/\S/,ke=new L;ke.equals=function(e,r){return this.options.ignoreCase&&(e=e.toLowerCase(),r=r.toLowerCase()),e===r||this.options.ignoreWhitespace&&!xe.test(e)&&!xe.test(r)},ke.tokenize=function(e){for(var r=e.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/),n=0;n{(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const t of document.querySelectorAll('link[rel="modulepreload"]'))n(t);new MutationObserver(t=>{for(const s of t)if(s.type==="childList")for(const d of s.addedNodes)d.tagName==="LINK"&&d.rel==="modulepreload"&&n(d)}).observe(document,{childList:!0,subtree:!0});function r(t){const s={};return t.integrity&&(s.integrity=t.integrity),t.referrerPolicy&&(s.referrerPolicy=t.referrerPolicy),t.crossOrigin==="use-credentials"?s.credentials="include":t.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function n(t){if(t.ep)return;t.ep=!0;const s=r(t);fetch(t.href,s)}})();const Me=""+new URL("calyx_web_bg-_TfqD86u.wasm",import.meta.url).href,ze=async(e={},r)=>{let n;if(r.startsWith("data:")){const t=r.replace(/^data:.*?base64,/,"");let s;if(typeof Buffer=="function"&&typeof Buffer.from=="function")s=Buffer.from(t,"base64");else if(typeof atob=="function"){const d=atob(t);s=new Uint8Array(d.length);for(let l=0;l"u"?(0,module.require)("util").TextEncoder:TextEncoder;let G=new Ne("utf-8");const Oe=typeof G.encodeInto=="function"?function(e,r){return G.encodeInto(e,r)}:function(e,r){const n=G.encode(e);return r.set(n),{read:e.length,written:n.length}};function J(e,r,n){if(n===void 0){const a=G.encode(e),c=r(a.length);return U().subarray(c,c+a.length).set(a),z=a.length,c}let t=e.length,s=r(t);const d=U();let l=0;for(;l127)break;d[s+l]=a}if(l!==t){l!==0&&(e=e.slice(l)),s=n(s,t,t=l+e.length*3);const a=U().subarray(s+l,s+t),c=Oe(e,a);l+=c.written}return z=l,s}let K=null;function N(){return(K===null||K.buffer!==X.buffer)&&(K=new Int32Array(X.buffer)),K}let q=C.length;function Ie(e){e<36||(C[e]=q,q=e)}function qe(e){const r=ie(e);return Ie(e),r}let V=32;function He(e){if(V==1)throw new Error("out of js stack");return C[--V]=e,V}const Be=typeof TextDecoder>"u"?(0,module.require)("util").TextDecoder:TextDecoder;let he=new Be("utf-8",{ignoreBOM:!0,fatal:!0});he.decode();function ve(e,r){return he.decode(U().subarray(e,e+r))}function Re(e,r,n){try{const d=ye(-16),l=J(r,Y,Q),a=z,c=J(n,Y,Q),v=z;Ke(d,He(e),l,a,c,v);var t=N()[d/4+0],s=N()[d/4+1];return ve(t,s)}finally{ye(16),C[V++]=void 0,be(t,s)}}function We(e){q===C.length&&C.push(C.length+1);const r=q;return q=C[r],C[r]=e,r}function De(e,r){const n=ie(r),t=JSON.stringify(n===void 0?null:n),s=J(t,Y,Q),d=z;N()[e/4+1]=d,N()[e/4+0]=s}function Ze(){const e=new Error;return We(e)}function Ue(e,r){const n=ie(r).stack,t=J(n,Y,Q),s=z;N()[e/4+1]=s,N()[e/4+0]=t}function Ge(e,r){try{console.error(ve(e,r))}finally{be(e,r)}}function Je(e){qe(e)}URL=globalThis.URL;const O=await ze({"./calyx_web_bg.js":{__wbindgen_json_serialize:De,__wbg_new_693216e109162396:Ze,__wbg_stack_0ddaca5d1abfb52f:Ue,__wbg_error_09919627ac0992f5:Ge,__wbindgen_object_drop_ref:Je}},Me),X=O.memory,Ke=O.run,Y=O.__wbindgen_malloc,Q=O.__wbindgen_realloc,ye=O.__wbindgen_add_to_stack_pointer,be=O.__wbindgen_free,Ve="https://raw.githubusercontent.com/calyxir/calyx/",Xe=[{name:"Sequence",file:"tests/correctness/seq.futil",root:"/",passes:["tdcc"]},{name:"Conditional",file:"tests/correctness/if.futil",root:"/",passes:["simplify-with-control","tdcc"]},{name:"Loops",file:"tests/correctness/while.futil",root:"/",passes:["simplify-with-control","tdcc"]},{name:"Invoke (call)",file:"tests/passes/compile-invoke/compile-invoke.futil",root:"/",passes:["compile-invoke"]},{name:"Parallel",file:"tests/correctness/par.futil",root:"/",passes:["tdcc"]},{name:"Externalize",file:"tests/passes/externalize.futil",root:"/",passes:["externalize"]},{name:"Minimize Regs Simple",file:"tests/passes/cell-share/simple-liveness.futil",root:"/",passes:["dead-cell-removal"]},{name:"Minimize Regs (Nested Par)",file:"tests/passes/cell-share/nested-par.futil",root:"/",passes:["dead-cell-removal"]}],H={url_prefix:Ve,examples:Xe},Ye=[{name:"well-formed",title:"Well Formed",description:"well-formed"},{name:"papercut",title:"Papercut",description:"papercut"},{name:"externalize",title:"Externalize Memories",description:"externalize"},{name:"compile-invoke",title:"Compile Invoke",description:"compile-invoke"},{name:"collapse-control",title:"Collapse Control",description:"collapse-control"},{name:"simplify-with-control",title:"Remove combinational groups",description:"tdcc"},{name:"tdcc",title:"Top Down Compile Control",description:"tdcc"},{name:"dead-cell-removal",title:"Dead Cell Removal",description:"dead-cell-removal"},{name:"dead-group-removal",title:"Dead Group Removal",description:"dead-group-removal"},{name:"go-insertion",title:"Go Insertion",description:"go-insertion"},{name:"hole-inliner",title:"Hole Inliner",description:"hole-inliner"},{name:"clk-insertion",title:"Clk Insertion",description:"clk-insertion"}],se={passes:Ye},Qe="651c47642892066383ecc1ec6635744013e0119d",le={version:Qe};function L(){}L.prototype={diff:function(e,r){var n,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=t.callback;typeof t=="function"&&(s=t,t={}),this.options=t;var d=this;function l(o){return s?(setTimeout(function(){s(void 0,o)},0),!0):o}e=this.castInput(e),r=this.castInput(r),e=this.removeEmpty(this.tokenize(e)),r=this.removeEmpty(this.tokenize(r));var a=r.length,c=e.length,v=1,y=a+c;t.maxEditLength&&(y=Math.min(y,t.maxEditLength));var h=(n=t.timeout)!==null&&n!==void 0?n:1/0,k=Date.now()+h,E=[{oldPos:-1,lastComponent:void 0}],_=this.extractCommon(E[0],r,e,0);if(E[0].oldPos+1>=c&&_+1>=a)return l([{value:this.join(r),count:r.length}]);var x=-1/0,w=1/0;function F(){for(var o=Math.max(x,-v);o<=Math.min(w,v);o+=2){var u=void 0,p=E[o-1],g=E[o+1];p&&(E[o-1]=void 0);var f=!1;if(g){var b=g.oldPos-o;f=g&&0<=b&&b=c&&_+1>=a)return l(et(d,u.lastComponent,r,e,d.useLongestToken));E[o]=u,u.oldPos+1>=c&&(w=Math.min(w,o-1)),_+1>=a&&(x=Math.max(x,o+1))}v++}if(s)(function o(){setTimeout(function(){if(v>y||Date.now()>k)return s();F()||o()},0)})();else for(;v<=y&&Date.now()<=k;){var i=F();if(i)return i}},addToPath:function(e,r,n,t){var s=e.lastComponent;return s&&s.added===r&&s.removed===n?{oldPos:e.oldPos+t,lastComponent:{count:s.count+1,added:r,removed:n,previousComponent:s.previousComponent}}:{oldPos:e.oldPos+t,lastComponent:{count:1,added:r,removed:n,previousComponent:s}}},extractCommon:function(e,r,n,t){for(var s=r.length,d=n.length,l=e.oldPos,a=l-t,c=0;a+1x.length?F:x}),h.value=e.join(E)}else h.value=e.join(n.slice(v,v+h.count));v+=h.count,h.added||(y+=h.count)}}var _=d[c-1];return c>1&&typeof _.value=="string"&&(_.added||_.removed)&&e.equals("",_.value)&&(d[c-2].value+=_.value,d.pop()),d}var we=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,xe=/\S/,ke=new L;ke.equals=function(e,r){return this.options.ignoreCase&&(e=e.toLowerCase(),r=r.toLowerCase()),e===r||this.options.ignoreWhitespace&&!xe.test(e)&&!xe.test(r)},ke.tokenize=function(e){for(var r=e.split(/([^\S\r\n]+|[()[\]{}'"\r\n]|\b)/),n=0;n"u"?n:l}:t;return typeof e=="string"?e:JSON.stringify(ue(e,null,null,s),s," ")},B.equals=function(e,r){return L.prototype.equals.call(B,e.replace(/,([\r\n])/g,"$1"),r.replace(/,([\r\n])/g,"$1"))};function ue(e,r,n,t,s){r=r||[],n=n||[],t&&(e=t(s,e));var d;for(d=0;d"u")return null;if("currentScript"in document&&1<2)return document.currentScript;try{throw new Error}catch(p){var i=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(p.stack)||[])[1];if(i){var o=document.getElementsByTagName("script");for(var u in o)if(o[u].src==i)return o[u]}return null}},isActive:function(i,o,u){for(var p="no-"+o;i;){var g=i.classList;if(g.contains(o))return!0;if(g.contains(p))return!1;i=i.parentElement}return!!u}},languages:{plain:l,plaintext:l,text:l,txt:l,extend:function(i,o){var u=a.util.clone(a.languages[i]);for(var p in o)u[p]=o[p];return u},insertBefore:function(i,o,u,p){p=p||a.languages;var g=p[i],f={};for(var b in g)if(g.hasOwnProperty(b)){if(b==o)for(var m in u)u.hasOwnProperty(m)&&(f[m]=u[m]);u.hasOwnProperty(b)||(f[b]=g[b])}var A=p[i];return p[i]=f,a.languages.DFS(a.languages,function(S,j){j===A&&S!=i&&(this[S]=f)}),f},DFS:function i(o,u,p,g){g=g||{};var f=a.util.objId;for(var b in o)if(o.hasOwnProperty(b)){u.call(o,b,o[b],p||b);var m=o[b],A=a.util.type(m);A==="Object"&&!g[f(m)]?(g[f(m)]=!0,i(m,u,null,g)):A==="Array"&&!g[f(m)]&&(g[f(m)]=!0,i(m,u,b,g))}}},plugins:{},highlightAll:function(i,o){a.highlightAllUnder(document,i,o)},highlightAllUnder:function(i,o,u){var p={callback:u,container:i,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};a.hooks.run("before-highlightall",p),p.elements=Array.prototype.slice.apply(p.container.querySelectorAll(p.selector)),a.hooks.run("before-all-elements-highlight",p);for(var g=0,f;f=p.elements[g++];)a.highlightElement(f,o===!0,p.callback)},highlightElement:function(i,o,u){var p=a.util.getLanguage(i),g=a.languages[p];a.util.setLanguage(i,p);var f=i.parentElement;f&&f.nodeName.toLowerCase()==="pre"&&a.util.setLanguage(f,p);var b=i.textContent,m={element:i,language:p,grammar:g,code:b};function A(j){m.highlightedCode=j,a.hooks.run("before-insert",m),m.element.innerHTML=m.highlightedCode,a.hooks.run("after-highlight",m),a.hooks.run("complete",m),u&&u.call(m.element)}if(a.hooks.run("before-sanity-check",m),f=m.element.parentElement,f&&f.nodeName.toLowerCase()==="pre"&&!f.hasAttribute("tabindex")&&f.setAttribute("tabindex","0"),!m.code){a.hooks.run("complete",m),u&&u.call(m.element);return}if(a.hooks.run("before-highlight",m),!m.grammar){A(a.util.encode(m.code));return}if(o&&t.Worker){var S=new Worker(a.filename);S.onmessage=function(j){A(j.data)},S.postMessage(JSON.stringify({language:m.language,code:m.code,immediateClose:!0}))}else A(a.highlight(m.code,m.grammar,m.language))},highlight:function(i,o,u){var p={code:i,grammar:o,language:u};if(a.hooks.run("before-tokenize",p),!p.grammar)throw new Error('The language "'+p.language+'" has no grammar.');return p.tokens=a.tokenize(p.code,p.grammar),a.hooks.run("after-tokenize",p),c.stringify(a.util.encode(p.tokens),p.language)},tokenize:function(i,o){var u=o.rest;if(u){for(var p in u)o[p]=u[p];delete o.rest}var g=new h;return k(g,g.head,i),y(i,g,o,g.head,0),_(g)},hooks:{all:{},add:function(i,o){var u=a.hooks.all;u[i]=u[i]||[],u[i].push(o)},run:function(i,o){var u=a.hooks.all[i];if(!(!u||!u.length))for(var p=0,g;g=u[p++];)g(o)}},Token:c};t.Prism=a;function c(i,o,u,p){this.type=i,this.content=o,this.alias=u,this.length=(p||"").length|0}c.stringify=function i(o,u){if(typeof o=="string")return o;if(Array.isArray(o)){var p="";return o.forEach(function(A){p+=i(A,u)}),p}var g={type:o.type,content:i(o.content,u),tag:"span",classes:["token",o.type],attributes:{},language:u},f=o.alias;f&&(Array.isArray(f)?Array.prototype.push.apply(g.classes,f):g.classes.push(f)),a.hooks.run("wrap",g);var b="";for(var m in g.attributes)b+=" "+m+'="'+(g.attributes[m]||"").replace(/"/g,""")+'"';return"<"+g.tag+' class="'+g.classes.join(" ")+'"'+b+">"+g.content+""};function v(i,o,u,p){i.lastIndex=o;var g=i.exec(u);if(g&&p&&g[1]){var f=g[1].length;g.index+=f,g[0]=g[0].slice(f)}return g}function y(i,o,u,p,g,f){for(var b in u)if(!(!u.hasOwnProperty(b)||!u[b])){var m=u[b];m=Array.isArray(m)?m:[m];for(var A=0;A=f.reach);T+=$.value.length,$=$.next){var I=$.value;if(o.length>i.length)return;if(!(I instanceof c)){var ne=1,P;if(Te){if(P=v(Le,T,i,Pe),!P||P.index>=i.length)break;var re=P.index,mt=P.index+P[0].length,M=T;for(M+=$.value.length;re>=M;)$=$.next,M+=$.value.length;if(M-=$.value.length,T=M,$.value instanceof c)continue;for(var D=$;D!==o.tail&&(Mf.reach&&(f.reach=fe);var oe=$.prev;ge&&(oe=k(o,oe,ge),T+=ge.length),E(o,oe,ne);var ht=new c(b,j?a.tokenize(ae,j):ae,gt,ae);if($=k(o,oe,ht),je&&k(o,$,je),ne>1){var me={cause:b+","+A,reach:fe};y(i,o,u,$.prev,T,me),f&&me.reach>f.reach&&(f.reach=me.reach)}}}}}}function h(){var i={value:null,prev:null,next:null},o={value:null,prev:i,next:null};i.next=o,this.head=i,this.tail=o,this.length=0}function k(i,o,u){var p=o.next,g={value:u,prev:o,next:p};return o.next=g,p.prev=g,i.length++,g}function E(i,o,u){for(var p=o.next,g=0;g/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},n.languages.markup.tag.inside["attr-value"].inside.entity=n.languages.markup.entity,n.languages.markup.doctype.inside["internal-subset"].inside=n.languages.markup,n.hooks.add("wrap",function(t){t.type==="entity"&&(t.attributes.title=t.content.replace(/&/,"&"))}),Object.defineProperty(n.languages.markup.tag,"addInlined",{value:function(t,s){var d={};d["language-"+s]={pattern:/(^$)/i,lookbehind:!0,inside:n.languages[s]},d.cdata=/^$/i;var l={"included-cdata":{pattern://i,inside:d}};l["language-"+s]={pattern:/[\s\S]+/,inside:n.languages[s]};var a={};a[t]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,function(){return t}),"i"),lookbehind:!0,greedy:!0,inside:l},n.languages.insertBefore("markup","cdata",a)}}),Object.defineProperty(n.languages.markup.tag,"addAttribute",{value:function(t,s){n.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+t+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[s,"language-"+s],inside:n.languages[s]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),n.languages.html=n.languages.markup,n.languages.mathml=n.languages.markup,n.languages.svg=n.languages.markup,n.languages.xml=n.languages.extend("markup",{}),n.languages.ssml=n.languages.xml,n.languages.atom=n.languages.xml,n.languages.rss=n.languages.xml,function(t){var s=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;t.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+s.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+s.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+s.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+s.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:s,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},t.languages.css.atrule.inside.rest=t.languages.css;var d=t.languages.markup;d&&(d.tag.addInlined("style","css"),d.tag.addAttribute("style","css"))}(n),n.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},n.languages.javascript=n.languages.extend("clike",{"class-name":[n.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),n.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,n.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:n.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:n.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:n.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:n.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:n.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),n.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:n.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),n.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),n.languages.markup&&(n.languages.markup.tag.addInlined("script","javascript"),n.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),n.languages.js=n.languages.javascript,function(){if(typeof n>"u"||typeof document>"u")return;Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector);var t="Loading\u2026",s=function(x,w){return"\u2716 Error "+x+" while fetching file: "+w},d="\u2716 Error: File does not exist or is empty",l={js:"javascript",py:"python",rb:"ruby",ps1:"powershell",psm1:"powershell",sh:"bash",bat:"batch",h:"c",tex:"latex"},a="data-src-status",c="loading",v="loaded",y="failed",h="pre[data-src]:not(["+a+'="'+v+'"]):not(['+a+'="'+c+'"])';function k(x,w,F){var i=new XMLHttpRequest;i.open("GET",x,!0),i.onreadystatechange=function(){i.readyState==4&&(i.status<400&&i.responseText?w(i.responseText):i.status>=400?F(s(i.status,i.statusText)):F(d))},i.send(null)}function E(x){var w=/^\s*(\d+)\s*(?:(,)\s*(?:(\d+)\s*)?)?$/.exec(x||"");if(w){var F=Number(w[1]),i=w[2],o=w[3];return i?o?[F,Number(o)]:[F,void 0]:[F,F]}}n.hooks.add("before-highlightall",function(x){x.selector+=", "+h}),n.hooks.add("before-sanity-check",function(x){var w=x.element;if(w.matches(h)){x.code="",w.setAttribute(a,c);var F=w.appendChild(document.createElement("CODE"));F.textContent=t;var i=w.getAttribute("data-src"),o=x.language;if(o==="none"){var u=(/\.(\w+)$/.exec(i)||[,"none"])[1];o=l[u]||u}n.util.setLanguage(F,o),n.util.setLanguage(w,o);var p=n.plugins.autoloader;p&&p.loadLanguages(o),k(i,function(g){w.setAttribute(a,v);var f=E(w.getAttribute("data-range"));if(f){var b=g.split(/\r\n?|\n/g),m=f[0],A=f[1]==null?b.length:f[1];m<0&&(m+=b.length),m=Math.max(0,Math.min(m-1,b.length)),A<0&&(A+=b.length),A=Math.max(0,Math.min(A,b.length)),g=b.slice(m,A).join(` `),w.hasAttribute("data-start")||w.setAttribute("data-start",String(m+1))}F.textContent=g,n.highlightElement(F)},function(g){w.setAttribute(a,y),F.textContent=g})}}),n.plugins.fileHighlight={highlight:function(x){for(var w=(x||document).querySelectorAll(h),F=0,i;i=w[F++];)n.highlightElement(i)}};var _=!1;n.fileHighlight=function(){_||(console.warn("Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead."),_=!0),n.plugins.fileHighlight.highlight.apply(this,arguments)}}()})(Ee);var ot=Ee.exports;const R=at(ot);R.languages.futil={"diff-addition":{pattern:/^\+.*$/m},"diff-deletion":{pattern:/^-.*$/m},comment:R.languages.clike.comment,string:{pattern:/(["])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},namespace:{pattern:/\b(?:extern|component|primitive)\b/,lookbehind:!0},function:{pattern:/\b(?:cells|wires|control|group|comb)\b/,lookbehind:!0},keyword:{pattern:/\b(?:|seq|par|if|while|with|invoke)\b/,lookbehind:!0},number:[{pattern:/\b[0-9]+'b[0-1]+\b/},{pattern:/\b[0-9]+'d[0-9]+\b/},{pattern:/\b[0-9]+'x[0-9A-Fa-f]+\b/},{pattern:/\b[0-9]+'o[0-7]+\b/},{pattern:/\b(?:[0-9]+)(?!')\b/}]},function(){typeof Prism>"u"||typeof document>"u"||!document.createRange||(Prism.plugins.KeepMarkup=!0,Prism.hooks.add("before-highlight",function(e){if(!e.element.children.length||!Prism.util.isActive(e.element,"keep-markup",!0))return;var r=Prism.util.isActive(e.element,"drop-tokens",!1);function n(a){return!(r&&a.nodeName.toLowerCase()==="span"&&a.classList.contains("token"))}var t=0,s=[];function d(a){if(!n(a)){l(a);return}var c={element:a,posOpen:t};s.push(c),l(a),c.posClose=t}function l(a){for(var c=0,v=a.childNodes.length;ct.node.posOpen&&(t.nodeStart=l,t.nodeStartPos=t.node.posOpen-t.pos),t.nodeStart&&t.pos+l.data.length>=t.node.posClose&&(t.nodeEnd=l,t.nodeEndPos=t.node.posClose-t.pos),t.pos+=l.data.length);if(t.nodeStart&&t.nodeEnd){var a=document.createRange();return a.setStart(t.nodeStart,t.nodeStartPos),a.setEnd(t.nodeEnd,t.nodeEndPos),t.node.element.innerHTML="",t.node.element.appendChild(a.extractContents()),a.insertNode(t.node.element),a.detach(),!1}}return!0};e.keepMarkup.forEach(function(n){r(e.element,{node:n,pos:0})}),e.highlightedCode=e.element.innerHTML}}))}(),function(){if(typeof Prism>"u"||typeof document>"u")return;var e="line-numbers",r=/\n(?!$)/g,n=Prism.plugins.lineNumbers={getLine:function(l,a){if(!(l.tagName!=="PRE"||!l.classList.contains(e))){var c=l.querySelector(".line-numbers-rows");if(c){var v=parseInt(l.getAttribute("data-start"),10)||1,y=v+(c.children.length-1);ay&&(a=y);var h=a-v;return c.children[h]}}},resize:function(l){t([l])},assumeViewportIndependence:!0};function t(l){if(l=l.filter(function(c){var v=s(c),y=v["white-space"];return y==="pre-wrap"||y==="pre-line"}),l.length!=0){var a=l.map(function(c){var v=c.querySelector("code"),y=c.querySelector(".line-numbers-rows");if(!(!v||!y)){var h=c.querySelector(".line-numbers-sizer"),k=v.textContent.split(r);h||(h=document.createElement("span"),h.className="line-numbers-sizer",v.appendChild(h)),h.innerHTML="0",h.style.display="block";var E=h.getBoundingClientRect().height;return h.innerHTML="",{element:c,lines:k,lineHeights:[],oneLinerHeight:E,sizer:h}}}).filter(Boolean);a.forEach(function(c){var v=c.sizer,y=c.lines,h=c.lineHeights,k=c.oneLinerHeight;h[y.length-1]=void 0,y.forEach(function(E,_){if(E&&E.length>1){var x=v.appendChild(document.createElement("span"));x.style.display="block",x.textContent=E}else h[_]=k})}),a.forEach(function(c){for(var v=c.sizer,y=c.lineHeights,h=0,k=0;k");h=document.createElement("span"),h.setAttribute("aria-hidden","true"),h.className="line-numbers-rows",h.innerHTML=k,c.hasAttribute("data-start")&&(c.style.counterReset="linenumber "+(parseInt(c.getAttribute("data-start"),10)-1)),l.element.appendChild(h),t([c]),Prism.hooks.run("line-numbers",l)}}}),Prism.hooks.add("line-numbers",function(l){l.plugins=l.plugins||{},l.plugins.lineNumbers=!0})}();var de={},W={};H.url_prefix=H.url_prefix+le.version;function _e(e,r){e.active=r,r?e.button.classList.replace("off","on"):e.button.classList.replace("on","off")}function it(e){let r=document.createElement("button");return r.classList.add("toggle"),r.classList.add("off"),r.innerHTML=e.title,r.onclick=function(){_e(e,!e.active)},r}const st=document.getElementById("passes");for(let e of se.passes){let r=it(e);e.button=r,st.appendChild(r)}function lt(){return se.passes.filter(e=>e.active).map(e=>e.name)}function ut(e){if("passes"in e)for(let r of se.passes)_e(r,e.passes.includes(r.name))}document.getElementById("compile").onclick=function(){ct()};function ct(){let e=lt(),r=W.libraries.map(l=>l.code).join(` `);var n=Re(e,r,W.code);const t=document.getElementById("diffEditor"),s=t.querySelector("#input"),d=t.querySelector("#output");d.innerHTML=n,R.highlightElement(s),R.highlightElement(d)}async function dt(e,r){if(e in de)return await de[e];{let n=`${H.url_prefix}${r}${e}`,t=await(await fetch(n)).text();if(/import/g.test(t)){let s=e.split("/").slice(0,-1).join("/"),d=Array.from(t.matchAll(/import "(.*)";/g)).map(c=>c[1]),l=await Se(d,`${r}/${s}/`),a=/import "(.*)";/g;t=t.replaceAll(a,"");for(let c of l)t+=c.code}return de[e]=t,t}}async function Se(e,r){let n=e.map(async function(t){let s=await dt(t,r);return{name:t,code:s}});return await Promise.all(n)}const $e=document.getElementById("input");$e.oninput=function(){W.code=$e.innerText};const te=document.getElementById("examples-select");for(let e of H.examples){let r=document.createElement("option");r.text=e.name,r.value=JSON.stringify(e),te.add(r)}async function pt(e,r){let n=`${H.url_prefix}${r}${e}`,t=await(await fetch(n)).text(),s=/import "(.*)";/g,d=Array.from(t.matchAll(s)).map(a=>a[1]),l=await Se(d,r);return t=t.replaceAll(s,""),{code:t.trim(),libraries:l}}te.onchange=function(){const e=document.getElementById("input"),r=document.getElementById("output");e.innerHTML="loading...",r.innerHTML="Compile `compile` to generate output.";let n=JSON.parse(te.value);pt(n.file,n.root).then(t=>W=t).then(()=>{e.innerHTML=W.code;const t=document.getElementById("diffEditor").querySelector("#input");R.highlightElement(t)}).then(()=>ut(n))},te.onchange();const Ce=document.getElementById("calyx-version"),pe=document.createElement("a");pe.appendChild(document.createTextNode(le.version.slice(0,8))),pe.href="https://github.com/calyxir/calyx/tree/"+le.version,Ce.appendChild(document.createTextNode("Built with Calyx version ")),Ce.appendChild(pe)})(); diff --git a/index.html b/index.html index 5cde51733..31f6d23f8 100644 --- a/index.html +++ b/index.html @@ -9,7 +9,7 @@ - +