Curiosity: Why does Expression when compiled run faster than a minimal DynamicMethod?
The method created via DynamicMethod goes through two thunks, while the method created via Expression<> doesn’t go through any. Here’s how it works. Here’s the calling sequence for invoking fn(0, 1) in the Time method (I hard-coded the arguments to 0 and 1 for ease of debugging): 00cc032c 6a01 push 1 // 1 argument 00cc032e … Read more