[Ad] New LLVM Book

Hi All,

I’m glad to tell you that my new book on Clang and LLVM Middle-End development has just been released.

“LLVM Techniques, Tips, and Best Practices Clang and Middle-End Libraries"

Here are some highlighted topics:

  • How to save computation resources when building LLVM
  • Using LIT in out-of-tree projects
  • Developing custom TableGen backend
  • Creating custom Clang toolchain
  • Clang AST plugin development
  • Writing LLVM Pass 101 — new PassManager edition
  • LLVM development utilities (e.g. Error handling and timer) in a nutshell
  • PGO and sanitizer development

I think many of these topics are useful for LLVM developers — especially those who work closely with upstream. It will be great if you can take a look and please don’t hesitate to share your feedbacks with me!

I would also like to give out some digital versions of this book — for free — to people here. To appreciate this community for always being nice and inclusive :slight_smile:
Please contact me (minyihh@uci.edu) if you’re interested.

Thank you!

This is great. Congratulations!


New tinder!


------------------ Original ------------------

Edited: My editor just contacted me that they prefer to give out free eBooks to people live in US first, due to some marketing concerns.
I sincerely apologize for this inconvenient. However, please don’t hesitate contact me if you’re interested in this book, I have some promotion code you can apply that doesn’t have such region restriction.

Thank you!

Hi Min!

Congrats, Min-Yih! Will definitely read it!:slight_smile:

Min-Yih Hsu via llvm-dev <llvm-dev@lists.llvm.org> 於 2021年4月28日 週三 上午9:41寫道:

Congratulations, I’ve only had time to skim it so far, but it looks like a really great book!


Great news, congratulations!


Hello Min,

thank you very much for writing this book! I ordered one yesterday as printed version. This is something that will greatly help people like me, I think, who are integrating functionality in many different parts of Clang + LLVM (we are creating a hardware accelerator which we target and implement OpenMP offloading support).

To have a better understanding of the overall architecture + design principles, as well as intended ways of integrating functionality, will surely save lots of time and lead to better quality of what is implemented.


Kai Plociennik

Nicely done, Min!

I’ll put your book on my to-read list!