Learn LLVM 12: Przewodnik dla początkujących po narzędziach kompilatora LLVM i podstawowych bibliotekach w C++

Ocena:   (4,1 na 5)

Learn LLVM 12: Przewodnik dla początkujących po narzędziach kompilatora LLVM i podstawowych bibliotekach w C++ (Kai Nacke)

Opinie czytelników

Podsumowanie:

Książka stanowi kompleksowe wprowadzenie do LLVM dla programistów kompilatorów, szczególnie tych z pewnym doświadczeniem w C++. Obejmuje ona szeroki zakres tematów związanych z tworzeniem kompilatorów, ale nie zagłębia się w żaden obszar. Książka jest dobrze zorganizowana i zawiera praktyczne projekty oraz dodatkowe materiały wideo. Może jednak stanowić wyzwanie dla zupełnie początkujących programistów i zawiera pewne trywialne treści, które mogą nie być przydatne dla wszystkich czytelników.

Zalety:

Dobrze zorganizowana struktura i logiczny przepływ.
Obejmuje szeroki zakres tematów LLVM (od front-endu do back-endu).
Odpowiednia dla czytelników ze znajomością C++ i pewnym doświadczeniem w tworzeniu kompilatorów.
Zawiera praktyczne projekty i filmy „Kod w akcji” do praktycznej nauki.
Omawia nowe funkcje LLVM, dzięki czemu jest istotna i aktualna.

Wady:

Nie nadaje się dla zupełnie początkujących bez żadnego doświadczenia w programowaniu.
Niektóre trywialne treści mogą być stratą czasu dla doświadczonych czytelników.
Brak dogłębnego omówienia konkretnych tematów LLVM, które mogą być potrzebne zaawansowanym użytkownikom lub tym, którzy chcą przyczynić się do rozwoju LLVM.

(na podstawie 6 opinii czytelników)

Oryginalny tytuł:

Learn LLVM 12: A beginner's guide to learning LLVM compiler tools and core libraries with C++

Zawartość książki:

Dowiedz się, jak budować i używać wszystkich części rzeczywistych kompilatorów, w tym frontendu, potoku optymalizacji i nowego backendu, wykorzystując moc podstawowych bibliotek LLVM.

Kluczowe cechy:

⬤ Poznaj efektywne wykorzystanie bibliotek LLVM krok po kroku.

⬤ Zrozumienie wysokopoziomowego projektu kompilatora LLVM i zastosowanie tych samych zasad do własnego kompilatora.

⬤ Wykorzystanie narzędzi opartych na kompilatorze do poprawy jakości kodu w projektach C++.

Opis książki:

LLVM został zbudowany, aby wypełnić lukę między podręcznikami kompilatorów a rzeczywistym rozwojem kompilatorów. Zapewnia modułową bazę kodu i zaawansowane narzędzia, które pomagają programistom w łatwym tworzeniu kompilatorów. Niniejsza książka stanowi praktyczne wprowadzenie do LLVM, stopniowo pomagając w łatwym poruszaniu się po złożonych scenariuszach, jeśli chodzi o tworzenie i pracę z kompilatorami.

Zaczniesz od skonfigurowania, zbudowania i zainstalowania bibliotek LLVM, narzędzi i projektów zewnętrznych. Następnie książka wprowadzi cię w projekt LLVM i jego praktyczne działanie na każdym etapie kompilacji LLVM: frontend, optymalizator i backend. Korzystając z podzbioru rzeczywistego języka programowania jako przykładu, dowiesz się, jak opracować frontend i wygenerować LLVM IR, przekazać go do potoku optymalizacji i wygenerować z niego kod maszynowy. Późniejsze rozdziały pokażą ci, jak rozszerzyć LLVM o nowy przebieg i jak działa wybór instrukcji w LLVM. Skupimy się również na kwestiach kompilacji Just-in-Time i obecnym stanie wsparcia kompilacji JIT zapewnianego przez LLVM, zanim w końcu zrozumiemy, jak opracować nowy backend dla LLVM.

Pod koniec tej książki LLVM zdobędziesz rzeczywiste doświadczenie w pracy z frameworkiem kompilatora LLVM za pomocą praktycznych przykładów i fragmentów kodu źródłowego.

Czego się nauczysz:

⬤ Konfigurować, kompilować i instalować framework LLVM.

⬤ Zrozumieć, jak zorganizowane jest źródło LLVM.

⬤ Odkryć, co należy zrobić, aby używać LLVM we własnych projektach.

⬤ Poznanie struktury kompilatora i zaimplementowanie niewielkiego kompilatora.

⬤ Generowanie LLVM IR dla popularnych konstrukcji języka źródłowego.

⬤ Skonfigurować potok optymalizacji i dostosować go do własnych potrzeb.

⬤ Rozszerzenie LLVM o transformacje i narzędzia clang.

⬤ Dodaj nowe instrukcje maszynowe i kompletny backend.

Dla kogo jest ta książka:

Ta książka jest przeznaczona dla programistów kompilatorów, entuzjastów i inżynierów, którzy są nowicjuszami w LLVM i są zainteresowani poznaniem frameworka LLVM. Jest również przydatna dla inżynierów oprogramowania C++, którzy chcą korzystać z narzędzi opartych na kompilatorach do analizy i ulepszania kodu, a także zwykłych użytkowników bibliotek LLVM, którzy chcą zdobyć więcej wiedzy na temat podstaw LLVM. Średniozaawansowane doświadczenie w programowaniu w języku C++ jest obowiązkowe, aby lepiej zrozumieć koncepcje omówione w tej książce.

Dodatkowe informacje o książce:

ISBN:9781839213502
Autor:
Wydawca:
Oprawa:Miękka oprawa

Zakup:

Obecnie dostępne, na stanie.

Inne książki autora:

Learn LLVM 12: Przewodnik dla początkujących po narzędziach kompilatora LLVM i podstawowych...
Dowiedz się, jak budować i używać wszystkich części...
Learn LLVM 12: Przewodnik dla początkujących po narzędziach kompilatora LLVM i podstawowych bibliotekach w C++ - Learn LLVM 12: A beginner's guide to learning LLVM compiler tools and core libraries with C++

Prace autora wydały następujące wydawnictwa: