Pytania otagowane jako llvm

Projekt LLVM to zbiór modułowych i wielokrotnego użytku kompilatorów i technologii łańcucha narzędzi. Znacznik llvm służy głównie do pisania kodu C ++ (lub innego języka za pośrednictwem powiązań C) w celu połączenia z biblioteką LLVM, a nie do jakichkolwiek (z rosnącej liczby) narzędzi, które mają LLVM pod maską. Zobacz znacznik `llvm-codegen` w celu uzyskania informacji na temat kodu maszynowego wygenerowanego przez LLVM.

5
Czy standard C ++ pozwala niezainicjowanemu boolowi na zawieszenie programu?
Wiem, że „niezdefiniowane zachowanie” w C ++ może pozwolić kompilatorowi na zrobienie wszystkiego, co chce. Miałem jednak awarię, która mnie zaskoczyła, ponieważ uznałem, że kod jest wystarczająco bezpieczny. W takim przypadku prawdziwy problem wystąpił tylko na konkretnej platformie używającej określonego kompilatora i tylko wtedy, gdy włączono optymalizację. Próbowałem kilku rzeczy, …

6
Czym dokładnie jest LLVM?
Cały czas słyszę o LLVM. Jest w Perlu, potem w Haskell, a potem ktoś używa go w innym języku? Co to jest?
464 llvm 

9
Przełączanie między GCC a Clang / LLVM za pomocą CMake
Mam wiele projektów zbudowanych przy użyciu CMake i chciałbym móc łatwo przełączać się między nimi za pomocą GCC lub Clang / LLVM w celu ich skompilowania. Wierzę (popraw mnie, jeśli się mylę!), Że aby użyć Clanga, muszę ustawić następujące ustawienia: SET (CMAKE_C_COMPILER "/usr/bin/clang") SET (CMAKE_C_FLAGS "-Wall -std=c99") SET (CMAKE_C_FLAGS_DEBUG "-g") …
269 cmake  llvm  clang 


5
Jak skompilować clang do llvm IR
Chcę, aby Clang skompilował mój C/C++kod do LLVMkodu bajtowego, a nie do pliku binarnego. Jak mogę to osiągnąć? A jeśli otrzymam LLVMkod bajtowy, jak mogę go dalej skompilować do binarnego pliku wykonywalnego. Zasadniczo chcę dodać część własnego kodu do LLVMkodu bajtowego przed skompilowaniem do binarnego pliku wykonywalnego.
150 c  llvm  clang 

3
LLVM vs Clang w systemie OS X
Mam pytanie dotyczące llvm, clang i gcc w systemie OS X. Jaka jest różnica między llvm-gcc 4.2, llvm 2.0 i clang? Wiem, że wszystkie opierają się na llvm, ale czym się różnią? Oprócz szybszej kompilacji, jaka jest przewaga llvm nad gcc?
136 c++  c  gcc  llvm  clang 


2
Szybsze uzupełnianie kodu dzięki clang
Badam potencjalne przyspieszenia uzupełniania kodu podczas korzystania z mechanizmu uzupełniania kodu Clang. Przepływ opisany poniżej jest tym, co znalazłem w rtagach autorstwa Andersa Bakkena . Jednostki tłumaczeniowe są analizowane przez demona monitorujące pliki pod kątem zmian. Robią to wywołane clang_parseTranslationUniti powiązane funkcje ( reparse*, dispose*). Gdy użytkownik zażąda uzupełnienia w …

8
clang: jak wyświetlić listę obsługiwanych architektur docelowych?
Obecnie interesuje mnie ogólnie ARM, a konkretnie cele dla iPhone / Android. Ale chcę tylko dowiedzieć się więcej o clang, ponieważ wydaje mi się, że będzie odgrywał ważną rolę w nadchodzących latach. próbowałem clang -cc1 --help|grep -i list clang -cc1 --help|grep arch|grep -v search clang -cc1 --help|grep target -triple <value> …
98 clang  llvm 

13
LLVM C ++ IDE dla Windows
Czy istnieje środowisko C / C ++ IDE dla systemu Windows, które jest zintegrowane z kompilatorem LLVM (i analizatorem Clang C / C ++), tak jak robi to nowoczesny Xcode. Mam Dev-Cpp (używa przestarzałego GCC) i Code :: Blocks (z niektórymi GCC). Ale GCC daje mi bardzo tajemnicze komunikaty o …
92 c++  windows  ide  llvm  clang 

4
Mylący błąd szablonu
Bawiłem się przez jakiś czas z clang i natknąłem się na "test / SemaTemplate / dependent-template-recovery.cpp" (w dystrybucji clang), który ma dostarczać wskazówek, jak odzyskać dane po błędzie szablonu. Całość można łatwo sprowadzić do minimalnego przykładu: template<typename T, typename U, int N> struct X { void f(T* t) { // …
91 c++  templates  llvm  clang 

2
Co dokładnie robi instrukcja PHI i jak jej używać w LLVM
LLVM ma instrukcję phi z dość dziwnym wyjaśnieniem: Instrukcja „phi” służy do implementacji węzła φ na grafie SSA reprezentującym funkcję. Zwykle jest używany do implementacji rozgałęziania. Jeśli dobrze zrozumiałem, jest to potrzebne, aby umożliwić analizę zależności, aw niektórych przypadkach może pomóc uniknąć niepotrzebnego ładowania. Jednak nadal trudno jest zrozumieć, co …
91 llvm 

3
Dlaczego LLVM przydziela zmienną redundantną?
Oto prosty plik C z definicją enum i mainfunkcją: enum days {MON, TUE, WED, THU}; int main() { enum days d; d = WED; return 0; } Przenosi się na następujący LLVM IR: define dso_local i32 @main() #0 { %1 = alloca i32, align 4 %2 = alloca i32, align …
9 c  llvm  llvm-codegen 
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.