LLVM Code Generation (Paperback)
Quentin Colombet
Venduto da CitiRetail, Stevenage, Regno Unito
Venditore AbeBooks dal 29 giugno 2022
Nuovi - Brossura
Condizione: Nuovo
Spedito da Regno Unito a U.S.A.
Quantità: 1 disponibili
Aggiungere al carrelloVenduto da CitiRetail, Stevenage, Regno Unito
Venditore AbeBooks dal 29 giugno 2022
Condizione: Nuovo
Quantità: 1 disponibili
Aggiungere al carrelloPaperback. Explore the world of code generation with the LLVM infrastructure, and learn how to extend existing backends or develop your ownGet With Your Book: PDF Copy, AI Assistant, and Next-Gen Reader FreeKey FeaturesUnderstand the steps involved in generating assembly code from LLVM IRLearn the key constructs needed to leverage LLVM for your hardware or backendStrengthen your understanding with targeted exercises and practical examples in every chapterBook DescriptionThe LLVM infrastructure is a popular compiler ecosystem widely used in the tech industry and academia. This technology is crucial for both experienced and aspiring compiler developers looking to make an impact in the field. Written by Quentin Colombet, a veteran LLVM contributor and architect of the GlobalISel framework, this book provides a primer on the main aspects of LLVM, with an emphasis on its backend infrastructure; that is, everything needed to transform the intermediate representation (IR) produced by frontends like Clang into assembly code and object files.Youll learn how to write an optimizing code generator for a toy backend in LLVM. The chapters will guide you step by step through building this backend while exploring key concepts, such as the ABI, cost model, and register allocation. Youll also find out how to express these concepts using LLVM's existing infrastructure and how established backends address these challenges. Furthermore, the book features code snippets that demonstrate the actual APIs.By the end of this book, youll have gained a deeper understanding of LLVM. The concepts presented are expected to remain stable across different LLVM versions, making this book a reliable quick reference guide for understanding LLVM.What you will learnUnderstand essential compiler concepts, such as SSA, dominance, and ABIBuild and extend LLVM backends for creating custom compiler featuresOptimize code by manipulating LLVM's Intermediate RepresentationContribute effectively to LLVM open-source projects and developmentDevelop debugging skills for LLVM optimizations and passesGrasp how encoding and (dis)assembling work in the context of compilersUtilize LLVM's TableGen DSL for creating custom compiler modelsWho this book is forThis book is for both beginners to LLVM and experienced LLVM developers. If youre new to LLVM, it offers a clear, approachable guide to compiler backends, starting with foundational concepts. For seasoned LLVM developers, it dives into less-documented areas such as TableGen, MachineIR, and MC, enabling you to solve complex problems and expand your expertise. Whether youre starting out or looking to deepen your knowledge, this book has something for you. LLVM is a key technology for building modern compilers. This item is printed on demand. Shipping may be from our UK warehouse or from our Australian or US warehouses, depending on stock availability.
Codice articolo 9781837637782
“If you're working in or interested in LLVM and code generation, this book should definitely be on your list. Highly recommended!” -Yacob (Kobi) Cohen Arazi, Software Engineer at NVIDIA.
“If you're passionate about compilers and eager to stay ahead in this dynamic field, I highly recommend giving this book a read.” -Arya Mazaheri, Co-founder of PanocularAI
“I think that this book will lower the access barrier to LLVM significantly and very quickly be on the desks of compiler engineers and students.” -Sebastian Hac, Professor (Compilers) at Saarland University
The LLVM infrastructure is a popular compiler ecosystem widely used in the tech industry and academia. This technology is crucial for both experienced and aspiring compiler developers looking to make an impact in the field. Written by Quentin Colombet, a veteran LLVM contributor and architect of the GlobalISel framework, this book provides a primer on the main aspects of LLVM, with an emphasis on its backend infrastructure; that is, everything needed to transform the intermediate representation (IR) produced by frontends like Clang into assembly code and object files.
You’ll learn how to write an optimizing code generator for a toy backend in LLVM. The chapters will guide you step by step through building this backend while exploring key concepts, such as the ABI, cost model, and register allocation. You’ll also find out how to express these concepts using LLVM's existing infrastructure and how established backends address these challenges.
By the end of this book, you’ll have gained a deeper understanding of LLVM. The concepts presented are expected to remain stable across different LLVM versions, making this book a reliable quick reference guide for understanding LLVM.
This book is for both beginners to LLVM and experienced LLVM developers. If you’re new to LLVM, it offers a clear, approachable guide to compiler backends, starting with foundational concepts. For seasoned LLVM developers, it dives into less-documented areas such as TableGen, MachineIR, and MC, enabling you to solve complex problems and expand your expertise. Whether you’re starting out or looking to deepen your knowledge, this book has something for you.
Quentin Colombet is a veteran LLVM contributor specializing in compiler backends. He is the architect of the new instruction selection framework (GlobalISel) and code owner of the LLVM register allocators. With over two decades of experience, he has worked on compiler backends for a variety of architectures, including GPU, CPU, microcontrollers, DSP, and ASICs. Quentin joined Apple in 2012 and has contributed to x86, Aarch64, and Apple GPU backends. He is passionate about helping newcomers onboard the LLVM infrastructure, having mentored interns and new hires over the years.
Le informazioni nella sezione "Su questo libro" possono far riferimento a edizioni diverse di questo titolo.
Visita la pagina della libreria
Orders can be returned within 30 days of receipt.
Se sei un consumatore, puoi esercitare il tuo diritto di recesso seguendo le istruzioni riportate di seguito. Per "consumatore" si intende qualsiasi persona fisica che agisca per fini che non rientrano nel quadro della sua attività commerciale, industriale, artigianale o professionale.
Informazioni relative al diritto di recesso
Diritto di recesso
Hai il diritto di recedere dal presente contratto, senza indicarne le ragioni, entro 14 giorni.
Il periodo di recesso scade dopo 14 giorni dal giorno in cui
tu acquisisci, o un terzo designato diverso dal vettore e da te acquisisce, il possesso fisico dell'ultimo bene o l'ultimo lotto o pezzo.
Per esercitare il diritto di recesso, sei tenuto a informare CitiRetail, ABC Books c/o International Logistics, Unit 2D Gatwick Gate Industrial Estate, RH11 0TG, Lowfield Heath, United Kingdom, 44 020 3290 3457, della tua decisione di recedere dal presente contratto tramite una dichiarazione esplicita (ad esempio lettera inviata per posta, fax o posta elettronica). A tal fine puoi utilizzare il modulo tipo di recesso, ma non e' obbligatorio. Puoi anche compilare e inviare elettronicamente il modulo tipo di recesso o qualsiasi altra esplicita dichiarazione sul nostro sito web, dalla sezione "Ordini" nel "Mio Account". Nel caso scegliessi questa opzione, ti trasmetteremo senza indugio una conferma di ricevimento su un supporto durevole (ad esempio per posta elettronica).
Per rispettare il termine di recesso, é sufficiente inviare la comunicazione relativa all'esercizio del diritto di recesso prima della scadenza del periodo di recesso.
Effetti del recesso
Se recedi dal presente contratto, ti saranno rimborsati tutti i pagamenti che hai effettuato a nostro favore, compresi i costi di consegna (ad eccezione dei costi supplementari derivanti dalla tua eventuale scelta di un tipo di consegna diverso dal tipo meno costoso di consegna standard da noi offerto). Potremo trattenere dal rimborso le somme derivanti da una diminuzione del valore del prodotto risultante da una tua non necessaria manipolazione.
I rimborsi verranno effettuati senza indebito ritardo e in ogni caso non oltre 14 giorni dal giorno in cui siamo stati informati della tua decisione di recedere dal presente contratto.
Detti rimborsi saranno effettuati utilizzando lo stesso mezzo di pagamento da te usato per la transazione iniziale, salvo che tu non abbia espressamente convenuto altrimenti; in ogni caso, non dovrai sostenere alcun costo quale conseguenza di tale rimborso. Il rimborso può essere sospeso fino al ricevimento dei beni oppure fino all'avvenuta dimostrazione da parte tua di aver rispedito i beni, se precedente.
Ti preghiamo di rispedire i beni o di consegnarli a CitiRetail, ABC Books c/o International Logistics, Unit 2D Gatwick Gate Industrial Estate, RH11 0TG, Lowfield Heath, United Kingdom, 44 020 3290 3457, senza indebiti ritardi e in ogni caso entro 14 giorni dal giorno in cui hai comunicato il tuo recesso dal presente contratto. Il termine è rispettato se rispedisci i beni prima della scadenza del periodo di 14 giorni. I costi diretti della restituzione dei beni saranno a tuo carico. Sei responsabile solo della diminuzione del valore dei beni risultante da una manipolazione del bene diversa da quella necessaria per stabilire la natura, le caratteristiche e il funzionamento dei beni.
Eccezioni al diritto di recesso
Il diritto di recesso non si applica in caso di:
Modulo di recesso tipo
(Compilare e restituire il presente modulo solo se si desidera recedere dal contratto)
Destinatario: (CitiRetail, ABC Books c/o International Logistics, Unit 2D Gatwick Gate Industrial Estate, RH11 0TG, Lowfield Heath, United Kingdom, 44 020 3290 3457)
Con la presente io/noi (*) notifichiamo il recesso dal mio/nostro (*) contratto di vendita dei seguenti beni/servizi (*)
Ordinato il (*) /ricevuto il (*)
Nome del/dei consumatore(i)
Indirizzo del/dei consumatore(i)
Firma del/dei consumatore(i) (solo se il presente modulo è notificato in versione cartacea)
Data
(*) Cancellare la dicitura inutile.
Please note that titles are dispatched from our US, Canadian or Australian warehouses. Delivery times specified in shipping terms. Orders ship within 2 business days. Delivery to your door then takes 7-14 days.
| Quantità dell?ordine | Da 7 a 60 giorni lavorativi | Da 7 a 14 giorni lavorativi |
|---|---|---|
| Primo articolo | EUR 42.87 | EUR 42.87 |
I tempi di consegna sono stabiliti dai venditori e variano in base al corriere e al paese. Gli ordini che devono attraversare una dogana possono subire ritardi e spetta agli acquirenti pagare eventuali tariffe o dazi associati. I venditori possono contattarti in merito ad addebiti aggiuntivi dovuti a eventuali maggiorazioni dei costi di spedizione dei tuoi articoli.