Itt van a GCC 10.1 fordító, és ezek a legfőbb újdonságai

Egy év fejlesztés után megjelent az új verzió kiadása a szabad készletből GCC 10.1 fordítók, ez az első jelentős kiadás a GCC 10.x új ágában.

Az új verziószámozási séma szerint a fejlesztési folyamat során a 10.0 verziót használták, és nem sokkal a GCC 10.1 kiadása előtt a GCC 11.0 ág már elágazott, amely alapján kialakul a következő verzió. .

Azok számára, akik nem ismerik a GCC-t (GNU Compiler Collection), tudnia kell, hogy plEz a GNU projekt által létrehozott fordítókészlet, ingyenes szoftver, és a Free Software Foundation (FSF) terjeszti a GPL általános nyilvános licenc alapján.

Ezeket a fordítókat széles körben használják a legtöbb Unix rendszerben olyan mértékben, hogy a Unix operációs rendszerek és a nyílt forráskódú származékok, valamint a saját tulajdonúak, például a Mac OS X szabványának tekintik őket.

A GCC megköveteli, hogy a binutils néven ismert alkalmazások halmaza olyan feladatokat hajtson végre, mint az objektumfájlok azonosítása vagy méretük megszerzése a listák másolásához, fordításához vagy létrehozásához, összekapcsolásához vagy a felesleges szimbólumok eltávolításához.

A GCC 10.1 újdonságai

A GCC 10.1 kiemelkedik a C ++ nyelv számos újításának megvalósításával a C ++ 20 szabványhoz kifejlesztve, a jövőbeli C nyelvi szabványhoz (C2x) kapcsolódó fejlesztések, új optimalizációk a fordítói háttérprogramokban és a kísérleti támogatásban statikus elemzési módhoz.

A C, C ++ és Fortran nyelvek esetében az OpenACC 2.6 párhuzamos programozási specifikáció valósul meg, amely meghatározza a GPU-k és olyan speciális processzorok letöltési eszközeit, mint az NVIDIA PTX.

A szabvány megvalósítása Nyissa meg az MP 5.0-t (Open Multi-Processing), amely meghatározza az API-t és a párhuzamos programozási módszerek használatának módszereit többmagos és hibrid rendszerekben (CPU + GPU / DSP) megosztott memóriával és vektorizációs egységekkel (SIMD), majdnem kész.

A funkciókat feltételes kifejezésekként adjuk hozzá lastprivate, szkennelés és ciklusok rendelése, sorrend és használat__eszköz_addr kifejezés OpenMP és OpenACC esetén, hozzá lett adva XNUMX. és XNUMX. generációs AMD Radeon GPU-k letöltésének támogatása.

A C nyelvek esetében az "access" függvény hozzá lett adva, hogy leírja a hivatkozással vagy mutatóval továbbított objektumok funkcióihoz való hozzáférést, és ezeket az objektumokat egész objektumokkal társítsa az objektumok méretére vonatkozó információkkal.

A "hozzáférés" együttes működéséhez a "type" attribútum a felhasználói funkcióktól való helytelen hozzáférés észlelésére szolgál, például amikor értékeket írunk a tömb határain kívül eső területre. A symver attribútumot hozzáadták az ELF fájlban szereplő karakterek linkeléséhez az adott verziószámokhoz is.

A C ++ esetében mintegy 16 változtatást és újítást hajtottak végre a C ++ 20 szabvány szerint fejlesztették ki beleértve a "constinit" kulcsszót hozzáadott és megvalósított támogatás a sablonok bővítéséhez «koncepció»Ez lehetővé teszi, hogy meghatározzon egy követelménykészletet a sablonparaméterekre, amelyek a fordítás során korlátozzák a sablonparamétereknek tekinthető argumentumok halmazát.

Szintén kiemelik a fokozott interprocedurális optimalizációkat, Az IPA-SRA átalakításra került a kötés közbeni működésre, és egyebek mellett most eltávolítja a fel nem használt számított és visszaadott értékeket.

"-O2" optimalizálási módban engedélyezve van a "-finline-functions" opció, amelyet a kompaktabb kód helyett a teljesítmény érdekében konfigurálnak át.

A továbbfejlesztett linkoptimalizálás (LTO), sés hozzáadott egy új futtatható fájlt lto-dump az információk kiírásához az LTO bájtkódolású objektumfájlokon. Az LTO párhuzamos passzokban az egyidejű végrehajtási feladatok száma automatikusan meghatározható, és ha ez nem határozható meg, akkor a CPU magok számával kapcsolatos információkat használja párhuzamosítási tényezőként.

Fejlesztették az optimalizálási mechanizmust és a Code Profiling (PGO) eredményein alapul, amely optimálisabb kódot generál a kódfuttatás jellemzőinek elemzése alapján.

Ha többet szeretne tudni róla, ellenőrizheti a kiadás részleteit A következő linken. 


Hagyja megjegyzését

E-mail címed nem kerül nyilvánosságra. Kötelező mezők vannak jelölve *

*

*

  1. Az adatokért felelős: Miguel Ángel Gatón
  2. Az adatok célja: A SPAM ellenőrzése, a megjegyzések kezelése.
  3. Legitimáció: Az Ön beleegyezése
  4. Az adatok közlése: Az adatokat csak jogi kötelezettség alapján továbbítjuk harmadik felekkel.
  5. Adattárolás: Az Occentus Networks (EU) által üzemeltetett adatbázis
  6. Jogok: Bármikor korlátozhatja, helyreállíthatja és törölheti adatait.