<div dir="ltr">Pentru a obține instrucțiunea BL, ar trebui să fie suficient task-ul 1.<br>Pattern-urile sunt deja adăugate, voi trebuia doar să adăugați instrucțiunea.<br><br>Pentru testul add.c ar trebui să vezi 2 instrucțiuni de acest tip:<br> [...]<br> bl f<br> bl dump_int<br> [...]<br><br>Încearcă să urmărești asamblarea generată pentru funcția cpl_main și ar trebui să găseși eroarea.<br><br>Spor,<br>Alex<br><br></div><div class="gmail_extra"><br><div class="gmail_quote">2015-12-30 21:16 GMT+02:00 Alexandru Tifrea <span dir="ltr"><<a href="mailto:alex.tifrea93@gmail.com" target="_blank">alex.tifrea93@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">PS: legat de raspunsul tau de pe celalalt thread, apelul indirect (cu CALLR) functioneaza. Am verificat si, de exemplu, pentru testul loop.c se efectueaza inlocuirea lui CALLR cu ce trebuie atunci cand sunt folositi pointeri la functii. In schimb, niciun apel direct nu pare sa se regaseasca in fisierele .s.<div><br></div></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">În data de 30 decembrie 2015, 21:11, Alexandru Tifrea <span dir="ltr"><<a href="mailto:alex.tifrea93@gmail.com" target="_blank">alex.tifrea93@gmail.com</a>></span> a scris:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Mersi de raspunsul prompt :).<div>Mai am o intrebare, insa: dupa ce am implementat primele 5 task-uri, in fisierele .s generate nu pare sa fie inclusa vreo instructiune BL. Asta inseamna ca toate apelurile care nu au argumentul in registru (deci tot ce nu e CALLR) nu se regaseste in asm-ul care se genereaza. Daca nu ma insel, nu a trebuit sa facem vreo modificare in legatura cu asta (nu se mentiona cred nici in enunt nici in TODO-uri). Problema e ca nici nu prea stiu cum as putea sa abordez debugging-ul pentru a vedea ce cauzeaza problema asta.</div><div><br></div><div>Multumesc,</div><div>Alex</div></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">În data de 30 decembrie 2015, 17:20, Alexandru Guduleasa via cpl <span dir="ltr"><<a href="mailto:cpl@cursuri.cs.pub.ro" target="_blank">cpl@cursuri.cs.pub.ro</a>></span> a scris:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">În cazul selectul-ui, problema poate fi rezolvată direct cu un pattern.<br>
Se poate observa că un pattern poate mapa o instrucțiune din IR în mai<br>
multe instrucțiuni mașină (vezi CplBOA).<br>
Încearcă să găsești o funcție logică pentru rezultatul instrucțiunii<br>
și să o implementezi folosind instrucțiunile din set.<br>
Un aspect important îl constituie valorile limitate pe care le poate<br>
avea primul operand al instrucțiunii select.<br>
<br>
Spor<br>
Alex<br>
<div><div><br>
<br>
2015-12-30 16:22 GMT+02:00 Alexandru Tifrea via cpl <<a href="mailto:cpl@cursuri.cs.pub.ro" target="_blank">cpl@cursuri.cs.pub.ro</a>>:<br>
> Salut,<br>
><br>
> Am putea primi un hint legat de rezolvarea task-ului 3? Am petrecut destul<br>
> de mult timp incercand sa gasesc o solutie si nu simt ca sunt prea aproape<br>
> de rezultat nici acum :).<br>
><br>
> Mersi,<br>
> Alex<br>
><br>
</div></div>> _______________________________________________<br>
> cpl mailing list<br>
> <a href="mailto:cpl@cursuri.cs.pub.ro" target="_blank">cpl@cursuri.cs.pub.ro</a><br>
> <a href="http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/cpl" rel="noreferrer" target="_blank">http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/cpl</a><br>
><br>
_______________________________________________<br>
cpl mailing list<br>
<a href="mailto:cpl@cursuri.cs.pub.ro" target="_blank">cpl@cursuri.cs.pub.ro</a><br>
<a href="http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/cpl" rel="noreferrer" target="_blank">http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/cpl</a><br>
</blockquote></div><br></div>
</div></div></blockquote></div><br></div>
</div></div></blockquote></div><br></div>