Здравствуйте, σ, Вы писали:
σ>Умножать на 10 через LEA умеют все. https://godbolt.org/z/jKvjjbbM8
А причем тут умножение на 10. Он всю строчку: res = res * 10 + d — '0'; в два lea загнал.
P.S. Кстати, почему-то С# инкрементит на единицу, как-будто у него строка из char-ов состоит, а С++ на 2-ку. Если в С++ заменить std::wstring на std::string и компилировать gcc, то код идентичный C# получается