Als «llvm» getaggte Fragen

Das LLVM-Projekt ist eine Sammlung modularer und wiederverwendbarer Compiler- und Toolchain-Technologien. Das llvm-Tag dient hauptsächlich zum Schreiben von C ++ - Code (oder einer anderen Sprache über die C-Bindungen) zur Schnittstelle mit der LLVM-Bibliothek, nicht zu einem (von der wachsenden Anzahl von) Tools, das LLVM unter der Haube hat. Fragen zum von LLVM generierten Maschinencode finden Sie im Tag "llvm-codegen".

464
Was genau ist LLVM?

Ich höre die ganze Zeit über LLVM. Es ist in Perl, dann in Haskell, dann benutzt es jemand in einer anderen Sprache? Was ist

269
Umschalten zwischen GCC und Clang / LLVM mit CMake

Ich habe eine Reihe von Projekten mit CMake erstellt und möchte in der Lage sein, einfach zwischen GCC oder Clang / LLVM zu wechseln, um sie zu kompilieren. Ich glaube (bitte korrigieren Sie mich, wenn ich mich irre!), Dass ich für die Verwendung von Clang Folgendes einstellen muss: SET...

150
Wie man Clang zu llvm IR kompiliert

Ich möchte, dass clang meinen C/C++Code zu LLVMBytecode kompiliert und nicht zu einer ausführbaren Binärdatei. Wie kann ich das erreichen? Und wenn ich den LLVMBytecode erhalte , wie kann ich ihn verwenden, um ihn weiter in eine ausführbare Binärdatei zu kompilieren? Grundsätzlich möchte ich dem...

133
LLVM vs Clang unter OS X.

Ich habe eine Frage zu llvm, clang und gcc unter OS X. Was ist der Unterschied zwischen llvm-gcc 4.2, llvm 2.0 und clang? Ich weiß, dass sie alle auf llvm aufbauen, aber wie unterscheiden sie sich? Was ist neben dem schnelleren Kompilieren der Vorteil von llvm gegenüber

93
clang: Wie liste ich unterstützte Zielarchitekturen auf?

Derzeit interessiere ich mich für ARM im Allgemeinen und speziell für iPhone / Android-Ziele. Aber ich möchte nur mehr über Clang erfahren, da es in den kommenden Jahren eine wichtige Rolle zu spielen scheint. Ich habe es versucht clang -cc1 --help|grep -i list clang -cc1 --help|grep arch|grep -v...

92
LLVM C ++ IDE für Windows

Gibt es eine C / C ++ IDE für Windows, welches integriert mit dem LLVM - Compiler (und Clang C / C ++ Analysator), genauso wie moderne Xcode tun. Ich habe Dev-Cpp (es verwendet veraltete GCC) und Code :: Blocks (mit einigen GCC). Aber GCC gibt mir sehr kryptische Fehlermeldungen. Ich möchte einige...

87
Verwirrender Vorlagenfehler

Ich habe eine Weile mit Clang gespielt und bin auf "test / SemaTemplate / Dependent-Template-Recovery.cpp" (in der Clang-Distribution) gestoßen, das Hinweise zur Wiederherstellung nach einem Vorlagenfehler geben soll. Das Ganze lässt sich leicht auf ein minimales Beispiel

85
Was genau macht der PHI-Befehl und wie wird er in LLVM verwendet?

LLVM hat Phi- Anweisungen mit ziemlich seltsamen Erklärungen: Der Befehl 'phi' wird verwendet, um den φ-Knoten in dem SSA-Graphen zu implementieren, der die Funktion darstellt. In der Regel wird es zum Implementieren der Verzweigung verwendet. Wenn ich es richtig verstanden habe, ist es...

9
Warum weist LLVM eine redundante Variable zu?

Hier ist eine einfache C-Datei mit einer Aufzählungsdefinition und einer mainFunktion: enum days {MON, TUE, WED, THU}; int main() { enum days d; d = WED; return 0; } Es wird auf das folgende LLVM-IR übertragen: define dso_local i32 @main() #0 { %1 = alloca i32, align 4 %2 = alloca i32,...