From 63a9263affbdc2fd7bd90c1eaa99abd3e3ddbf5d Mon Sep 17 00:00:00 2001 From: "Kartik K. Agaram" Date: Fri, 14 May 2021 08:09:04 -0700 Subject: [PATCH] . Fix a stack bug in survey_baremetal. I'm not sure how my tests weren't crashing, but I won't bother digging further. --- linux/survey_baremetal | Bin 53105 -> 53111 bytes linux/survey_baremetal.subx | 1 + 2 files changed, 1 insertion(+) diff --git a/linux/survey_baremetal b/linux/survey_baremetal index 2c7a7ec457fbca5e2f6fad0a59c3c3596d030123..91e0c5752bd85d94c357704201f8798fbddf176a 100755 GIT binary patch literal 53111 zcmeHwcVJXi_WuNi5JDuOND+mRBF!O{5->`r>IzO01+n2IneZYZ37Hv+f|?c7FvhY) zU3>ZJ+She;jiLy|1yoc}S5dHmRcHv z#?PxKoFrE&ex}VKdi0Yl+nYe(mCKqs^G9=&TYdunmCKr&0Ef@s@-sz#rpnLbrZ9$n_O(P;F{hEIG&#U+vRQX;d{>NkR4Yc0pg)}M!^=ylJNn}P!{A+criRV4!CtIjBO3N{ z4Vz+v1t(_L@KKQg|2L1M8e#TG(iR#zE>}adnS59{B0Qy`i;r}%?ldT59MzNOG<5Dv z_0!zvum_sAtWaiuN6ZDh1uY+F<9R`aHmXuZ>ZTNNSpO-2mv0<^-~ z>5+LUa~sd?msZkvZhBgY>7^Jc)GY?KC#h>Bouh~iC`AD!b>*SW5=F;>Xj84?Zf>P6 z8F!=izvteghsOO-NnvTKiy@=6Y39*~EE8YLQa8s_x&)Lqg3?4yX)~Tj>gSh1d0Ogp zAp0gLxE>L*VF))pY(TR`;LtzXJ=30;^ zFzGHs6jjTnMROyp#z>FoQg{9w_o@QIoontOrxhe+yq#;lP7^@=3!o=TF}nKBHJ?@u zE$gqH>E@BlgEn5RBWQ*+l6zChjqr02TLQboz=)rWv5YkvLd+3rGabDRQ}Zcd&dM&p@jjdkuwr^d8onspl& zq(!Elom;9Ji1e)(A}8UsbN$8JHhm+)Y&BNY^ZZ#%NGRIP~^6fD&r>f zavgJEd-XliG67m5Q`|oD??33?J`C`yHTVR8BSmaN3xoe&gX{5Lz=IYXPj(l{DA1h%>R&)Ur)NyctJrcfxe8}QX7?crA3?_LwRX@|gQw6m`K3;l=0hU# zM3;HX_mCU5TL+byN6|A$RKE)G-4&WyzY1+B!QPVjA_dzRUo>G;UXermDQn>B~N<8Tdg6sfI zcDJJNJ56@4svM!oevV2A>odD0CcB9T3QL>Xmw?$U-*FIRX?v>5?V8sBR0^_>e`_gI z&rF=)-KD^FF0)1ftI0{Gd~@8S^z7FWjwbh5HE`|p9%*7wW=!r!kLUJt({iA9;nbFo z3McnlnaY}PnB!K9ffyU?=TXMJnyNZ5NcU>Cs$8y>bp|Sh4R(JM(<`BuKWnmADGFOS zoU^k2s48t4;?1ZO%370{?1`G}c1599lijT-)%6kQmQnAht(s8}-t z`w=kP+pT#Wrz+3aWWB2L6kVBzO2O-quM?`PLh}kJ3SBjYN=;#rqF~&kKzD0{{Z)fb zQJ^s%_lN@59@kp|TOQ}5*qU}=XXErPX$ba7TMD5Jmq=$L(}%f5I@G&3569PTDShMCC3dM>AP&jakiI=R4jnsEAxfCi}CaMKha^v*mG+$(< zTYSz+X`J4bp1bmgna?PgS(3UY&2%p~Uy}a+G7oi&pNBZ^mdvG{fJky=F6~0lT$h|S zYLj`(f1=T(WVNJD424AS~kcT=YMz*Y1V(z&lfA!n>jMaurAlEFH?}WCW4%#A=d!%ZY9p6Dwmhy z9I4r}yj}G3{ffziL`?pz#)eHj8+7HPKqu{xdOrNZQV-mmRu8nMo0Bqmj(erIaV8}^ z*YS{oPO@M0MaP>LDJs@B4Y_8tr5hzy(|cq@XQqhty|74$LN?Mmku9g`=bfqtVV;v% zp(y|g^SELwybqv4mUE((Q_w!ZgN4DE_GkLpJ%G^IPX@%$9-wJ6FOg0%kyId2LP9#( zwqNN)kcnv8%>`)YvoMj#!<fE7Ar-p zW;5EB3N1VW*!VoKcIoFjU~%OUJdrT{g^KAfTHDOjtC_9@<|B$}x@Jn+_Z6|u(kGvu zvZ|M*m9%Kr1+v>sz~fPNtm$;wJ3q5rcAS=ywZIYUPOXKvK;wHQz%^_`%lufB(O{gB z)>!MNwPRWjjLUgxkp*sA4`$`RvC`A9z&+1APely2NRNkhgeg=}gg@U#45>MgEhISdwwD>Gi z>A8|2-)cKuwb^9&VjmR2GO(k+r=M9S)?}lWiJzx4B}Uo}@mxn+G9KrU(MYBSq@b@- zCM-g);h~;VR6(uSszirmETLd9JEMLd2-hE^!nN`^>c$(UP-ZRZkQM#3>WF}CdEFi_ z2I?L>_?N4sR%>(*(je?eC2>fl{hX?gmlD6Fc>FIUUQZs)62Hmm8Nx>*i7R=OYa7hh z&)fsn`2yVoe%_!qf{YW;8Nce$-JBU%enLZ?7B7(^cch!x%G(hojs@9P$&1kfSPm8S8*djEVE{amafT zA=|RDeH!`8JuzZ4Q7+KeM$Iw(7{&3KSfr*=)EK8IpGM9GvQX5jIOKVWkb7(71sZuu z9P;W!$ZzSu+o+K{$08RMi>W%2(RfCNyST_ao)juZwc1l580l=(4i}7Tr==W0oSBxr zEBgnUMUo2G4U-GkqrddXj@VN;BAT@yrmsyh-=b-8<6d`CGi|`u|3Vn9P^SaC8g^RC zK)B(viTZef_N0yIBVv!w9Q;v?J)6EwggjIu{{-Yy>Eyy^?)fkldCZ^$cKuYFCYRdz zq}^xU8;4w)2>Ahxyb#FfvClN(kgrdKT&0n31TtoB zAg0e0u~X^~!e}dxsXvI#flH1azJNaJ4^~ilDK+}(b5&OkK5`?JlRqPq>dmKZss$UW zBN?w$Y?=+wHvgc(dJQHpF*q(zUSo1wu@02tK~&)zmLh-?nh zVDmM#{qI{EFwjBsN3Ex74YgT8H5*76%^e!-a?SG&4aSbY^4J2_+EE4Q&!x#;biTO& z;;c;ea{6K10(8y}J2Q3)HTsMv=q88h;USA~d6v(33^k(;LRx@`=e3*%azNFWGuFLl z0g1KTBzmTSWc-~tVFB=xTKULD!qck4cviyPr>dgiK0unUSI^*ts^8mS(#$9)bu0?3 ziG<*ON@_757~4qp=(so0gTJy_&;v6tU)>tGaW{)dlWT@dCWaG)$mnn&GR4hP5ViTt zZ~4F&6k-;Vh(j54IU&+zCvj@%6iI5B>W*CGj*R2y2~nQOsks$UKW(5AoA@8;sBv%`t14 z6<7E4xKc}^b#C)qU3V(g3D8_~hOST#gJ{W3@ErVVK7N==cZQ9J4Wi)s-fxyUf$ z6v4K^V~HO7=0ehfT`Qly8>^MQB?j(XnVXgO*>v(z zq_?A#XhryIRdT~;qBxFsnM)vCgp|XgiC=S zRS^;$kbSqIe>zu)-aWDCgM{dF&9e_f2@t7akPUrLG3#iqIZ3q}#l)Y?NphKMNmT+% zNV%F704ePq!?R@-j;&;v{Mi}dBj^%X{_H+sapYuMX3x%`>AN9`jMh--76~(!GIU~S z4WWmAwiw%nkVyCXH*Bom$ShMDHg=w!M!VcH=U%K#9-@_y-Q?fy6k`-QL0V&xn-~>i zl#A5^v|?k^kRorVA@ERB%+R?@xl?;XXRRJOe}-ss=!|3Gz|?q=s(I)ftLuJNpt)wM zuFf7p6fkW@gKqO1>W^GA8mPAoske30ZD_*rs~A$xsTN^8ggVENqO~}0Zuby3_ee=( z5xTH($YN$wQqsmq-^Mfgx{K!)`OJ|V>@$cS9V=RqjgOG|jDf{A*!Mn7pimz>87$hW zLgyBl=W1oXjebdGnr~ae8C{1;WxlEF##5aI`kbnUcjuT-algRVSO_o(7|k+oP+-Q* zsJ7|$V%_vIn)*Oy4p)BFV%M#Q+U39yx=qP`k@8KtGT3!aJJ;S=1>X&d7fKKp?IDCxUc^^BXpG;r@jC@T%{egBD(7 zMjvZRYVf7_%w?>71g^8iTD&jVao`-w%%C7KojmgI*uaT{@KXo)A?I8H%eQ zB)fD5cL`n+ndUae5gQ7XBUOhub{m&~JGMunwJBzI)fnfed_`{#-_q+hd0xt@)3DWl z9B=jC%Yz0z5?lS(euBP3IC)4$xjyajUp2j7TH#bauMI!fFejy<9}dNZ4jxoG7)^b) zN0JBLw6?uYRBXh?(pde>#~g$7^LCKqjT7Go7CCXEkzq$O)!00KQqDu`uP{dbeEd!ZA_m~q1aYjteiKPtox08*d2kg(;Kn1 zN+;g^Sd+Aosx+CthUV=kopIZ>IUS_gqjtYxbzgYYIrJxQowe61 zrXyT=me$^dfV@m~N%b@(ubi zLh}uiZ|H_e=e4Q0VKQwhU2FxkTv*wc!CA+}Ek=zAR99rKVbL%)jT5OtDxr6*Xiaky zP&kh%Ow$y~K>;H8%pE&oG}83@1QgaXg(OYkdQIWlI0}y^pzst^cwT$QdQD+=ECrU0 z3kvfeGUghM`I*M-9gEr2WkkFNyHj0}IZabYrwXh8+hh9g;GM&m-8ANSUK5izwQa|2ZonJ;Uz%+M5EaTJy$ps<`NG-wK!f`S+l z>nY$kf<)6j2`D_s6lQ4(k7)`kV=2hP8#)E;K{10*Zc-wH^S=&e3g1V!IRIK&Q>DO9--(?26e}I&ZGoBUO|h=`DpdrG=Rj4 zF?W$T8Y@-gAk=D?a>;Fn?C}%w#0iUl|E$lm`JldcXo2(xhe}WJUaFt36i}+B+ z?u_V&aVtQ3pi4>hCQy84fs)&J2CbY47rL$HL8@7HNYH$nbr36xovTZ!&v=XIik15I zmn zGeMt>gXkSRCXzm8YmqraiDC>HO)cn4P&(tOt50bQIW{&5MGK*6{2(TcO zUSxhm>m_G!t09Q?Wd4N191~m?L-4v-f^x875{nGNBJQ14M~L*7UhAPt*k4l8s|O7` z$%16x|;$6cd%&f5OAxLt+3-X?f!uUfVUza`cy9)cBMz?Ju^+|&r75`Aq#3-0AC zQLF{&V0xCy}g`iuoUT>)FO95Xn~V}o%XQ(QAO*JtCn9@=DeSa40&T)&Fr`l(eT;Glrqk(bqMKkl=b9har}GK7g@XrxbIR0(NliskzoGuG17(MyIzr z5rGAhF`CJBK)^^+OupS{=|M6%aNSzvoJ2EqtZ-K@gM~w=%M;vZN z9Bz`vtp+ZM%rd{eAx1%zy+A=lF@pm`slCB5m&Z1n`&RH^-@S@w23FRC7Gq_eGZc3L zY#SW!0@yJ)Mkrv1!+gkNhPfVATzhG*sadkSitGE&TYVN>ZG+(3|UZ}ZV z3>@z3t(<=;2XwfpcwdOcTnhvoU@D1Di)A8=Ko?HfOVh|pM-e>c-me_*e!I9w6#*;J|7B%c*LAxNn8CqcvYyf(tjZEwrkVDe@j_N}_^fT-J9sPVI1mMc1hT3|kcf_WanUc^&@d@Y&6$GoTcjv+co$CA8CUe)Qq&c7Tu zSidQYDvP=5(l6zkhO4?5xGaP%kA97(^`m`+l*V%hr=2C1*QxZ5X3wjV=*6%9&_1|Y zNk0h@5aP@?pS9E?_B~4IS!9_e4+mBVk_}O5+v45@8i!DD@>LkSHn?Bo6S~CjuXW?f zA=Ke07(Xc%-_ZE15Qf^x!I%|38mMP0{Ea$W7X(LY`~$>QRNkcVF92$T!mp3TN2Vvu z_JhJdOXFV))U67?P~#)8eG&#V?m;V7_Vn7cwZrnPYPNzt zGYKb_V!e{$7M>MsQoNx3aZ9`uXDT+vPiXDwlw!PUc1ZChhXfw@1h4NLu!tp^;g~!k z2?*-g7`hGnS(DXg2e~^Fk~7W&Hj~`UiJGlbU+T^L@)#bM$MT?XFTW!NwqDO0jSxMd z*Bq<72EYrnizRXl>$GvMn>)!x18oK2hF&qfx0Uk+x(mZvb<5o5F}l)R_Oazt9E-!` zjcN1DV?IGGdMj$XwrmiAg6nK=LpR+_eRoWP4WAnKQQchgeC>OGgMvgfSols~Y?EPn~45O(rwimff!4``rf`aJ9 zU2zl^B%nZdAxMU~T871-AbPPNmV$T(uLqsW2ZxhijM`d&sV_7D`{;brHq=AJx*j6d zIj&`@Z`W!1bDSI>(Na~%(p$6$yD5ctZUR1^2>Akyyj3IL5r_O`BIKbO`G7_)jYIA~ zKGpyvw(b7yU}~4TA0CH%S|ViI{o4|aY(5d&=lVp*w)?jYKo&N8C>9wLXyg<(nW!*Y zfD5X83Maoy!#c)pdOQ(_^;$8{Xz@-_9GYHFgmsn1dPmFETVctVhRs)gQHgFyo|!>k zZLnk2u#$P^WqPsfAz|m42UM!Qv4vg>*r{_b&io=g(m2L)wt2CB#xO7*Lc!Uikc;=5 z`1w61%$VOmPJgM#)dZUO%7^lQST<-D8Rk$;m-+P8&%DB=uV0dUJlucHC#?DOobdE&wpovlVf~oi?D-m8`%R>RyY~mqO5%F` zEe{~w>%Ho^=~%*zRk*F!>y#;l0mf<8Bf)jLV%;w>>*b1-=(VAqn@($+^^_Ra&+yJJ zcj63iy+pCr>k5ah4?k}Cvta#&dTzS1ZPx$#*&3#z*C%P#e+1WN#rjyaypXK$|i{O!UxrIfrdz$`Tb+yfKesJT9?Mcl$I`?XJ@o*liwUeck9JkHsw(Z z)YuNbu#WldBUU9*6ICCoD%+PazN{+6s^nC9rl3&29|yYz7xasj4fADuzNcw?POOT| zuEb1agSMt`xM@E{blJp%;wP^CNxN#Nd=eHnI7e;unRl@q49GKHT&rruWtkoOUP1km{`uM|^0*$d?&04)pRYI%0%p3NBg5&2ry@Q2!9RyxL;R!8& z{7?tAJcreA7j-*M%X7Ku3f0tfK2?bKvG@qT*w?U!O+{~CiL8|sTY=74S|7u5p}y&o z*0FEZR=5J#9)gF>zMx(>(!Ds}&Jw=;D$f9LX12lr<*+s@C?%xP99IhEh|J zxsesj498G~VtBQpY|KKvWQgtvy-SAGnqe8>E~Ua}zN-d_ZERjiO+}`7zmOST3j`1K z1Qs2rC>sx<9^;>S=vLLyB}Ye>^fwQ`qI$RmaC@onnU#v68kKwqO4dY3+p3Tnnr-oK ztc-uE)mLI3V9$z)enUIY?$h$B@Q}fDi#jP8?=N&BSD;sQEMJf(3`PsYVrSTQza^`1 z27{j4a0cqJjCORFruSr`0&AJ)^PwwSkF9_U>_w*7*JC{n1gPaHZ!k}WJ`wfOaL=l0 zX}Bl1S+W^^z^$f&z63~(%3|YcRI>!Tc@V`)aD#T8KLON|ph&SYouS3-1IC8End6_c#!GDh83OB7u$ zfo$whH{E9mEF7vIJ-6;qP4^OFY*esX>p{Tsmb>m%^8N$$(p%Q5YUwSPtEGkUZ@?X(!e@S|+`2Vyky+Msh0fk`EjwdO zoQch{qT&AL8=SlX(4eo;rbSMFbAzhl*{Q$zH&r3OE~USDtFFTOHX1(K+|KzeC<*U* z=N|SR;~JcyEaHA}3VS=E&N=G2wS+TO+=IBi=F?+vW`S7R*3T%5jS4v3({vBel%jJ;GM*+)ITv<)xU5& z)$!Mt#U%>TJooaN3Cdyfm>hIFV4ghAve`Tr6LXkHB;Kf!=DGOa5QJfnm;vVSGpfom zPd2Xs042;b>28~Ow()S#=6O~TWEv@*ejaG$& z))#28OxQ)ys(&GmI43rtjK_O;DFg+w3BBw&c(ldiRF20@RB0t|t;bKB6L&ocPW-3u zEsY4zP3PJR^}@d&RVY22a+jqCBNO#9u;r*~8Q8`sv5i@PTR?@+yixhR;I)uyi%jud zKcHmP02cl5nIGI~acV6FNeyjy0f0(FomKMozt_-}EMMJsmWG?sj-8+&_OqhHvsoF6+SbdhI`XNs%VAx`#cM<29u^J4c>M~ zj0S1fQ5Mg}!V_bD zCOwNYnqBPqJmC2oabDKX{QlB9{X7Na_+aM?4%)03et#(iH=M?@wz={YK%RqwX+%|W zE#6Zev8xbOUzCc@_$i@9-lqQ;Yq zW!#t&(+HJ>hZvV}W6LK_vfOAp&82Z`tR+aZko(7)x`Cd3yeVhCd>hc&&d&g9poaPv zLxG-ouZA)KCBFNfX?@F3_|?2rL-j2rsMpws7-}dzOOEq3)X9LdZQ9ReDCU@}p;iLw za!qS3LovrAG}L2&(%*q){F9+DX_%kgYV}c$d-7V|DyJ{gKGhxRmGn~f2HNK7#~Pup z&zWaFY+4wFEuYw~d5bN&g*?!>U%U-CPd_Jh>MY*nq{|&*pROlcz66-a{f9 zhf(m(UutYZt&b2n3B$ha4ZOaFlO{YzoTtta+d6&DmW@M*4Bi9S^EP@5k-*|3&d>2= z5py0(^ZkQw3s1BkQ`f)|0$4{eHb)YRo45(&@h=US}D5W`c7!097V+ly26Y@a2Z(?$<@o0$a@guxe{B2_g*3JP|}&*Zm}3}DYdf1~3}Wb5B>B!GtMSGf=yE*W9GNJQcHW0??u z#oTm+c@Isv;?Lc*9A%tACt1cYB%SIX|w&m4Jf(9ayuuF%grl-Zg%A%mR8d#dstUAbRXUZX32RFx}q zWmHv`>q-PiV>G0Dj6*#$N}fTLxm1`|eZoZ>t+)|MVoy$AJ(9eN^2w}SR!gxN+=SnO zBw*G&LGjr*Kmrw;RVve#Z8xFqXKp*dc#u}oE~8(G_M7i&+Wlf_V;w;-kJ(_v{bU>e zJmOJoE>ver`Cp~~9$$FfuzBAAZo2G4r^KsIqSolCZoT}#FfoH)01RWaA?V(^%6wh9LsbsbmG7y_bY1ze zs{DzgGSh5Pm7l1}V!>Jb-4%xV22dHZNM{8qFd7r+Su8hl%wx2~gM$~DM^W??iec}4WWA;1dVHytD}D9podLF;zNAHfB{dhB4|TJiip=hc0J+%g zofdkrdEN6CW$DIWkYOV^l>8(Y3}w>0siN2%@qP^4Lb!V!b+y<`*qR$j~l< zv17Nw*anP;7~@{$Hx>qLB{1&L7&ims3C0Mw6zMUv^8xggku8Yuvz=NRe4I3x(B zkj81GEFf)Rq;5{6^wqN&r#?y_^o5F}c5*JwT)*Q8&+7Q{XCh!3@tCX5rwB-V zZ82^KF%mKEylX9G7mL%=Pt|lHo`1L(0ML#Ig6poaMY-7=6WGmp`Yq7UJpFprbN&7e zM8e>LevvcV9z*}W*Z2WaaYQ^phoDX;Ta_bpWiM6POIHq2m4|P#I%SMim8Py7rz+pj zmD6*F^eiz>Koe3*^B2D20^QQrOGR^w&EE7@kG1i~b3BWB@F(yBm{|X9=2Zr(q!6@f zQLu83x=le|hRVOG7ME^$9+m%5EuY@1aFR};mMj!ZZJTbHg321z^0;nUipqOc%T21q zkyKrIJ(y@KF4NC!#f9p*BUXGE>{vBRIZ|_UX;PJbUAa|No~A2zsmckevY1sXh&CKl z8sYWzTwYzU@OyyT?NlmQLl1JI#g-X>$|RJUA-%12epxw>UNDnC&z zQ*}$y@2F)Y3YK7`ZkdS61*)ZoYH?WNFpoxUi7)gsTjD+S+!0GufE`<6|DT~WwnUw( zd|OwpRF#`_j@|}Zn^3UM zzT*MSR(l%C<806^S*ScywcMv#9D4pU1u?tFuhGw}=dgP2h@K6w zV?D1{DWMTkl{LEZ5>j#Gkg-$D$xwQ*Zk7ZuE^K$uNNWjZl>x(r$O4aaV%2;cn5e?QW6@gBLT>u+|t+ETkT zU4;MA<`zPs9lLcTl5_WaudxAQQkL#AHbbq(HY(+-09a`mJJ7xlmESOJaFVoXshhpQ zpl54oi=CMKh$R6p307>gy5TD_*Zsq4V-ueho*n5)Ux9v9{UN0Ep_AyPW_mn3T7L+4 zvqPCa<1jHUGEaKKA|mmQY}iC6EWFQ);gGa_AH~ur*gvz@Vj)7LekE26YD2Y)k#m-Q z=0QK4$jD&Qc@FiQsMFz7=@qDjc^#2wpho6l*j+!51u|1CxXuz@JU3HTEjdio99)Sx zJl&vxnZpD6d4b}vizgBoMsV;?OUK!)=B6vN2~<}wr~lhc|vqu7t4gaVKG42qj5RGB}~O2Dk8`OW+Z#Z#0~ zm_2TwB8=iG6g_ATF{@GBMYFc~Gm1xO|IVCA$&z^&ic(5o&5uw#N-48>&h1oq?x5l< z6xX5HiULQYW)=zq#hoZFrIf>b3dNTwMo;K=B=lJ1Mf6H_=RGUO>~C`6-GEpQ2(riat$L zT!&&WiWM{^mrf19rXu$RDymUDfZ}5mga1XvWhm}O@i~g` zH&d~63l#@Y;8j-hq8F)n3dMIQvR|U28pYQrM!ighAH`o#>_E|N8x<8O`oBWO#VB^6 znEWagBVVK9b`*WKQ?V9>YX=oeQT*X`D!zS#iu3+WMc{2J{{9XXpYNh#^?Ow8d7p~t z2UJvkL`7r|72Eex@#@D^RDD84>Zeqkf#TmN%1kOI?xSLN3l-0OMa3oGP|^82D)848 z&DB3rfwhgf1I1WcRhkhLCW;w{sJNSoX5=4u3z<(dJb21<6_%EvhW{bx4WXYX{S!6u zB?6lD&-xvog;VK2CN5g7HauCsGhAU|VJiIyC>Q?he5?N~yjTEx{RTQ^vDy*vV*X*e z{_Wpy8u(2E|7SITtk~+jju4#3Q#Hq=srb{-A}m^v_84Q;sX(SGe*5J&4g98o-!$-> z27c4PZyNZ&paE>hSpC%5gjK^UEA{Yy^B27OV)a~W2-{uOKYMOv|J~)fOeSGj1bPAe z0N+DD;@<%J2-MZp)OjkaJ!M9qY>~IJIu!HzGqzsFDU?g+O4c%P0KzROz0WtF+2*cu*W?r&AqR9%7Yv7yCmb zK=34Qb&dGliy`FdFmw(}S=eFtT-+mRxFAPiEVVpPAxSs_8Y@mHLYUqf_BAv-{2@~8G7OR!Dntx_ zD@YC44pQ;vU>=mxq}uvV^zg-)?b72xn^+{G3WEO)B|>vKhIuR9@mDSLuL$x$B;8bC zrkGJv0c^)?`m3-rbA}SW>Uc0zQ|lG6sV)!-*Hs6-n0uF3hB^o)e0YeRCWjUgjVE~o zRnJm?RXBi?XvNtEC1~i#?FhLdPz7mX@P`5w;VJ-6n=Vis1dmoL!au_Jf@3BMJ^h*G0 z2na|nmpdp5cZ>xlxG@X^0K9oSWzO zBxv#){_657%3-PkA<`@7hq-x6h9&}K^;3RWNt4P#nxOo3AiN|uZ%C`qlpvK`z>XYJ zN+wn&m>08_=lT=Uu>{Oo?xmEfqH;N)z0@6tiY$5-bah~%KUBFifZW6j+KybZHE4pA zOfX{oSgR>r(i$xofVrSiZ$(|rVsEgjQsv6t^2&vkmZlx^VXKHd1O=YdK%PU&RuLUi z(qG!^h?Exv>T1}vavjmKbska?FtInQgGiRv9g`DORvMrj&6|bS2$e!nPf1F`%6!MP z#gL_x>Us0Mp&GA05t)RQ6>)<2nM?(J8>6eTnkLf9at~3bmAaootu5+8Rg*km=2AY{P2x*7=utgWh=9!n zty-~Z(5l@Wdlw0D;w*+Gm-6(4C|oJsL!#%lkAz(y4;BdUDv8!6uhxv4*o%3WX_BW+ zv&L*W)XKf7R<-AdX=ODr@Nt@R#LhVI1X^=gCmtb@##-gknzkGZCOeNdHRXs?2*6&- zq>w++DhQi1w16e8!I+_%8c&tKZebvGhTRA3aB>`Y%EEPZG*&&eHJk|{F_Zq~9DR=M zD?1?$PRzBehDeo#s#aj)<&+r9MU`Gm^59X(M*Cx_m`nYosb%Gk6fhnSvD44{FlFTq zH;V`5trJ?6RaVn3BQqEKIkYqbm9lco0}8EGfe_BsXj9;JIUE*O5FKK#2#e`n>}-YV z!U5+F0p|juvBF;!3^(CI*4qjT?V5+4oSbjLBE{TtQKr~aT zETIy~z`KPk1JVlQ)e_jT_^^?rNwvm{El^}V36u9&VBTzPPXty5j8Irgg=;YV#Ojho z)w`(xb8e0ZtumOf~zQjUsn< zthHhgF(N!3f2m{K@TO0wW>J7r1~!g^g1wbSsUru`ZP-n+h&x=^2BH@YlFv}P##;d- zmJY)t1k>C-o?ip)FLi8S@NO$SF(`J9$(i9A{!&MFmH>+OnyUlc{ZxOcbEsg4*GZB# z+-YN$cN1V?`eJpDT@N<$)iog{2tdhj4&Al_%F+nIhjoB55?&!lsxv-l(d~lR#7}5& zn^3&rjrDJ3wOA|)p&To)w!j@~b!4uIu(VngKdIkQ9npd%qg1praJ8Ze3&*B$$4qMz z)1g9zr&XWV5g8M75l13J{H0|>Xys86@24VOI8I|6(TOD#K-f|o;`fve$y{+!ys`z1 zw{l^1O&#r*u=@rbbce?EAR&$r_}n4P$C10+WKn!*HRZ1jI2pw|bqphk)SU#%@(l4y zUh!@x(U#TJEuth0TN;ZiY3G(RQ-@w1q1qv)bZoos91Da*z^ZdXi4KLtyN}g3$w?v0 zPGStg{;l>-`5N};`CNoTYARuk9!Y4U;5P9Ri!`*Xs)qJ_XpbaN?Xa{nmBHAEgGZ-` zfv0p7dDCQi(8)tWc-5^0juk%?W|mP6%xDwcVWG27R$>mp_UGp%lT*k4ctXz3`9_?8(pRdifivlu&QlB^?$wTnW` z93wm)!M?iS!?+qg5B7Lc9UBwvBg*4fL~DO(X653=xjE=3|Kb=QhM!WvK*-N0-dOC4 z@sU{ue|2sEI6!&X35W4#mIBo87z7SbG0wf!{>8jYPY8l~nPVPxpeV*#u5ab<|lOXR8=Cu zS{4$J6%`)(pB*5}aTvvvtHX;+19h3%=wogcgL!jW2ZN9m0T9G*-ki*enwlZ>o3f~l zsMuVvhLgqwtK};$a;!E58r>TZ^1y@y!qJRAGmndBppSSfXwhr?Hihd|eyT4~RQuL8WLj#f*-Kppie(8p<5)Lguy$k=HInoDJH=7~d|$gmxj60RSli8ig1vNLmePmp5F@%(z-)|1TQEhCYf}P?wPfI!cOik;MU_-CvoNIu0}GMy^4&%fzI9nF z+SaEdATRc>C=GatMP^nj_1Ue|D_;U#XrmRlT#K*u>Bw^xe{0%kvo*WT);NjUgwDkT z6r^j!KK0n7%V31avRr`6_o7pcAVUtj^O0-z304fBiqnV-Z;<5>Kc!g$&GR> zA32@kt138hMmMvvJy|)PtX#Dgon)u2S8F`3aB`F>kCWvVoVZx7PH7R*mE{s(%f+Wd zrwPIAt6N_?L=&%b+ZHtczoIF{ckC4<5I?a%bdR&Td}2rWCRk4&LAbP4irrrxPoDN{ zrR0$NlT~!4QHPBpUcYr%lvr%)23*J5wOxKvNBblRiStphX)I+a_+ODAfe<wjGAxOHA5rPoLgtF|c71N1{JY=LCBQ-oPy?pf)Sp@;b6#9N=wQbx^cFQ zt{j)rO&>AIdaz02p_`hXnp#W}G&`)IM@u!S@HVCqtflSBib~wbQmr1kUl8(CF0QRY zy|pB!%R}5P%W`Z~?9geWV)qN1wPbMK+_FHGk+U4S&CN@7On6poR_5)HamSB!1b{dq zbRI|>v-Cq(RGg>v@H9H$JHyAzqwo{oWiGT|oD@^&KY*nx-h#9`H zv`mIxN>XwK8qMm|qP&cDboqsvpnB=To`=G6blOClt&U-%k*sr3IU5IIc7G|oAVl+v z!*$|O#7rsugniSY&v*oxchF9-zntC*5v;^K)(U1By@88&Y3Xc@UbI?4hjbNwdaEmy kg#_kMngboNIi9P2w?rfySogBDG9{-0O*L)kll}Yu0i@ei9smFU literal 53105 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

nPk8hbUhyjg{= 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 diff --git a/linux/survey_baremetal.subx b/linux/survey_baremetal.subx index 34d51d43..016757a8 100644 --- a/linux/survey_baremetal.subx +++ b/linux/survey_baremetal.subx @@ -184,6 +184,7 @@ subx-survey: # infile: (addr buffered-file), out: (addr buffered-file) 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 4/imm32 # add to esp $subx-survey:end: # . reclaim locals + 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 0x18/imm32 # add to esp 03/add 0/mod/indirect 5/rm32/.disp32 . . 4/r32/esp Max-labels/disp32 # add *Max-labels to esp 03/add 0/mod/indirect 5/rm32/.disp32 . . 4/r32/esp Input-size/disp32 # add *Input-size to esp # . restore registers