Nedalo mi to, a otestoval jsem si testovací program na svém kompu běžným linuxovým g++ kompilerem (bez jakýchkoliv úprav typu vložení klíčových slov "registry" apod.):
Bez optimalizace, tj. s g++ -O0: time = 3,225 s
S nejnižší optimalizací, tj. s g++ -O1: time = 0,564 s
S vyšší optimalizací, tj. s g++ -O2: time = 0,003 s
Je zde krásně vidět, že již základní optimalizce "urychlí" C++ program cca 6x, čímž se minimálně vyrovná C#. Ještě lepší optimalizace vyhodí (naprosto správně) celou smyčku pryč jakožto zbytečnou.
Dále je z disassembleru vidět, že další urychlení je prakticky nemožné, celá smyčka jsou pouhé dvě instrukce (dekrementace registru a podmíněný skok při nenule s blízkým offsetem):
000000000040072d: sub $0x1,%eax
0000000000400730: jne 0x40072d <main+9>
Nejde o nic jiného, než že zjevně C# kompiler optimalizuje tento program podobně jako g++ s volbou O1. Možná je tak nastaven defaultně, možná ne, to je celkem jedno. Moje teze, že "nic" není rychlejší než C/C++ tímto pokusem zůstala nezpochybněna. Naopak doměnka, že C# je rychlejší, byla tímto vyvrácena.