Detail produktu

Frontend překladače jazyka C s podporou pragmat

Vznik: 2014

Název česky
Frontend překladače jazyka C s podporou pragmat
Typ
software
Licence
K využití výsledku jiným subjektem je vždy nutné nabytí licence
Licenční poplatek
Poskytovatel licence na výsledek nepožaduje licenční poplatek
Autoři
Hruška Tomáš, prof. Ing., CSc. (UIFS)
Husár Adam, Ing., Ph.D.
Masařík Karel, Ing., Ph.D. (CK-SDZ)
Klíčová slova

LLVM, clang, pragma, vektorizace, překladače

Popis

Jedná se o značné rozšíření frontendu překladače LLVM clang o podporu specifikace
pragmat.
Pomocí pragmat může uživatel dodat překladači další informace o programu.
V překladači LLVM taková podpora předtím nebyla a z důvodu navazujích  úkolů bylo
nutné překladač značně upravit a dodat požadovanou funkcionalitu.

Využití je především v následujících optimalizacích překladače:
- alias analýza
    - označení bloků kódu, kde nemůže docházet k překrývání ukazatelů
- vektorizace (nová pragmata jsou založena na pragmatech pro Intel C/C++
překladač)
    - zde je specifikovat, že si přeji pro cyklus použít SIMD instrukce nehledě
na odhad ceny
    - nebo ignorovat závoslosti mezi iteracemi smyčky
    - + dodat další informace
- označení specializovaných instrukcí
    - zde je možné označit část kódu, která se má implementovat přímo v hardwaru


Pro zachování pragmat v kódu jsou použity speciální anotace v kódu, které mají ty
výhodu,  že narozdíl od ladicích informací v kódu zůstávají i po agresivních
optimalizacích.

Umístění
Licenční podmínky

Pro informace o licenčních podmínkách prosím kontaktujte: Mgr. Michaela Kavková, Výzkumné centrum informačních technologií, Fakulta informačních technologií VUT v Brně,  Božetěchova 2, 612 66 Brno, 541 141 470

Soubory
Projekty
Centrum excelence IT4Innovations, MŠMT, Operační program Výzkum a vývoj pro inovace, ED1.1.00/02.0070, zahájení: 2011-01-01, ukončení: 2015-12-31, ukončen
Výzkumné skupiny
Pracoviště
Nahoru