[cpl] [Tema 4] Task 3 - Select
Alexandru Guduleasa
alexandru.guduleasa at gmail.com
Wed Dec 30 21:33:58 EET 2015
Pentru a obține instrucțiunea BL, ar trebui să fie suficient task-ul 1.
Pattern-urile sunt deja adăugate, voi trebuia doar să adăugați
instrucțiunea.
Pentru testul add.c ar trebui să vezi 2 instrucțiuni de acest tip:
[...]
bl f
bl dump_int
[...]
Încearcă să urmărești asamblarea generată pentru funcția cpl_main și ar
trebui să găseși eroarea.
Spor,
Alex
2015-12-30 21:16 GMT+02:00 Alexandru Tifrea <alex.tifrea93 at gmail.com>:
> 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.
>
>
> În data de 30 decembrie 2015, 21:11, Alexandru Tifrea <
> alex.tifrea93 at gmail.com> a scris:
>
>> Mersi de raspunsul prompt :).
>> 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.
>>
>> Multumesc,
>> Alex
>>
>> În data de 30 decembrie 2015, 17:20, Alexandru Guduleasa via cpl <
>> cpl at cursuri.cs.pub.ro> a scris:
>>
>>> În cazul selectul-ui, problema poate fi rezolvată direct cu un pattern.
>>> Se poate observa că un pattern poate mapa o instrucțiune din IR în mai
>>> multe instrucțiuni mașină (vezi CplBOA).
>>> Încearcă să găsești o funcție logică pentru rezultatul instrucțiunii
>>> și să o implementezi folosind instrucțiunile din set.
>>> Un aspect important îl constituie valorile limitate pe care le poate
>>> avea primul operand al instrucțiunii select.
>>>
>>> Spor
>>> Alex
>>>
>>>
>>> 2015-12-30 16:22 GMT+02:00 Alexandru Tifrea via cpl <
>>> cpl at cursuri.cs.pub.ro>:
>>> > Salut,
>>> >
>>> > Am putea primi un hint legat de rezolvarea task-ului 3? Am petrecut
>>> destul
>>> > de mult timp incercand sa gasesc o solutie si nu simt ca sunt prea
>>> aproape
>>> > de rezultat nici acum :).
>>> >
>>> > Mersi,
>>> > Alex
>>> >
>>> > _______________________________________________
>>> > cpl mailing list
>>> > cpl at cursuri.cs.pub.ro
>>> > http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/cpl
>>> >
>>> _______________________________________________
>>> cpl mailing list
>>> cpl at cursuri.cs.pub.ro
>>> http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/cpl
>>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/cpl/attachments/20151230/5e0de2a2/attachment.html>
More information about the cpl
mailing list