An introduction to IL2CPP internals

Almost in 2014, UNITY started to talk about the future of scripting. The new IL2CPP scripting backend promised to bring a highly-performant, highly-portable virtual machine to Unity. In January 2015, Unity shipped first platform using IL2CPP, iOS 64-bit. The Unity 5 release brought another platform, WebGL . Thanks to the input from our tremendous community of users, Unity have shipped many patch release updates for IL2CPP, steadily improving its compiler and runtime.

alt

As per Unity, They have no plans to stop improving IL2CPP, but they thought it might be a good idea to take a step back and tell users a little bit about how IL2CPP works from the inside out. Over the next few months, they planning to write about the following topics (and maybe others) in this IL2CPP Internals series of posts:

In order to make this series of posts possible, we’re going to discuss some details about the IL2CPP implementation that will surely change in the future. Hopefully we can still provide some useful and interesting information.