Skip to content

LLVM Social #31 - A Pass, a Plugin and a Python Hack

Photo of Stefan Gränitz
Hosted By
Stefan G.
LLVM Social #31 - A Pass, a Plugin and a Python Hack

Details

For the last meetup of the year we don't have a special guest, but we continue our series of hands-on Python-related topics. This time, Stefan Gränitz will lead the discussion and dive into LLVM pass plugins.

LLVM’s New Pass Manager supports loading custom IR transformations as plugins from shared libraries. It enables flexible and reusable optimizations without modifying the compiler itself and it's supported by a number of frontends (clang, rustc, swiftc?). There are plugins for automatic differentiation, polyhedral optimizations and binary obfuscation.

Let's write a simple LLVM IR pass, wrap it in a plugin and run it in Clang. We will then see why ABI compatibility matters and explore the challenges with LLVM. Finally, we look into a potential solution: Maybe we can build a generic plugin and expose a Python API for quick prototyping. For those who joined the llvmlite meetup last time, this might sound familiar :)

Small snacks and drinks will be available. Once discussions fade into casual conversation, we may go for drinks to c-base or just stay upstairs. There is always space for outside topics and discussions. If you have specific questions, please bring them. Looking forward to meeting everyone again!

Photo of LLVM Social Berlin group
LLVM Social Berlin
See more events
echtzeit.dev Office
Rungestr. 20, Aufgang 5, 2. OG · Berlin, al