Я слышал, как кто-то однажды сказал, что компиляторы часто перемещают условия цикла в конец цикла. То есть такие циклы:
while (condition) {
...
}
заменяются на:
if (condition) {
do {
...
} while (condition);
}
относительно машинно-независимой оптимизации, почему последняя предпочтительнее?