Я просматривал документ, в котором обсуждались методы оптимизации компилятора "точно в срок" (JIT) для Java. Одним из них была "инверсия цикла" . И в документе говорится:
Вы заменяете обычный цикл
while
контуромdo-while
. И Циклdo-while
устанавливается в предложенииif
. Эта замена приводит к еще двум прыжкам.
Как работает инверсия цикла и как она оптимизирует наш путь кода?
N.B.: Было бы здорово, если кто-нибудь сможет объяснить пример кода Java и как JIT оптимизирует его для собственного кода и почему он оптимален в современных процессорах.