You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The section for loops over variable iterables misinterprets the meaning of call qword [rax+rcx*8+0x60], this is how interface calls work in the code produced by Dart AOT compiler. We use an approach called "global dispatch table". In the sequence above rax would be a pointer to the dispatch table, rcx would be class id of the receiver object and 0x60 is a selector id (which determines which virtual method we are looking up).
Based on the call sequence I'd say this is an invocation of get current on the iterator object which is implicitly created by the for-in loops.
The text was updated successfully, but these errors were encountered:
Hi @mraleph and thank you so much for chiming in with such detailed and authentic information. I'm really thankful for this and what an honor.
That's great to know, I would love to update that text and write a better description. Do you have any suggestions as to how I should phrase that description? If not, I could send my suggestion for your review?
Feel free to send me the new phrasing for review - I will be happy to take a look. I don't use my computer so much so I can only guarantee to look at it on Monday
The section
for
loops over variable iterables misinterprets the meaning ofcall qword [rax+rcx*8+0x60]
, this is how interface calls work in the code produced by Dart AOT compiler. We use an approach called "global dispatch table". In the sequence aboverax
would be a pointer to the dispatch table,rcx
would be class id of the receiver object and0x60
is a selector id (which determines which virtual method we are looking up).Based on the call sequence I'd say this is an invocation of
get current
on the iterator object which is implicitly created by the for-in loops.The text was updated successfully, but these errors were encountered: