0 رای
وضعیت موجودی موجود

قیمت قبلی: 4,720,000 ریال
قیمت: 4,320,000 ریال

 



Product details

  • Publisher ‏ : ‎ Packt Publishing (May 28, 2021)
  • Language ‏ : ‎ English
  • Paperback ‏ : ‎ 392 pages
  • ISBN-10 ‏ : ‎ 1839213507
  • ISBN-13 ‏ : ‎ 978-1839213502

 

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

 

Learn how to build and use all parts of real-world compilers, including the frontend, optimization pipeline, and a new backend by leveraging the power of LLVM core libraries

Key Features

  • Get to grips with effectively using LLVM libraries step-by-step
  • Understand LLVM compiler high-level design and apply the same principles to your own compiler
  • Use compiler-based tools to improve the quality of code in C++ projects

Book Description

LLVM was built to bridge the gap between compiler textbooks and actual compiler development. It provides a modular codebase and advanced tools which help developers to build compilers easily. This book provides a practical introduction to LLVM, gradually helping you navigate through complex scenarios with ease when it comes to building and working with compilers.

You'll start by configuring, building, and installing LLVM libraries, tools, and external projects. Next, the book will introduce you to LLVM design and how it works in practice during each LLVM compiler stage: frontend, optimizer, and backend. Using a subset of a real programming language as an example, you will then learn how to develop a frontend and generate LLVM IR, hand it over to the optimization pipeline, and generate machine code from it. Later chapters will show you how to extend LLVM with a new pass and how instruction selection in LLVM works. You'll also focus on Just-in-Time compilation issues and the current state of JIT-compilation support that LLVM provides, before finally going on to understand how to develop a new backend for LLVM.

By the end of this LLVM book, you will have gained real-world experience in working with the LLVM compiler development framework with the help of hands-on examples and source code snippets.

What you will learn

  • Configure, compile, and install the LLVM framework
  • Understand how the LLVM source is organized
  • Discover what you need to do to use LLVM in your own projects
  • Explore how a compiler is structured, and implement a tiny compiler
  • Generate LLVM IR for common source language constructs
  • Set up an optimization pipeline and tailor it for your own needs
  • Extend LLVM with transformation passes and clang tooling
  • Add new machine instructions and a complete backend

Who this book is for

This book is for compiler developers, enthusiasts, and engineers who are new to LLVM and are interested in learning about the LLVM framework. It is also useful for C++ software engineers looking to use compiler-based tools for code analysis and improvement, as well as casual users of LLVM libraries who want to gain more knowledge of LLVM essentials. Intermediate-level experience with C++ programming is mandatory to understand the concepts covered in this book more effectively.

Table of Contents

  1. Installing LLVM
  2. Touring the LLVM source
  3. The Structure of a Compiler
  4. Turning the Source File into an Abstract Syntax Tree
  5. Basics of IR Generation
  6. IR Generation for High-Level Language Constructs
  7. Advanced IR Generation
  8. Optimizing IR
  9. Instruction Selection
  10. JIT Compilation
  11. Debugging Using LLVM Tools
  12. Creating Your Own Backend

 

منابع کتاب کتاب Learn LLVM 12: A beginner's guide to learning LLVM compiler tools and core libraries with C++

 

با استفاده از قدرت کتابخانه های اصلی LLVM، نحوه ساخت و استفاده از تمام بخش های کامپایلرهای دنیای واقعی، از جمله frontend، خط لوله بهینه سازی و یک backend جدید را بیاموزید.

ویژگی های کلیدی

  • گام به گام با استفاده موثر از کتابخانه های LLVM کنار بیایید
  • طراحی سطح بالای کامپایلر LLVM را درک کنید و همان اصول را در کامپایلر خود اعمال کنید
  • از ابزارهای مبتنی بر کامپایلر برای بهبود کیفیت کد در پروژه های ++C استفاده کنید

توضیحات کتاب

LLVM برای پر کردن شکاف بین کتاب های درسی کامپایلر و توسعه واقعی کامپایلر ساخته شده است. این یک پایگاه کد مدولار و ابزارهای پیشرفته ای را ارائه می دهد که به توسعه دهندگان کمک می کند تا کامپایلرها را به راحتی بسازند. این کتاب مقدمه‌ای عملی برای LLVM ارائه می‌کند و به تدریج به شما کمک می‌کند تا در هنگام ساختن و کار با کامپایلرها به راحتی در سناریوهای پیچیده حرکت کنید.

شما با پیکربندی، ساخت و نصب کتابخانه ها، ابزارها و پروژه های خارجی LLVM شروع می کنید. در مرحله بعد، کتاب شما را با طراحی LLVM و نحوه عملکرد آن در عمل در هر مرحله کامپایلر LLVM آشنا می کند: frontend، optimizer و backend. با استفاده از زیرمجموعه ای از یک زبان برنامه نویسی واقعی به عنوان مثال، سپس یاد خواهید گرفت که چگونه یک فرانت اند توسعه دهید و LLVM IR تولید کنید، آن را به خط لوله بهینه سازی تحویل دهید و کد ماشین را از آن تولید کنید. فصل های بعدی به شما نشان می دهد که چگونه LLVM را با یک پاس جدید گسترش دهید و چگونه انتخاب دستورالعمل در LLVM کار می کند. شما همچنین روی مسائل کامپایل Just-in-Time و وضعیت فعلی پشتیبانی از کامپایل JIT که LLVM ارائه می دهد تمرکز خواهید کرد، قبل از اینکه در نهایت به درک چگونگی ایجاد یک Backend جدید برای LLVM بپردازید.

در پایان این کتاب LLVM، شما تجربه واقعی کار با چارچوب توسعه کامپایلر LLVM را با کمک مثال‌های عملی و تکه‌های کد منبع کسب خواهید کرد.

آنچه خواهید آموخت

  • چارچوب LLVM را پیکربندی، کامپایل و نصب کنید
  • نحوه سازماندهی منبع LLVM را درک کنید
  • کشف کنید که برای استفاده از LLVM در پروژه های خود چه کاری باید انجام دهید
  • نحوه ساختار یک کامپایلر را بررسی کنید و یک کامپایلر کوچک را پیاده سازی کنید
  • LLVM IR برای ساختارهای زبان مبدأ رایج ایجاد کنید
  • یک خط لوله بهینه سازی راه اندازی کنید و آن را برای نیازهای خود تنظیم کنید
  • LLVM را با پاس‌های تبدیل و ابزارسازی با صدای بلند گسترش دهید
  • دستورالعمل های ماشین جدید و یک Backend کامل را اضافه کنید

این کتاب برای چه کسی است

این کتاب برای توسعه دهندگان کامپایلر، علاقه مندان و مهندسانی است که به تازگی با LLVM آشنا شده اند و علاقه مند به یادگیری در مورد چارچوب LLVM هستند. همچنین برای مهندسان نرم افزار ++C که به دنبال استفاده از ابزارهای مبتنی بر کامپایلر برای تجزیه و تحلیل و بهبود کد هستند، و همچنین کاربران عادی کتابخانه های LLVM که می خواهند دانش بیشتری در مورد ضروریات LLVM کسب کنند، مفید است. تجربه سطح متوسط ​​با برنامه نویسی C++ برای درک موثرتر مفاهیم مطرح شده در این کتاب الزامی است.

فهرست مطالب

  1. نصب LLVM
  2. گشت و گذار در منبع LLVM
  3. ساختار یک کامپایلر
  4. تبدیل فایل منبع به درخت نحو انتزاعی
  5. مبانی تولید IR
  6. نسل IR برای ساختارهای زبانی سطح بالا
  7. نسل IR پیشرفته
  8. بهینه سازی IR
  9. انتخاب دستورالعمل
  10. تدوین JIT
  11. اشکال زدایی با استفاده از ابزارهای LLVM
  12. ایجاد Backend خود

 

نظرات کاربران درباره کتاب Learn LLVM 12: A beginner's guide to learning LLVM compiler tools and core libraries with C++

نظری در مورد این محصول توسط کاربران ارسال نگردیده است.
اولین نفری باشید که در مورد کتاب Learn LLVM 12: A beginner's guide to learning LLVM compiler tools and core libraries with C++ نظر می دهد.

ارسال نظر درباره کتاب Learn LLVM 12: A beginner's guide to learning LLVM compiler tools and core libraries with C++

لطفا توجه داشته باشید که ایمیل شما منتشر نخواهد شد.

برچسب های مرتبط با کتاب Learn LLVM 12: A beginner's guide to learning LLVM compiler tools and core libraries with C++

Compiler Design Programming Languages خرید اینترنتی کتابهای لاتین خرید اینترنتی کتابهای زبان اصلی کامپیوتر

بر اساس سلیقه شما...

  Publisher ‏ : ‎  Lakeview Research; Fifth Edition, Fifth ...
5,640,000 ریال
Product details Publisher ‏ : ‎  Pearson; 1st edition (Oc ...
6,480,000 ریال
Product details Publisher ‏ : ‎  Cambridge University Pre ...
2,960,000 ریال
  Product details Publisher ‏ : ‎  McGraw-Hill ...
5,800,000 ریال

codebazan

طراحی و اجرا: فروشگاه ساز سبدخرید