Swiss LLVM Compiler and Code Generation Social


Details
What:
Swiss LLVM Compiler and Code Generation Social! Talk about Compilers, Code Generation, and Programming Languages.
Tech Talk: Debugging Debug Information -
Francesco Zappa Nardelli
The spectacular results achieved by computer science in the recent years rely on hidden, obscure, and badly specified components that lurk at the very heart of our computing infrastructure. Consider debugging information. Debugging information are obviously relied upon by debuggers and play a key role in the in the implementation of program analysis tools, but, more surprisingly, debugging informations can be relied upon by the runtime of high-level programming languages (e.g. to unwind the stack and implement C++ exceptions). Unfortunately debugging information themselves can be pervaded by subtle bugs, and nobody ever debugs debug information. In this short talk I will describe how to perform validation of the DWARF stack unwinding debug tables, and report on a few issues on the tables generated with Clang.
Where:
ETH Zurich, CAB, E72
Floorplan (http://www.rauminfo.ethz.ch/Rauminfo/grundrissplan.gif?region=Z&areal=Z&gebaeude=CAB&geschoss=E&raumNr=72)
The building closes at 19:00. If you are late, you need to write us to be let in.
What is LLVM:
LLVM (http://www.llvm.org/) is an open source project that provides a collection of modular compiler and toolchain technologies. It is centered around a modern SSA-based compiler around which an entire ecosystem of compiler technology was developed. Most well know is the clang C++ compiler, which is e.g. used to deploy iOS. Beyond this a diverse set of projects is developed under the umbrella of LLVM. These include code generators and assemblers for various interesting architectures, a jit compiler, a debugger, run-time libraries (C++ Standard Library, OpenMP, Opencl library), program sanity checkers, and many more. LLVM has itself grown out of a research project more than 10 years ago and is the base of many exciting research projects today:
https://scholar.google.ch/scholar?cites=7792455789532680075&as_sdt=2005&sciodt=0,5&hl=de
Contact:
Tobias Grosser (https://www.inf.ethz.ch/personal/tgrosser/)

Swiss LLVM Compiler and Code Generation Social