MSVC, GCC und Clang/LLVM: Compiler-spezifische Vor- und Nachteile



  • Ein Compiler ist Herz und Seele einer leistungsstarken Development Toolchain. Mit diesem zentralen Infrastrukturelement steht und fällt Entwickler-Produktivität. Die hochperformante Ausführung von Code braucht einen zuverlässigen Compiler.

    Klicken sie hier um den Artikel zu lesen



  • Für mich war der Artikel Neuwert! Ich bin bestens vertraut mit MSVC und GCC (MinGW auf Windows), bin irgendwo über Clang gestolpert ("was ist das"), LLVM war mir bisher kein Begriff. Ist aber absolut wichtig. Mehr zu LLVM steht in https://de.wikipedia.org/wiki/LLVM Ich habe mich früher schon gefragt, ob es einen zweckdienliche Verbindung der Java-Technologie mit Bytecode und JIT und C/++ geben sollte: Mit LLVM ist diese da.
    Frage: Bei klassichem Compilieren/Linken gibt es das Problem: Lange ungenutzte Routine in einem Objfile, der Objfile wird aber wegen einer anderen Routine vom Linker eingezogen, Speicherverschwendung, tut weh auf embedded small footprint Plattformen (unrelevant für PC-Programme). Die LLVM-Technologie könnte aber in der Lage sein zu erkennen was tatsächlich gebraucht wird auch unterhalb des Schnitts in "Übersetzungseinheiten". Das bedeutet für die Quelltextgestaltung (in C/++) dann man nicht mehr darauf achten braucht, bestimmte Dinge eben nicht in ein C-File zu schreiben. Es wäre dann vollkommen egal. Auch könnte die Entscheidung wann inline vollkommen der Compiler-Optimierung (nach Laufzeit oder Codegröße, ggf. auch eine max. Codegröße als Limit angebbar) überlassen werden. Hinweis: inlines sind laufzeitoptimal aber ggf. speicherintensiver, aber solange der kleine Embedded Speicher reicht, sind inlines besser.
    Weitere Frage: Wie sieht es mit der automatischen Parallelisierbarkeit aus (Multicore-Aufteilung).



  • iron nou papuh you are lin c



  • and loving for laif hony



  • this is depresivve baby, but i rili laik et, melbin crostim wikipedia fore ber chuck scrut ok?



  • ♥ yu yu hakusho is the best anime of the world ♥


Log in to reply