./hw1/ 000755 000765 000024 00000000000 12517730607 012652 5 ustar 00akcheung staff 000000 000000 ./hw1/bin/ 000755 000765 000024 00000000000 12517730414 013416 5 ustar 00akcheung staff 000000 000000 ./hw1/build.xml 000644 000765 000024 00000042707 12517727452 014511 0 ustar 00akcheung staff 000000 000000
cse build file
./hw1/compiler/ 000755 000765 000024 00000000000 12517730232 014456 5 ustar 00akcheung staff 000000 000000 ./hw1/lib/ 000755 000765 000024 00000000000 12517727452 013424 5 ustar 00akcheung staff 000000 000000 ./hw1/runtime/ 000755 000765 000024 00000000000 12517730232 014327 5 ustar 00akcheung staff 000000 000000 ./hw1/tests/ 000755 000765 000024 00000000000 12517730353 014012 5 ustar 00akcheung staff 000000 000000 ./hw1/tests/extraCredit/ 000755 000765 000024 00000000000 12517727452 016276 5 ustar 00akcheung staff 000000 000000 ./hw1/tests/Test0.java 000644 000765 000024 00000000076 12517727452 015665 0 ustar 00akcheung staff 000000 000000 class Test0
{
void test ()
{
int x;
x = 1;
}
}
./hw1/tests/Test1.java 000644 000765 000024 00000000150 12517727452 015657 0 ustar 00akcheung staff 000000 000000 class Test1
{
void test (int a, int b)
{
int x;
int y;
x = a + b;
y = a + b;
}
}
./hw1/tests/Test2.java 000644 000765 000024 00000000202 12517727452 015656 0 ustar 00akcheung staff 000000 000000 class Test2
{
void test (int a, int b)
{
int x;
int y;
int z;
x = a + b;
y = a + b;
z = a + b;
}
}
./hw1/tests/Test3.java 000644 000765 000024 00000000232 12517727452 015662 0 ustar 00akcheung staff 000000 000000 class Test3
{
void test (boolean c, int a, int b)
{
int x;
int y;
x = a + b;
if (c)
y = a + b;
else
y = 1;
}
}
./hw1/tests/Test4.java 000644 000765 000024 00000000233 12517727452 015664 0 ustar 00akcheung staff 000000 000000 class Test4
{
void test (boolean c, int a, int b)
{
int x;
int y;
if (c)
x = a + b;
else
x = a + b;
y = a + b;
}
}
./hw1/tests/Test5.java 000644 000765 000024 00000000163 12517727452 015667 0 ustar 00akcheung staff 000000 000000 class Test5
{
void test (int a, int b)
{
int x;
int y;
x = a + b;
a = 1;
y = a + b;
}
}
./hw1/tests/Test6.java 000644 000765 000024 00000000235 12517727452 015670 0 ustar 00akcheung staff 000000 000000 class Test6
{
void test (int x)
{
int y;
while (true)
{
y = x - 1;
if (x < 10) break;
x = x - 1;
}
}
}
./hw1/tests/Test7.java 000644 000765 000024 00000000304 12517727452 015666 0 ustar 00akcheung staff 000000 000000 class Test7
{
int f;
void test (int a, int b)
{
int v;
int w;
int x;
int y;
int z;
w = this.f;
x = w + a;
y = this.f;
v = y + a;
this.f = v;
}
}
./hw1/tests/Test8.java 000644 000765 000024 00000000225 12517727452 015671 0 ustar 00akcheung staff 000000 000000 class Test8
{
int f;
void test (int a, int b, Test7 o)
{
int x;
int y;
x = o.f + a;
this.f = o.f + a;
y = o.f + a;
}
}
./hw1/tests/Test9.java 000644 000765 000024 00000000213 12517727453 015670 0 ustar 00akcheung staff 000000 000000 public class Test9
{
void test ()
{
int a;
int b;
int c;
a = 1;
a = 1;
b = 1;
b = 1;
c = 2;
}
}
./hw1/tests/extraCredit/ECTest1.java 000644 000765 000024 00000000262 12517727452 020351 0 ustar 00akcheung staff 000000 000000 class ECTest1
{
void foo (int a, int b)
{
int x;
int y;
x = a + b;
x = bar(a, b);
y = a + b;
}
int bar (int a, int b)
{
return a + b;
}
}
./hw1/tests/extraCredit/ECTest2.java 000644 000765 000024 00000000331 12517727452 020347 0 ustar 00akcheung staff 000000 000000 class ECTest2
{
int f;
void foo (int a, int b)
{
int x;
int y;
x = this.f + a;
x = bar(a, b);
y = this.f + a;
}
int bar (int a, int b)
{
this.f = a;
return a + b;
}
}
./hw1/lib/java_cup.jar 000644 000765 000024 00000311477 12517727452 015727 0 ustar 00akcheung staff 000000 000000 PK
rD META-INF/ PK
rDI_KZ g META-INF/MANIFEST.MFMLK-.
K-*ϳR03rCq,HLHU %-yRKRSt*AMMu4sR
K5yx PK
rD java_cup/PK
rD java_cup/runtime/PK
rDN; D ! java_cup/CUP$parser$actions.class: `TEyypBA@%"" qH2p*7芢-$"캋z ¯~W&ԼzU]Uütɧ`0=]I>'@I N
F`1C'C%RHNFx!d|d|X/8AV2RJd'x>I^[/99Vj4_ȏT9xNy %AfȉdDf2ǃ,0Wʟ*r R! )T%,d e!gzI9R>ijV)Q'"AKKY*ق#$\AdDAr GA.A.2A.
Ad Wyq}Wr
r RnFA$MҞU9Y[$oCyM.vN,^XD./,%k!wr kW>~AAAaAd }Z/?{R/H OQ'$_yJnӂ<#f-<+sld /
WA^eA^UA^bMAmA]A}A>CA&G|,vA!?D oAv _ _xZoG;Nv5x$qUDejV.`
HS:Q%e3%uՅ5Uu%J{$*3GVḌT$W&*\ayrATMYh:
2aur(9Sj]Z14DTb^yGx*цT_K5(L +GCrkk%^[V246Yd$Iy&펖kw*9q`JYerj]żdL:鹪DDM|jja.[q'N˶,NkR@&V̕Mo'_R6p\\\ۋsfХ@CqYW]H%MO'K%r
$TcHmHn+
BMbAkQO9|,QVYE bw$=|YZUh\@ɹek*Seb[M0rv6}l%;#Y"mX(Qxj/.1CSRҋ (g"7Ee/ّIN"dKh;9VȐOU3KN[\¬&*RsXji]-Qi+(T^V;n2l9i*3`0.Ftk{'`
K#Ib)".a3,{<Ɠ<1Zь2N>?@j^=:Aɏ:*o1 ܌$0jR%kY||MMUMQ|T480nWx4nW v2Ç>O5@cZRRpےKpgSP9ٯR[N~!6O߱ue9WgUueh&C/^N&1h :%ֹsuP@Fk-\qQ|\o|MS[è*tx
^*,uxt6;xoN5lf:pSSb^dϘytS?N3w̡(5tI:
{ySgfY[,4ӈ4YRú]&`W3WVQ]B&NJMFу`Y ,x]V1xN:͢ ħ'K*K-.sk,F`6*iWih4QbvuXc%h}9ם@61$+0kDyd) IKeRcF$dy3ڒDȚd
&ެ-l=X:YkN<%;e[mAeStw4dWd4(+`^Ku;I^XJRydRƥdծ
i:hx.::͓"sR%,ʶı([P)sːN-r5_%q#^Ur+[>퇋mlA.vNdd`CMA(uI۪h\XGJIИt@LJvY}ʛ{*0V &kҥ̓?n_ғ[VIUZtT^\6-^5?Yg*i%4ec"y)$Lj^]Ks ј J$$>|,.K-\ʪM|i5eS*gi yɊ2yTTb턒]+͛yrcrt_U$Rp?@seirZ;~V:ZVPxi+Qvgx9"NG6ʽ"'Iz$,
Z˪
$G:BS2H|+&.H Z&Du5?ݝZ~HXUI^ZT뙖;ɼy)zTJ^&jH~Y~@lLm=?B~\<1xcR[.mzbkFPд-ļVסoVavN9JkZ]W9KSx9.Qw_ҽ>N.^U8QSi.ޗzɛkF2yfPr5?OC<{vk2ϰԏ2͛d_nKc(ӻ+ X1@-I46sP~R-,)[f{8ao+Z/C]ad8 [@`W|:*o:6/wWy4ϠSpVokn[ۯ*tN@A)h uPE1 %̩a.Bb>3M>/{DĤYG˙,5E}m"-A˄ &`s3HHzsnO`-%
N%xW&Bw䒝QK<{Y$쮅'6Z]6WNꓓW!Eqjhw2vʾ| T|.
2փCZ8]3p+s CY`?!j
Nb 3PWB4,[ܒlt[> Qav.{0fi,0^N?抗+^?`X
8 9x qgԟaglo|<]7v p
7@D h4}ȑR|*۸]ChPG#!B>d!{a UH`4 hNdZsE5K캬ͻ٩rH,܉3"6N}F!T"܄V+Wp 30 1 -h[`6@X(@!^9PG=- |F B9=#Ax[(EyV!]^tÇ& p6#T!\p@ }3hq25h7L%s*10(a§ !Pp.,AE",DAڮEЇѕ@@p|Da3U-͐8,^0C`_"
v@@P0A'!O`=_L!F+n\O̝p=efl9l6fkqQz(&Ñ'b81(;hjfVØ[ւGѬ#&4jh8hn6`T IkJ-'4(lc0)r1AZsaJ1x~d QMt4 ;jCj[F Lo3@GT̴Uبbba'̙mdrZ9Ơ;T7Au=]ݩTwѫ
9fN9x9J=8Rch9ڨ(itoHMS4ii"aN/KOYz;+"H)cr>Δˬc"]ozz7CU۠OVԯYYB|gl5P[|3{/hNpq,M9gc*
qį$Q+>%ms3|4]62|]
-9.}ˍv[H3ay\{qdKSK]bs9EV28oLy//H^a7QdnGw2`1Y/p./4SQWaiw+]poc(r
~gKk:i1rѥ,j%Upk)~LFÜVZfM[w-dy 'KKkZX,V\k~%3K댜fI{VKgaӜk>Xi-˽'uNH;zÍX'7ṳ֖&&t2Vj{:nnՍ[f\ѷ՛kgK;Z
Ի62HǶ9wVUTuamu/[zWZ6\kVa mMRm 4~c?4c\K36A;fI_Ɛimahf}FV~w+ghQF!#*[jGF~k>.w}>.wCv
rh]r7Kܧ#-G9k_l6sa9YsK=<|Jb?[ƈ :c^:*hxڙN$ړN:D,:ΦSi1 z!-Ӆ2z]M,z'Mb8]J_З5n8{zPjOW*QMoRrJ]APF{>82>uJݠe9ݨH7)fe5}Vy>U6З-5 }OA?R>+?_gj~Fjݩj!ADTӟc>u=ΥJԳMM)LD
ţޤ[PWjQ_RJLݥd?(5tM)5Ce+Ji|mRW&*`eGpm2L[nWFjQeweKU~P&2M<M[Ɇ*'IteK)sbtv`+vRnS泻A9=TjRSj'JLY)K/yyXYc%r\SCDe%?VYŧ*yʭ<*k{2\yߨÔ"S1^\Q(߉beR2X P5ӪGĻ!>P5,vYbnˣٞ=Ejg:3FꙩTGyR'xRDϥdX&kٱؔMlj6#x||
f_d_f_gD36?%[YY(fաvVh0 Rli8vN(
9yUlENvun2t/!n
=n }fw~dw#p{ \օ٣Qd.g /aOc+Ul[ARx3{%{3~>
eC쟑W$>d/"H*2}vG&tCd>)R~sء29yd{' F6s=όlK<#Ox%9GQʳv}xA4Gp>0z$?<:â9|T>:z:M|b<>)z?6z]ͧGh=?9$}}ϋK7|~t'?3G1/y*fX/%~ ~^l_/MǦKbR~yl:v6Vï-+cc+-k5Z&v?'47?{??Ƕ'b{gb?-t\ &4^A`TBl8ܦC]!rl5mc?:\p<6VSV
.}`*X
66i@Mk
LI!1!8ppͅQ8D.wr0=\A'J.H((!V86\-bC\l-t.zk&&\2K,8Gwb'XŮr{!ƶ9sxv;4kȥqi:ZX<
a+n~q7$|'jb0xo/zW̡OvR;
8pS+GߏZL/tiuk-$<pג=L'SFrk/ȇSq<Xk}]8ƾ
Z41iFt4h3*'qJ'ƍ0}&m
`!9NȜuљ#E0i;92Qe&m`-9P6d{~ ʁּ.^
A"2J
3&7<
X~-h,u .rW{]VgE.wQ.vb7Xb{,f bg8ǮqŞw.ɟ9?TH:ÔX,·XxSUiht#A^$/]:ԩSa^'A9NzpW K{)''ͲdTMC0 4U-gͲtϓ#˚'|&5#6@Ua=5JVO ~p sg?,tn8[Jym%ҤcKtsF۲L-OQi$}lbEߥD52kOMфMє6'!R/?PK
rD'~N : java_cup/ErrorManager.classTkS@=TEZ|#utDӦLgtr<]?{l92yi.HsQK60eLab\Hs4f,\p]g-ܰ0gaMq?*=/VH`kX[u6]L
-`0Wxl{^=+~ڬtTvp I_~up'Mvpw9ʯׂҲlf:X=o⁃fGDZ3*#JQ[Sm/q*U_z\jafY`U?\IbK$Њ+u@o5= *O.`Fc3NÖ.%gz=V8H{'+
;Lۦ RȴGfpg"X"h&3q
T7*v=ETWR_ƐF|hܥ'v*zrֹ_ 0}՝Y}u^ƶ_Nc yrPl5[8ĶGuӜ^GN.7ƔgmA;inur;[h=O(rL;AL9rǶ"7%ySͼӔ;Cv;&QU~PK
rDmI ? java_cup/Lexer.class{ xTUp=wK:M[HUAD%&4
L:"Q\Q
Y""eqw|.csotXu9Su9}_ p&35ETFi&aN_3003@$ d%lP~f3x0ׅChGhǸ5q?`43Mcrg4WXvMbt `j2s]dc4Յ8Q!73UF3
žs|gX₉X1*
FsU2j2h]cB~書x!?/2ċM:0qL\"]0/1R~JOA=ĕ&^fb&Ll1rWxMl5J2qWxaךx-KYgzu&^&F7[L[
dmnFjjg `1BRac9Z4N;cFQeU"0%@|zQULn*4hAUuAu'pvto%cecBMe{O*$=,(../mg
,/gx:fIʂ*(!ܲej*++-kKg;h[5kͫ?x&XrBmi5{/TP]]Yyō
3uƦ#ںcZ+V6H3f49jE`np҂P}#1Ԝ\N.q UBZV,4U78)\MܶzS!DDҥ"/_\5 .!h /)uW;+W\^l9AZǟ)]Oև r~fr瑂h)*r$Z1=y@ՠYOiz<jd`h`E}v)H38z̎+e%')M{te[A-ӓ`\@4`]K(D"'=!X-.#;-+q]QXlC36%%UjJz<$mvQS%WԜܞ6ӪTȚN"'~C ,ܪ:
P_&-(4;>c.)ޜE.^yb
*&wrGpPr)#秖_omH4.2+[BL-h)*:E,'ZI[l}t9[ܪE,8#J0Y FK.T¯G@&5صjlįv>"S"aDEAD*j&&эɈR#aMEO)H\*!#UFЇ~NtCjg**h UChPF}$s =*#+%>S>N*l @$뢽/_HH< #~uꓑk["_]OD$k x$.9G"wEDp0~H ߿[{9G"6< p$-#sH"m2Kh!c771:JhvBnft ]gqBChOfCY{wZɎ}Gxl=Q;(v_Lj"q.Fġ=)Ik
(#8B8J!xj-#
rw0:3ŻFFg={n8 PW&pҗSzBS1S&Bɩ악ӳFRvk>BCp(%b"ap/Ca?<
wdӈMsML%H#|6J2P5q46Y?$r\â9gS7;̞D\ ;mC?t(8>+SDP$&/OvweA]YSQu©gc04P1Lq$YJ%&x &uSe줮,%Jv/~dr2fg|WUnUf\QSI3έCsw:(z
/LpQiz'ZW-X%ƭ-vb:_ykBFq/1|T+\qzCZ]+sY46jPؒ>'پ*+8n,yNxezUb5=uM
DGpbm?qmr'֩ul>{%#AGd1g-"!GR$B\t, =zgP:b+넁wx^{{nP?Z6։$`hvCuF_tFōV2|'YPvF;CI{ꆷm7h;+(uC
]n͇a؆bx1;gw؏Gp?bLɦ eكx33z2m(ժD+
iELKQRU1:O<'DR%a8
=8%ȑ?FIA02NClCHMrehd>J@ o$N$U#_2"-
'UE&1t<baT9rlWU[jZ'TA>MJD{QU4m juE
!R\2~鮲b6sY
K.<)I+j^>rh4Vt#W8v3Lpe>qV,ks{M"#UV]10c&80=˖ӣk)ؐptuLtq
PY\^1 KĿs*v2[sF閽rA:ml$3Va/e%N%\?lxꡚe5PY썠vv/VxxNd٪8m:ҋf.8+pݑcsζRV8^}(!<=KVe']^?O >7v7e20t;ٜro$VkhsTf 2YҎl=h1L']uJ;k
{208PfLNE uV30z3~5y<-Z
${sIb)uM&7!c^Mn#]h4o\cϑHx,Kt:C2'uԗWO,c,O|.v9]YNӝݕ/,*"/CYR8vHn"n#1,[yTSrIi2+r7V*_1p{ӥ_vB{
weefp&B*c2>=I潀śP)ىWs! dOj:cbs$<
;~N/wyF<ͱ,2gA{*tS{uڅ|=DȐAL7^)
[E/V&2k^_^K#}0yo
^ڸ*UBߐl_L&2)aIV1[N7vwHHߜjlj7-U4%w0T@lb۹\o9!ЖV-Ώ:suå[DN|˪/Ͽ2;8maPIIӜ.PkY 4cŎj+A̎kg413PŢ5qjt{`HnM;n}?94gtC+kj@C:a-DuǴc7PƘM4f@tnu!joMݿ9}Ϳ#QNWߠ]Ĵ}rm@l6s[_sse?w6c?~>f?'s?σC .lvjU o
;-&{1wɾrDdzHQ~$OȰcOIIbJFk
HvH߀AW1(_Nӷi>/%O lF6$ҚAqȇglxVZWIz38٤So
%[hĭϣ,fPoUxt"Y>wh=+u;Nhm?*ߑ)B_iiH?/Hz;wb'v#cbG`n9u:h࠙qArбL7A;K; 1=%ztyVl|$p(84\@.@
.\l&cmL.tr1x<':3\̌? VW|X^Ea]Ca߄RLQLד[QL@1&k^T1H9#t}#CNDI>`O8Ѥy2Rږ
>*fKo&5N= FfO
Q)ńۡ#ڝOvH\P]Ɨ,KvJzVo\EƔ׳q"n>*,y