Software Unscripted cover image

Software Unscripted

Disassembling Languages with Matt Godbolt

Oct 22, 2023
Matt Godbolt, author of godbolt.org Compiler Explorer, discusses disassembling language designs including reference counting optimizations, destructors and unwinding, and defending the decision of NaN != NaN. They also explore the benefits of Dwarf Debug Format, stack unwinding, memory allocation strategies, and the logic behind NaN in programming. Additionally, they touch on reference counting implementation and advantages of atomic instructions for thread sharing.
01:07:01

Episode guests

Podcast summary created with Snipd AI

Quick takeaways

  • Compiler Explorer disassembles and maps compiled programs in various languages, providing mappings between high-level code and assembly instructions.
  • The podcast explores language design optimizations, including reference counting, destructors, unwinding, and NaN design decisions.

Deep dives

The Compiler Explorer Tool for Disassembling Programs

The podcast episode discusses the Godbolt.org compiler explorer tool, which disassembles and maps compiled programs in various languages. It allows users to input code in a high-level programming language and view the corresponding assembly code. The tool also provides mappings between functions, individual lines of code, statements, and assembly instructions. This mapping is made possible through the compiler's output formats and debug information, which specify the correspondence between source code lines and assembly instructions.

Remember Everything You Learn from Podcasts

Save insights instantly, chat with episodes, and build lasting knowledge - all powered by AI.
App store bannerPlay store banner