Announcing the 2025 EuroLLVM Program

I’m pleased to announce the 2025 EuroLLVM Program!

Also, just a friendly reminder that early bird registration ends on March 12th. Register here:

Keynotes

  • Deep Dive into the MLIR to LLVM IR Translation Mechanism - Alex Zinenko
  • A Recipe for Eliminating Entire Classes of Memory Safety Vulnerabilities in C and C++ - Devin Coughlin

Techical Talks

  • LLVM IR – Past, Present and Future - Nikita Popov
  • How to bring your Neural Network into Upstream MLIR Dialects - Maximilian Bartel
  • Canonicalization in MLIR - Uniqueness and Equivalence - Javed Absar
  • TK Wave: A Symbolic Python/MLIR DSL and Compiler for High Performance Machine Learning - Ivan Butygin
  • Bringing NVIDIA Blackwell support to LLVM and MLIR - Guray Ozen, Durgadoss Ramanathan, Pradeep Kumar
  • Pass Plugins: Past, Present and Future - Stefan Gränitz
  • berlin: symbol lookup error: libeurollvm.so.2025: undefined symbol: _Z11abiBreakingChange - Domján Dániel
  • C++ interoperability with memory-safe languages - Gabor Horvath
  • Safely nullable: preventing null dereferences in C++ at scale with gradual typing - Dmytro Hrybenko
  • Bridging LLVM and SPIR-V for Heterogeneous Computing - Vyacheslav Levytskyy, Michal Paszkowski
  • llvmlite: A python gym for LLVM - Yashwant Singh
  • Instrumentor: Easily Customizable Code Instrumentation - Johannes Doerfert, Kevin Sala
  • Advances in Function Merging and Symbolication - Alex Borcan, Kyungwoo Lee
  • Faster Compilation — Improvements in LLVM 20 and Beyond - Alexis Engelke
  • Parallelizing the LLVM Pipeline with MCLink - Weiwei Chen
  • Making LoopAccessAnalysis more precise - Ramkumar Ramachandra
  • Devise Loop Distribution with Scalar Expansion for Enhancing Auto-Vectorization in LLVM - Hung-Ming Lai, Jenq-Kuen Lee
  • Accidental Dataflow Analysis: Extending the RISC-V VL Optimizer - Luke Lau
  • How to trust your peephole rewrites: automatically verifying them for arbitrary width! - Siddharth Bhat
  • Debugging Regressions: Interactive Differential Debugging - Vipul Cariappa
  • Solving Compiler Puzzles: Debug Methods in MLIR - Christopher McGirr
  • Integration of LLVM-JIT Compiler with Interpreter and manually prepared machine code snippets - Marc Auberer, Lukas Rapp
  • Function multi-versioning: compiler aided function specialization with runtime dispatch - Alexandros Lamprineas

Tutorials

  • Adopting -fbounds-safety in practice - Henrik Olsson, Patryk Stefanski
  • An Introduction to Tensor Tiling in MLIR - Kunwar Grover, Mahesh Ravishankar
  • How to reduce an llvm bug - Matthew Arsenault

Student Talks

  • Clang Static Analyzer: Supporting Multithreaded Code - Isaac Nudelman
  • Integrating XRay into the HPC Tool Ecosystem - Sebastian Kreutzer
  • Automatic LLVM compiler backend generation with OpenVADL - Kevin Per
  • Pattern Matching, Transformation and Code Replacement using LLVM’s Polly library - Benedikt Huber
    How to Write a Scalable Compiler for an Error-Prone Quantum Computer - Kim Worrall
    Optimizing FDTD Solvers for Electromagnetics Using MLIR Across Multiple Hardware Platforms - Yifei He

Lightning Talks

  • What is LLDB-DAP? - Jonas Devlieghere
  • LLDB Statusline - Jonas Devlieghere
  • Beyond Pattern-based Optimization: What Can LLM Reshape Auto-vectorization? - Long Cheng
  • Why add an IR Reader to the llvm-debuginfo-analyzer tool? - Carlos Alberto Enciso
  • To be OR NOT to be - Piotr Fusik
  • Accidentally quadratic in compiler-rt/asan - Artem Pianykh
  • Dialects as a Dialect: Bringing native C++ registration to IRDL - Ivan Ho
  • Autocheck – Clang-Based Checker for Automotive: Status and Issues - Djordje Todorovic
  • Defining and verifying MLIR operations with constraints - Alex Rice
  • sd-visualiser: Interactive graph visualisation for SSA-based IRs - Alex Rice

Quick Talks

  • Leveraging “nsw” in Flang’s LLVM IR Generation for Vectorization - Yusuke Minato
  • Leveraging LLVM for Instruction Cache Prefetching on Simple Architectures - Oriel Avraham
  • #embed in clang: one directive to embed them all - Mariya Podchishchaeva
  • LLVM_ENABLE_RUNTIMES=flang-rt - Michael Kruse
  • LLDB support for Propeller optimized code - Pavel Labath
  • 1:N Dialect Conversion in MLIR - Matthias Springer
  • Small Changes, Big Impact: GitHub Workflows for the LLVM Project - David Spickett
  • Enhancing Tile & Fuse Transformation in MLIR with a Planning Interface - Aviad Cohen
  • LTO/BOLT Optimised Clang/LLD AArch64 toolchain - Elvina Yakubova
  • MLIR Tensor Compiler Charter Update - Renato Golin
  • Accurate Runtime Performance Estimation for Predictably Training ML Guided Register Eviction Policies - Aiden Grossman
  • The New Premerge System - Lucile Rose Nihlen, Aiden Grossman
  • Measuring the health of the LLVM community - Jeremy Bennett
  • Exponentially Faster Cache Performance Prediction for Neural Networks - Arjun Pitchanathan
  • Lessons learned from leveling up RISC-V LLVM testing - Alex Bradbury

Posters

  • Code-generation of highly efficient finite element operations using the MLIR compiler infrastructure - Edward Erasmie-Jones
  • LLVM Support for Sub-FP8 Quantization with RISC-V Extensions for Machine Learning Models - Kathryn Chapman, Fu-Jian Shen
  • Towards Multi-Level Arithmetic Optimizations - Louis Ledoux, Florent de Dinechin, Luc Forget
  • CuSan: a data race detector for CUDA based on ThreadSanitizer - Alexander Hück

A huge thank you to our Program Committee Chair, Johannes Doerfert, and the entire program committee!

  • Jakub Kuderski
  • Diana Picus
  • Kunwar
  • Jonas Devlieghere
  • Florian Hahn
  • Adrian Prantl
  • Gabor Horvath
  • David Spickett
  • Shun Kamatsuka
  • Mircea Trofin
  • Hans Wennborg
  • Petr Hosek
  • Paul Kirth
  • Pablo Martinez
  • Kai Nacke
  • Renato Golin
  • Oren Benita-Ben-Simhon
  • Lorenzo Chelini
  • Guray Ozen
  • Stephan Herhut
  • Matthias Springer
  • Javed absar
  • Anders Waldenborg
  • Alexey Bataev
  • Alexis Engelke
9 Likes