[OSy] Úprava testů

Martin Decky decky at d3s.mff.cuni.cz
Mon Nov 10 02:13:50 CET 2014


Hezký den,

> stalo se mi, že testy na přístup k nezarovnaným adresám nepadaly a tudíž
> neprošly. Po bližším prozkoumání jsem zjistil, že GCC si všimlo, že
> adresa na kterou přistupuji je nezarovnaná konstanta, a kód opravilo
> tak, aby prošel (použilo instrukce SWL, SWR).

Díky za výborný postřeh! Skutečně jsme nezaregistrovali, že překladač 
začal být až tak chytrý :)

Nicméně jen rozdělení jednoho statementu do dvou nemusí pomoci, dokonce 
ani když se jeden přesune do statické funkce ve stejném céčkovém modulu 
(překladač provede inlining a instrukci pro nezarovnaný přístup použije 
i tak). Jediný spolehlivý způsob je přemístit přístup k ukazateli do 
samostatného modulu, kdy už se pochopitelně žádná optimalizace neuplatní 
(link-time optimization by bylo potřeba explicitně povolit).

Proto jsme v tomto duchu upravili testy 1. základního zadání. V příloze 
najdete jak aktualizovaný archív se všemi testy, tak diff, ze kterého je 
vidět, co se přesně změnilo.

* Prosím tedy všechny skupiny, aby si ve svém repozitáři aktulizovali 
test exc1 a exc2 (a příslušnou infrastrukturu). *

> Budou se spouštět testy od nás z repozitáře, nebo ty oficiální?

Vždy spouštíme testy z repozitáře dané skupiny, protože je možné, že ve 
zdrojácích bylo nutné provést nějaké formální změny (např. kvůli kolizi 
identifikátorů). Na druhou stranu, "business" logiku testů byste sami 
měnit neměli, pouze po dohodě s námi.


M.D.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: tests-as1.tar.bz2
Type: application/x-bzip
Size: 6832 bytes
Desc: not available
URL: <http://d3s.mff.cuni.cz/pipermail/nswi004/attachments/20141110/a0976f99/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: tests-as1.diff
Type: text/x-patch
Size: 4585 bytes
Desc: not available
URL: <http://d3s.mff.cuni.cz/pipermail/nswi004/attachments/20141110/a0976f99/attachment-0001.bin>


More information about the NSWI004 mailing list