Getting Started with LLVM Core Libraries /

Get to grips with LLVM essentials and use the core libraries to build advanced tools In Detail LLVM is a bleeding edge compiler technology framework. Easily extendable and designed as a multitude of libraries, LLVM provides a smooth experience for compiler newcomers and reduces the steep learning cu...

Full description

Bibliographic Details
Main Authors: Lopes, Bruno (Author), Auler, Rafael (Author)
Corporate Author: Safari, an O'Reilly Media Company
Format: eBook
Language:English
Published: Packt Publishing, 2014.
Edition:1st edition.
Subjects:
Online Access:Connect to this electronic resource
Description
Summary:Get to grips with LLVM essentials and use the core libraries to build advanced tools In Detail LLVM is a bleeding edge compiler technology framework. Easily extendable and designed as a multitude of libraries, LLVM provides a smooth experience for compiler newcomers and reduces the steep learning curve often associated with compiler development. To start, this book will show you how to configure, build, and install LLVM libraries, tools, and external projects. Next, you will be introduced to LLVM design and how it works in practice throughout each LLVM compiler stage: frontend, IR, backend, the JIT engine, cross-compilation capabilities, and the plugin interface. With multiple hands-on examples and source code snippets, Getting Started with LLVM Core Libraries ensures a solid and smooth first step into the LLVM compiler development environment. What You Will Learn Configure, build, and install extra LLVM open source projects including Clang tools, static analyzer, Compiler-RT, LLDB, DragonEgg, libc++, and LLVM test-suite Understand the LLVM library design and interaction between libraries and standalone tools Increase your knowledge of source code processing stages by learning how the Clang frontend uses a lexer, parser, and syntax analysis Manipulate, generate, and play with LLVM IR files while writing custom IR analyses and transformation passes Write tools to use LLVM Just-in-Time (JIT) compilation capabilities Find bugs and improve your code by using the static analyzer Design source code analysis and transformation tools using LibClang, LibTooling, and the Clang plugin interface
Item Description:Electronic resource.
Physical Description:1 online resource (314 pages)
Format:Mode of access: World Wide Web.