[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