From 6cc2ff87cad934bb8ecd8c326f259baf967f1018 Mon Sep 17 00:00:00 2001 From: nils polek Date: Mon, 15 Jan 2024 11:48:21 +0000 Subject: [PATCH] Stack uses only references and equation objects --- Makefile | 8 +++++++- SDA.c | 2 +- nja/nja4 | Bin 648 -> 56947 bytes nja/nja6 | Bin 652 -> 56947 bytes nja/nja7 | Bin 652 -> 57195 bytes nja/nja8 | Bin 652 -> 57195 bytes njvm.c | 21 +++++++++++++-------- test.bin => prog.bin | Bin programs/prog1.asm?inline=false | 31 +++++++++++++++++++++++++++++++ reg.c | 9 ++++----- stack.c | 19 ++++++++++++++----- stackslot.c | 2 ++ 12 files changed, 72 insertions(+), 20 deletions(-) rename test.bin => prog.bin (100%) create mode 100644 programs/prog1.asm?inline=false diff --git a/Makefile b/Makefile index 894b86a..1d0990c 100644 --- a/Makefile +++ b/Makefile @@ -3,6 +3,9 @@ # Compiler CC = gcc +# program to Run +F = prog.bin + # Compiler flags CFLAGS = -g -Wall -std=c99 -pedantic @@ -19,8 +22,11 @@ all: clean: rm -f $(OBJ) $(TARGET) +debug: all + ./$(TARGET) --debug $(F) + run: all - ./$(TARGET) + ./$(TARGET) $(F) nja: ./nja/nja$(V) ./nja/nja$(V) $(IN) $(OUT) diff --git a/SDA.c b/SDA.c index 2ea0509..08a7db2 100644 --- a/SDA.c +++ b/SDA.c @@ -20,7 +20,7 @@ void setSDA(int point, ObjRef val, struct sda s) { void printSDA(struct sda s) { for (int i = 0; i < *s.size; i++) { - printf("%i\n", getSDA(i, s)); + printf("%i\n", *(int *)getSDA(i, s)->data); } } diff --git a/nja/nja4 b/nja/nja4 index 3af774fe7ff72bbad90512a716be1955acb5d7f1..c83112025012007790fc26dca7d32ed542f1a649 100755 GIT binary patch literal 56947 zcmeFad0-XQ**`vaZsul^K=zQZ$z=(f5D1$fE;m5%A^{PCvKq47EEaOXpH6d zih}#wQUPmQTSck$RTPv(C1`7l)&(uC*oxkW3koW2vH5*I=bV|$4Pf8*_xAgK|M+%b z<~h%L&UwyrmN_$-ySlJws_t@W)}d<`X~foa@d=W=YMSpEfhyW~EkW~X{WY)V0mZ=S z6C6UBvfxQ&+JdH%a|6cV9Is2lc-5uGK2#-93u-7M59+b3 zsddB%m&8Dg1;TMyK}(OtquyYpH(2Re@PI0q1+DtAZaj-s{fc!TFycM}ZHl;dK+5u% zbtG89bj4zU0{TS4f~Qn|7PRy(haSuMUp-Ql;B1xO+5B=$KY9nfE%EpZuQCl&* zwx%w$V)%;j(^ScOM1Ru`VM)$anc6swZ`Su*4&h;lXebHFU}#oZ|hY#w={Lamyuqd_bpEW>8!`+ z;G~~{JNhj2z**=?XQ8uPXR;qX3w_pE=-baiUw0Pzm1m*%I}3f+S?E`th5puA=)XG) z{rR)dPk`>l+4-0T!kPTG>@4(K&qDvjS?C+jLf>~5`rT)tPdp1f`z&}hGD{6vTWqm`SPHPASo3xUWreJCLH6`WM*OXM2*3^<(UR~O#H3mv+YwOFQS5Z?( z?O=VaR?}1(46YB^BWS>d4`H3_tuLnRz1>z4?~F)vM|o2qHm4m!tf>u7M$yI4fP6%INY z%0A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 OXz&b7hyEhhZvF>=@izeg literal 648 zcmb7?!A=`N42JLX6uwj>QfEA~*$rVOQ~{StAu1}|5JG0+BvWl>w>u78IPe(d_3|X$ zEL0Q(2Yj%s8U3H_U)DOaS+1?qE(ceXHZQYGYk-wVlS;&85F@L#nKM!wqTR>o`Pp@| zxv7FjjV;~bnv!sfv{@|ah9gpr@fUpyu?mq77gQxyr!~!a4kt(8xs|X8o`hi!Sv;mx z;qEn|C;i`dGQO2P^^;Rw-G;b?msw!&QV)$Wkh#oc)|s(!qlr4HV`MKojnp5>?q6x{ z%RC?LNd8I7bECdrT%1A6zc-u&5=Z$8bVs4*ww#(eChnVC3qPjnl;cuXB^2X>d>;nI zcshhjYMRa|l2Aviy|CycEz|l+om0P*)Fo^m{=9W;`|zj~?7~i=Yw{eQDkleDz!{s( zz^0y6{A2at&m?DU$C{YY?9dupB&FWD8yL9GewZC&8iM{{D@b(PUBYGW688B@slQ50 BwuArx diff --git a/nja/nja6 b/nja/nja6 index a8fa548faf0db65e5a014c5d0f17c8be6e7156b5..15d2e6ef003800c328afbb6e20520a84a02d888f 100755 GIT binary patch literal 56947 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

H;K_Zbibaby|ynZGW7} zN~_12Oj?gKS^bWWGbe&3A7=`itcI{jDl-t&trqp$9%o*R0om2viqp}^mWOLovWtwq zi`1}vt)zp|8NDl|51HzTV@1jz*_U$3;Hd90XFxc0G)0ELq4fD|kB4hhHN?^u3+A05 z;2tSu8nJvbu;NPTNo)ik%IX`Jq=?6@Bg=$jvD!#UeTNy&Ug`6Jtl{sm<>A`&J=zXY zf40=9(NYgncELU+JKvUl+m>CRWYazsq7qxGrSBzLMzni@Pw2JJ@~IijrD}j;glw}H zVkk&^ikel@(4w@zIk0&tj}u!;7jgd2NT!|OCS}KK+o`0TU6c)~;%O;YQ#Rviox|HY zH4LQ;CNYc7PjGLrh_gxTLd6940~YZOTFaJ1emImz%9kYONa7Yn)ILQPaT<4J)OdCR z_Bft(e2=3GJo4{+>KOZM*5G4zz4MjG*z;qQAk~%nJks&PEomfc@xSMopH8xgy{x+c zjn`TE3?@D6ko3B;(jXN7H`8ap1B5O9 ztVBHa&7}&vP@KuvE6f{ceFTXECix(SZ4hy#^?kPW5z0C(jI=ByJw#pKb(4HT!)4)m(XfJT3xCo-9f8sM^2FzH`x}q!(wOgy24uNuSJQawW~DOO%ki1#hb0#CLgAi z^T#go8cDyCJHgjlB}#yTa* zS%aAJV@JSQ{>~`0mK@f;r_#=v&wsnxtfJ8$jf84vxZ0aKKDJh-(7s{4SR%Jjz(dC@Yo*LVl=4n?4Z!?SXs#3?!17$h6y63=mn)w(nv) z@XUtGZg&+Om18vyTdHe&t8}wks(X8^bO-@D-O=Vf&lFT)bzW>(^=cQ4>7`!PxGIKv zJ1Y?**e6d#mm_@fx0-pH8o=zZ#z=>ad?($i0!pT7xo75}O5DFahZv0kXR{@88K~Tf z!JBR!)Q-wAad5la|1U0B! zV@*w=oqC^4ePG5eoJY5aOUN8=UK9E#WbSfTnGb7voXc~m$KCTqkUlm;JIw|2=WpIQ zU)SM~Cy<+t?_R+r{~i}%fv8{PjE=iTi7#r5;tNnSIwaq-hnZ!uR1mmk1YH}Sqf zoO_<9W~Zci^Z}V>=$@*@8?W24OYfIe0v-1sbgz5MYIDLsccK~8M|O$R-8+_>2QY0N zOfWwL_WbgB<}jeYP9XNvJ(2!Qr0*B$FGTuok^V}g?-c33h;&4x|1Q$EiS$j0EJhOwxDf?uPBbqC z+7^;%SfYOmv5@N%MIpZt$VQ=dLZt7NjL!w~U5OkM$U{QvW0Bq}(ti@^ABgk^BK;$g z{;f!F6X|zF`X?g&8^x%5$Yckd%+=w~4cdp3B?rx+z^UcFz}o$i`>Cr13qTyVn7ba$P% zdGzM*Zx>R|XcGpj%xm=XGxISNETF)j|8nA!Dm2X-jd?rGZK5;1fz_U_9X?xU`ad{4 z;)7&)t5&H2QjK%GH~sI8mN6aL(euUd>FoI&U949?+#eV&chZN49^JfU=b@d4gx_BD zm^GPJztDBiDx%g}^+pNt}N#?b|#(8v0aF6Px6Lm@cv^HuYX z?tJ9m@Xy2`M?2=b^4$E$&a?eDs~7Avs~$0{7d~X(y+9w3ff#x@e%|-Zg?GD?%y-Na zC?>{^cQAIC3*1RJKefEtY?{6}w8%ZutaM*KZ;Lx=!y$A2;>{mj_NNuMghGq-0cnH_ zMr=iGek%IG8;Rce?!*H}&2207u^C&A-{12F^}Fi z9Z=UVBXHqQ51?MjBrm#tfgp>t$sAqglcdYpP2^5hk6CSgwWTOzW{1pE%k|-zW|QvE zFi&iKS09|A56jg1W?uBhJxh1dfQLoa%{*LH!7n;lwY=!v`DFfC@0;Up5dBlkooQbV zyJ5@n`DUMu%Ztnm5gotQb93~*8KOgbE~PD5{rL;c87uD62W4%>RPsc#`Sy%qwAh9} ze96GSkUlW&Vm&uw>s_IZA$P)o=96ZBePm|T+-UZ3C!3dkvT^z5=qhu5?upHq*DrD> zTUt8!-v$y&5{LQ1M+XPiD;4z+Hw7Si0 zJIy|}F)M$ zQPrsFA@RRz^z_i^~7oqgKf{uA0gu-rpaK{?NRk$4s)3q z8*uN@?F;6+yXWoPng3UFSpLqP=)Onm^QOziTpui~bnPeq%L6(;L)Y*>T<~&~ww`sk zySb*D8C>1oy3HJ>_s=-GZDan6t>*NQxnMdDhVX)rxSA)-1@gRefr%k<;kFYCFy-dI z3ot5!u6}Q`xzub5Z8MwlL)&(VX>SYsqvK(&)Mj(V zyBklu6w2Qo+BOX3x~t0km@@7aFS?V0RUe5mmXy?0R+a>{l4+Nf;M;~3C4Br}f-ikm z*J>sB(UyiF-!UNS`ww8@9A=Szs7`%cW*Tb=9zI z8taFxsB5@}iJ`;u#td7&Y|OCQt4p;K{$fpSU3>QUVx%U10j8v~rnIWj&YAR*@=!xb zd0kCt8Ol~yQ^BG)27=nMRgHlfS;%Fj4c7!3@Y%?zusajK{vr&BuNcajHL^OQUf!6} zvxbeO%kiy7R#DwqmDJRgUxPBTBqOwvWr#n`{{091EDdk9v`c2r^-h+53G5xZEEuW{ zTvQdnM^LNFftEIuFTDtNeM85L@(!)?4z0xJRm-m#THjE|pNXl1tC25rQB5#)8eVuU zk+o>lR;@xS*u~`MS5?vJ;gaPdhAb!GYm#=I%j)X*^Aei)^ra@6c+4ngBa2GfRTjQ2 zsV}X_hb#c9N-$D_Q4)-Hcv2{YYVqAh$l^|GxojrXEL1NY2x7VLqC-n&T7ui&@{;AH zB{kKJsDza&36@sbH+1~5o^pI=Q?q_Sry)=!Tc;E;s#Vt8l~&&gEkS-b!K<=)t5)$1 z=~b)PNF{Js{umWLs~*egM~YCeDoHHhCoHA9Q_7gv;>CGXrKwQLp9`!Fj}>$ zUP{})5kjletilPGC|TBKELO4Y88!y%8nu~qGWUi+Fx0>Th}9|Ja%Q)@u_VSuNEi_n zKuiWhltIauDe8;h2B?u9YzQ>Uf}+S(b-_9cFpQN{`O*M-37v#XX?b~|KB%k&f;3G_ zrDYgNNUc?cTrQl=!G=YnC;1K9}1{OLf(`{6Ixc$%kYg)&`Qe1*hWG8+=}|@DnHhWl0#k*Fs9%GwY+yg zP7n}fNLNyTSUD@x?Im5J7rHU@#R4G@hb<@JaQ zcnT%K_&|Y}57-I={2FhG;!3M@aTKw6f9)20+kFJt0qz-MQb^TEfo zRbv&DJ520ul??$=_e&Auy#LitjT8?x2qaHdU}ec3F~=m?gRL3W(}f~(K`#6CSwk#E+&SHYd)J` zk{Bnn>SfCU6&uJy{C5JWI?ub@i0i8UtJ&7S>{z$B4G3)<@Y)%dEn`Ybg+ zlwB;=F~Ve#_`J0?$!4R#(xzY|iE`S?SiM-c9{h1cd}9LEKmiOkNVwEWiOyE9<>40* z19=6LrVZs9O=4KY<#EfsVrX@RmPc%9Y2#8Y4uJHYPQ&^lK$OC|A6ij!Vf6ID1qVq2?g;gNz5@57+!s`%YRV!0n;>o>4QfO9?9^) zOSZyKmOh@`isK4gDPrYseIG2UGVDj^I*tw~eg_19H0LOPr+A-`?nI~Hm?VK+ek&gf zUIRYA?PcNC_q}E*eV@|rSbjwo&&KFeOMipPe}mFrq69no&#M0|;5+q?EB)h2e~U6q z{Z2SL`tJ_V=o6NYhxI+T4R}G2hxMwz#AIGpnlOyhslPqZN3ynE=^yOiaJ)Az4h!A` z%&EV&lTYy1vamSzjg`>4T6z}#AQDdfDTO}4no=kw@X~wCL0>tKEkLMm`G1MhU!wHg zmZO!DS3wIrj)YUcVzE!KDi%wL(_}i1j`=?ao>PBGiBCu`DUnK3tOk>)-F^zy_8@^b zV?-Yy&HCP6YAvz$_LkV0_%Fb~UkBLw*7x{w{zd&m&}I2mH`TngOMq#B0-RCa4%N|q z2QkK;rEh(YZlKb);>U_lOW%rvkD%+!|5V))Q1G4qIswj^zh&nb#GLwC{Sv8IFTp7Z z?5m|`!IR)P^-n4NQ%b)>_?%Imze1n3too;_mlIRftJg=sa~@W`Em|8A%zwB=P|(t! z(Sc4`9v0;H#jLdC$m?R2zqbRk1B!RT&aS^&&5mpOIjx>4+xHy$r|*+`7h8^2W;*7d ze-8ceo29~wY8J6ry<-Ub6l-wp#{$NZ(#*{^PtZmjM*gXzX-S$tNy zTMM3*9%p~Y(`n3&S@qyqRVNwdN})(~S|?nulWPDVjCE#L`nWYu<>Zr)mFRUFRQSMHR*I zS=S=TZFk*%xP-Q%8a$3JH(*8EB-;e%tM=0@jJHBx(=^ul=?Lg(V-wR~4%ic)) zv$SqU6@G6!zRN9dY0r#;)qYW)InMh~fxbAS)BP|vx=r0^YN6Y{4O!Xsd8RuFnx2Dt zKQlj8iPwFiUo(1H^ioI6cKVBe`ZmPp5$W&szO1vJt;g4((|Kd#=LFkl+rwGtdDr!^ z_)+9*IX=^J0YBv5W-Yu3JZ^`7 zDM2WmcenBLrs$KRtNm%wTSh-4`az>#WF7IT#vFlvBo35gj^j4$bp(Z%E2?kyx=sPP zF1pTLy%V2lxgokvTvh!S(RG$8#f28ioyhgOHRjK%x8Y$+anSjxdcD1(A2spmXMJHb z-(2q+=v41EL&0XzZ7ztq=r$L~VbN_856Zns{%yLIQ=;2B{WLv{>}}GH_eHl!G(HsF z=7+c_x}BAN1$th4z7Cz@dCbJ;XVG6b@%&qKot~!gzXO99@}o1Z zOhrn4m{-oF;%CPASttEp3h3_L1eaV1tZzG~pbIdEx82j&z zPVMscVjeYF&pvl(f1aO1u*bxn%ya)$_LF_S`_#?Z=fw=$XP@sML0^FDwV6=95IvT^ zmr<>}P-;oCw|Q1>ur5Zy>c0ZL2MwSb?ctoM7n**(AUIw(SF_#`+3XXP5wWC3!P<%c zE>pi#Y@Z#^9AW=~1KB)Ypubh1pDoa7E_vQ{U4>3@SZK;gsS~>}?$YvW$^K$L7$+=> zSt1aH7RrD?^-}AO`SaIz^C|*2&${9q3 zjbfvJB7R;Rh}rHI|Hk-=b@>piz7l(z`Q&@iZHAAZM7OCpeiPm1NtuIxoKU^nv^U+X z2L+MMe(2P$?0Ei(0{hL-DgLWW{GVa_j>sm+sf%tiv@{F+za;iHZO(Dg&&M&BT*rHF zKrhL)gsanHZ!_Dx$9ib#w?Bj4O|xa>y42!wf&Gu--{!aZy}*7R2Ch^ucBXs}^llnI zOTVh^?P0OEnUz+EezF{M5ld3gHSDK1`qZ?~0k#*TV6|2J*h#+6iEeXF?G^pf+L*oU z6kkUQ{2wpSXT*=q0rdg&F0`v#CjRH3Q+xZtT-SvH|MXp;6leQ)`nLu4e?q78+J1E| z2I}PJru_Y-S=#4`t`NB90qhjrX3bhGx}Eym$9hm9vRQ^+%F5Bx&?yd=Bo19-^Q`!{ znaL?p5|!U(9&dRe(QUpZN;OAuvnd}sp;P=z5`P@-m)bt?Pk0*)%+t9Il`XD1 zG&1TOUUh?K1N{b?r`2#ZfRlLRm?Jp{e8y82ZXB>62(JAH@m9MrNxZ>$--^{MiP6h3 zA}naazX^5z&9Z-YI=;Wrn8qQ&Cm;l1Irs&tm#Lgv z%2l^%-MW#%Q8!v1s17>1;tbj60Hr)%bG51ce1pM8kuqYx;&^>^XrSVj^)2grJOXz{ zkWE@t`qNR&_cn?A9i#6?AdmW<-T zkSM~HYIlz<2V$l5&&WC9l8)GMoH|SHNef~?4U{F|!}O{4c-#qfn8xmcdz0E5;Bx|J z)5p^3QBb4iV83`0Qt9}D4&=pEZZc_Q<}4rz8RNqs4<~W*Ys5 z18$3q6e@UPOfh=SP&Qv&NXRG1Bn3NNo;pu|NNdiaFVT*ZI+@%qW_nssK5AlmgV8qk cO&n%~Glk#v`>TaDniA09S(py}MW)^S53D0O3IG5A literal 652 zcmb7?!D<^p42JLX6uN}i&>78ab{%ISls1=wV;Y*=LMX~uwx_ITw<|fhG>3>mh#CG*qaRsY_@cBv*ib^KYQH;EYXR1(oz#e{q)yixw_v0`Wq*vb%Ztz5 z_O?k8E%tPe8xrLnX}es}EoY<&<}dU%aslAlj2V;FP!;sb#(zff8DYu2xol*bWdsE_AFhSg@@+e!^fF9=e*K&4b|kNJcdy< znT_F^x^CwbX=*dJQCY2M&$PKQmoyBeZ4FP4-~M&Xg{Q~w#=t)O40dgP#jDEc$pHlC z%Q<)%Sk-UV0Desh-XB0wx#|4WJ70-0|JfWE1s5uqzegE^eQ_=jy4!8T_23i^`No(Z DD^|Bv diff --git a/nja/nja7 b/nja/nja7 index bf024b94bc3da6b978784e2d9276e39b08aae624..b88b69856149637740a11b742d8e8137f8e41122 100755 GIT binary patch literal 57195 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 CSGP<6 diff --git a/njvm.c b/njvm.c index 51b9bab..feab9cb 100644 --- a/njvm.c +++ b/njvm.c @@ -10,7 +10,7 @@ #include "reg.c" // Debug -int debug = 1; +int debug = 0; // Stack struct stack stack; @@ -54,7 +54,7 @@ void execute(struct program program) { push(stack, stackSlotWithObjRef(getIntObj(SIGN_EXTEND(IMMEDIATE(program.program[i]))))); break; case ADD: - if (debug == 1) printf("add: %i + %i\n", * (int *)peek(stack, 2).u.objRef->data, * (int *)peek(stack, 1).u.objRef); + if (debug == 1) printf("add: %i + %i\n",peek(stack, 2),peek(stack, 1)); push(stack, stackSlotWithObjRef(getIntObj(getIntValfromStackSlot(pop(stack)) + getIntValfromStackSlot(pop(stack))))); break; case SUB: @@ -194,19 +194,24 @@ void execute(struct program program) { if (debug == 1) printf("new i: %i\n", i); break; case DROP: + if(debug ==1) printf("drop\n"); *stack.current = *stack.current - SIGN_EXTEND(IMMEDIATE(program.program[i])); break; case DUP: + if (debug==1) printf("dup\n"); temp = getIntValfromStackSlot(pop(stack)); push(stack, stackSlotWitchNumber(temp)); push(stack, stackSlotWitchNumber(temp)); break; - case PUSHR: - //TODO - pushR(reg, SIGN_EXTEND(IMMEDIATE(program.program[i]))); - break; case POPR: - push(stack, stackSlotWitchNumber(popR(reg))); + if (debug==1) printf("popr") ; + pushR(reg, getIntValfromStackSlot(pop(stack))); + if(debug == 1) printStackR(reg); + break; + case PUSHR: + if(debug == 1) printf("pushr"); + push(stack, stackSlotWitchNumber(popR(reg))); + if(debug == 1) printStackR(reg); break; } @@ -226,7 +231,7 @@ int main(int argc, char *argv[]) { // Initialize the Stack int size = SIZE; int current = 0; - unsigned int s[SIZE]; + StackSlot s[SIZE]; stack.size = &size; stack.current = ¤t; stack.stack = s; diff --git a/test.bin b/prog.bin similarity index 100% rename from test.bin rename to prog.bin diff --git a/programs/prog1.asm?inline=false b/programs/prog1.asm?inline=false new file mode 100644 index 0000000..470fd7a --- /dev/null +++ b/programs/prog1.asm?inline=false @@ -0,0 +1,31 @@ +// +// prog1.asm -- an assembler example with global variables +// + +// global Integer x; +// global Integer y; +// x = 2; +// y = x + 3; +// x = 7 * y + x; +// writeInteger(x + -33); +// writeCharacter('\n'); + + pushc 2 + popg 0 + pushg 0 + pushc 3 + add + popg 1 + pushc 7 + pushg 1 + mul + pushg 0 + add + popg 0 + pushg 0 + pushc -33 + add + wrint + pushc '\n' + wrchr + halt diff --git a/reg.c b/reg.c index 65b3ce5..20b71dc 100755 --- a/reg.c +++ b/reg.c @@ -13,11 +13,10 @@ struct reg { unsigned int *stack; }; -void printStackR(struct reg stack, int fp) { - printf("Stack\nSize:\t\t%i\nCurrent:\t%i\n", *stack.size, *stack.current); - for (int i = 0; i < *stack.current; ++i) { - if(fp == i) printf("|FP|\n"); - printf("|%i|\n", stack.stack[i]); +void printStackR(struct reg stack) { + printf("Regurn reg\nSize:\t\t%i\nCurrent:\t%i\n", *stack.size, *stack.current); + for (int i = *stack.current-1; i > 0; --i) { + printf("||%i||\n", stack.stack[i]); } } diff --git a/stack.c b/stack.c index f481085..1aa0cfb 100755 --- a/stack.c +++ b/stack.c @@ -16,9 +16,18 @@ struct stack { void printStack(struct stack stack, int fp) { printf("Stack\nSize:\t\t%i\nCurrent:\t%i\n", *stack.size, *stack.current); - for (int i = 0; i < *stack.current; ++i) { - if(fp == i) printf("|FP|\n"); - printf("|%i|\n", stack.stack[i]); + for (int i = *stack.current -1; i >= 0; --i) { + printf("%i\t",i); + if(stack.stack[i].isObjRef){ + printf("|%p|", stack.stack[i].u.objRef); + if(stack.stack[i].u.objRef->size == sizeof(int)) + printf("(%i)",*(int *)stack.stack[i].u.objRef->data); + }else { + printf("|%i|", getIntValfromStackSlot(stack.stack[i])); + } + if(fp == i) printf("<-\tFP\n"); + else if(*stack.current == i) printf("<-\tSP\n"); + else printf("\n"); } } @@ -40,11 +49,11 @@ StackSlot pop(struct stack s) { return s.stack[*s.current]; } -StackSlot peek(struct stack s, int steps) { +int peek(struct stack s, int steps) { if (*s.current - steps < 0) { printf("Stack Underflow\n"); exit(EXIT_FAILURE); } - return s.stack[*s.current - steps]; + return getIntValfromStackSlot(s.stack[*s.current - steps]); } #endif diff --git a/stackslot.c b/stackslot.c index 5cbd04a..95380b2 100644 --- a/stackslot.c +++ b/stackslot.c @@ -24,6 +24,7 @@ ObjRef getIntObj(int val){ perror("malloc"); } *(int *)intObject->data=val; + intObject->size=sizeof(int); return intObject; } int getValFromIntObj(ObjRef iref){ @@ -36,6 +37,7 @@ int getIntValfromStackSlot(StackSlot s){ return s.u.number; } void setValIntObj(ObjRef iref, int val){ + iref->size=sizeof(int); *(int *)iref->data=val; } StackSlot stackSlotWithObjRef(ObjRef val){