Three-Address Code — How to Create a Compiler part 3/5 — Converting AST into statement-based IR

In this tool-assisted education video series I create a compiler in C++ for a B-like programming language. In this episode the program code is converted from a tree structure into a list of statements — a tree-address code — much like assembler, but still a more abstract form. This is part of a multi-episode series. In the next video, we will optimize the IR code. Become a member: https://youtube.com/Bisqwit/join Downloads: — https://github.com/bisqwit/compiler_s... All the material associated with this episode can be downloaded here. Check out this book if you would like to learn more indepth about compilers and optimization (Amazon affiliate link): — https://www.amazon.com/gp/product/155... Acknowledgements: — Music: Remember Me :: () :: () () — Music: The Longest Journey :: () :: () () — Music: Famicom Tantei Club Part II: Ushiro ni Tatsu Shōjo :: Interrogation :: Kenji Yamamoto (converted into MIDI and played through OPL3 emulation through homebrew software) — Music: Star Ocean :: Town 2 :: Motoi Sakuraba (SPC-OPL3 conversion) — Music: The Longest Journey :: () :: () () — Music: Aryol :: Warmup :: Kyohei Sada (SPC-OPL3 conversion) — Music: Light Fantasy :: Field theme 2 :: TODO (SPC-OPL3 conversion) — SFX: Mostly from YouTube Audio Library. Some are recorded from video games like The Guardian Legend and Lunar Ball. My links: Twitter:   / realbisqwit   Liberapay: https://liberapay.com/Bisqwit Patreon:   / bisqwit   (Other options at https://bisqwit.iki.fi/donate.html) Twitch:   / realbisqwit   Homepage: https://iki.fi/bisqwit/ You can contribute subtitles: https://www.youtube.com/timedtext_vid... or to any of my videos: https://www.youtube.com/timedtext_cs_... #Bisqwit #Compiler #Tutorial