Watch C# source code transform from IL to native machine code at runtime.
public int Add(int a, int b) { return a + b; }
.method public int32 Add(int32 a, int32 b) { .maxstack 2 ldarg.1 // push a ldarg.2 // push b add // a + b ret // return result }
Add: mov eax, ecx ; a -> eax add eax, edx ; eax += b ret ; return eax