LLVM Cookbook (Anglais) Broché – 30 mai 2015
|Neuf à partir de||Occasion à partir de|
- Choisissez parmi 17 000 points de collecte en France
- Les membres du programme Amazon Prime bénéficient de livraison gratuites illimitées
- Trouvez votre point de collecte et ajoutez-le à votre carnet d’adresses
- Sélectionnez cette adresse lors de votre commande
Les clients ayant acheté cet article ont également acheté
Description du produit
Présentation de l'éditeur
Over 80 engaging recipes that will help you build a compiler frontend, optimizer, and code generator using LLVM
About This Book
- Write a frontend for any language to generate LLVM IR
- Create optimization passes to optimize the IR code using LLVM Pass Infrastructure and Pass Manager
- Design and implement structures for highly-optimized compilers using LLVM, through detailed step-by-step recipes
Who This Book Is For
The book is for compiler programmers who are familiar with concepts of compilers and want to indulge in understanding, exploring, and using LLVM infrastructure in a meaningful way in their work.
This book is also for programmers who are not directly involved in compiler projects but are often involved in development phases where they write thousands of lines of code. With knowledge of how compilers work, they will be able to code in an optimal way and improve performance with clean code.
What You Will Learn
- Introduction to LLVM modular design and LLVM tools
- Write a frontend for a language
- Add JIT support and use frontends for different languages
- Learn about the LLVM Pass infrastructure and the LLVM Pass Manager
- Create analyses and transform optimization passes
- Build a LLVM TOY backend from scratch
- Optimize the code at SelectionDAG level and allocate registers to variables
LLVM is a compiler framework with libraries that provides a modern source-and target-independent optimizer, along with a code generator.
This book not only explains the effective use of the compiler infrastructure that LLVM provides, but also helps you implement it in one of your projects. You start with a simple task to get you up-and-running with LLVM, followed by learning the process of writing a frontend for a language, which includes writing a lexer, a parser, and generating IR code. You will then see how to implement optimizations at different levels, generate target-independent code, and then map this generated code to a backend. Finally, you will look into the functionalities that the LLVM infrastructure provides, such as exception handling, LLVM Utility Passes, using sanitizers, the garbage collector, and how we can use these in our projects.
Biographie de l'auteur
Mayur Pandey is a professional software engineer and an open source enthusiast. He focuses on compiler development and compiler tools. He is an active contributor to the LLVM open source community. He has been part of the compiler team for the Tizen project, and has hands-on experience with other proprietary compilers. Mayur earned a bachelor's degree in information technology from Motilal Nehru National Institute of Technology Allahabad, India. Currently, he lives in Bengaluru, India.
Aucun appareil Kindle n'est requis. Téléchargez l'une des applis Kindle gratuites et commencez à lire les livres Kindle sur votre smartphone, tablette ou ordinateur.
Pour obtenir l'appli gratuite, saisissez votre numéro de téléphone mobile.
Détails sur le produit
Si vous vendez ce produit, souhaitez-vous suggérer des mises à jour par l'intermédiaire du support vendeur ?
Meilleurs commentaires des clients
Un problème s'est produit lors du filtrage des commentaires. Veuillez réessayer ultérieurement.
Commentaires client les plus utiles sur Amazon.com
Additionally, I've downloaded the example code from the publishers website and nothing compiled using LLVM 3.8. They don't even mention how to integrate/register the target with Clang or do a complete job with LLVM. I contacted the publisher about this and their response was that the code was developed for an older version of LLVM. Fair enough, but I've found several syntactical errors in the downloaded code recipes that even show in the published book.
This means that the authors didn't even bother to build/compile their own examples! Absolutely ridiculous!
You'd better to try to read regular docuemnt in http://llvm.org site