This session will briefly explore the internals of a compiler so that developers can understand the different subsystems at play when a compiler and linker turn your source code into machine code. We will discuss the differences between the high-level optimizer and the low-level optimizer and how they make decisions to transform your code into more efficient structures or leverage the ARM instruction set to make your code as tight as possible. Additionally, we will explore bad coding practices that make the compiler generate less efficient code and how to correct those practices to make code that is more human-readable and has the added bonus of helping the compiler to make better optimization decisions, thus resulting in the tightest code possible.
This session is a must-attend for developers of all stripes who want to learn how to make their code as compact as possible!
Download the PDF here.
Shawn Prestridge has served as IAR Systems' Senior Field Applications Engineer since 2008. Shawn's degree work includes a BS in Electrical Engineering, a BS in Mathematics, an MS in Electrical Engineering, an MS in Software Engineering and a PhD in Electrical Engineering specializing in Quantum Cryptography, all with Southern Methodist University in Dallas.