Dobja a Linux kernel az Intel C(++) fordítójának támogatását

Címkék

A 6.3-as Linux kerneltől a fejlesztők dobják az Intel ICC (illetve újabban "Intel C++ Compiler Classic") fordítóprogramjának támogatását. Évek óta nem frissült a kernelben, a fejlesztők rendre megfeledkeznek róla a GCC és a Clang mellett, illetve az ICC támogatás feltehetően törött és senki sem foglalkozik vele. Részletek itt.

Hozzászólások

Ez már a vég, előbb az ia64 kódokkal se foglalkoznak, mostmár az icc -vel mi jön még ? A régi jó dolgokból nem marad semmi :D

Fedora 42, Thinkpad x280

Életemben nem vetemedtem olyasmire, hogy Intel fordítóval fordítsak kernelt és valószínűleg ennek az az oka, hogy sose gondoltam, hogy kétes hatékonyságú vélt optimalizálások oltárán fel kellene áldozni egy százezrek által használt, kitesztelt fordítóprogramot. Valójában sosem értettem, hogy mi célja volt annak, aki az ICC támogatás beolvasztását kisírta. Mármint, hogy az Intel-en kívül ez kinek hozhatott volna bármit is.

trey @ gépház

Nem az ICC támogatást kellene dobni, hanem végre bekapcsolni a -pedantic -ansi opciókat...

De esetleg még a -std=c99 is lehetne.

Apropó, mi a helyzet a tcc-vel? Azzal fordul még?

Most komolyan, mikor fordítanád tcc-vel? Szerintem senki nem forgatná azzal. Persze értéke lenne elméletileg ha szigorúan C99 kompatiblis lenne, de annyit munkát nem érne. Nincs rá senkinek oka, hogy ne a gcc-vel vagy llvm/clang-gal fordítsa, azokat a fordítókat legalább a mai napig aktívan fejlesztik, optimalizálják.

Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”

Azért fordítanám tcc-vel, mert lehet. A szabvány arról szól(na), hogy lefordíthatod bármelyik fordítóval.

Nem tudom elképzelni, hogy mi lehet az a baromi sok GNU extension, amik nélkül nem lehet egy kernelt megírni. Ugyanakkor nem is vagyok kernelfejlesztő (bár néha bele kell tákolnom, de hát az a kernel 0.000000001%-a lehet).

De, meg lehet írni, csak használnak újabb C sztenderdet, plusz gondolom az is számít, hogy a gcc/clang toolchain jobban egyben van, mindenféle tool. Mondom, nekem pedig tetszene is, ha tcc-vel lefordulna, jó kis minimalista, anti-bloat fordító, csak kérdés, hogy az elméleti megelégedésen kívül mennyi haszna lenne, kinek mennyi munkát érne meg.

A tcc-t már nem fejlesztik, meg nincsenek hozzá extra optimalizációk, amik a modern hardver extra utasításkészleteit kihasználnák. Valami nagyon retró gépen biztosan coolabb, de modern platformokon, ahová a Linux kernelt szánják, ott nem sokat adna hozzá, sőt, lehet visszalépés lenne teljesítményben.

Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”