Once translated to the LLVM IR, a program is subject to a variety of target-independent code optimizations. The optimizations can work, for example, on one function at a time or on one module at a time. The latter is used when the optimizations are interprocedural. To intensify the impact of the interprocedural optimizations, the user can use the llvm-link
tool to link several LLVM modules together into a single one. This enables optimizations to work on a larger scope; these are sometimes called link-time optimizations because they are only possible in a compiler that optimizes beyond the translation-unit boundary. An LLVM user has access to all of these optimizations and can individually invoke them using the opt
tool.
Getting started with LLVM core libraries
Getting started with LLVM core libraries
Overview of this book
Table of Contents (17 chapters)
Getting Started with LLVM Core Libraries
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Preface
Free Chapter
Build and Install LLVM
External Projects
Tools and Design
The Frontend
The LLVM Intermediate Representation
The Backend
The Just-in-Time Compiler
Cross-platform Compilation
The Clang Static Analyzer
Clang Tools with LibTooling
Index
Customer Reviews