LINUX.ORG.RU

История изменений

Исправление Legioner, (текущая версия) :

Смотри, я кажется предполагаю, о чём ты говоришь.

Я пишу mov r1, r7

При этом если дизассемблировать файл, то там будет adds r1, r7, #0

Т.е. вместо r1 := r7 он написал r1 := r7 + 0.

Для чего это делается, я пока не понял. Но в любом случае такая оптимизация ничего в поведении программы не меняет. Я спросил на Stack Overflow: Why MOV instruction is replaced by ADD instruction может кто ответит, мне это тоже интересно теперь.

Исходная версия Legioner, :

Смотри, я кажется предполагаю, о чём ты говоришь.

Я пишу mov r1, r7

При этом если дизассемблировать файл, то там будет adds r1, r7, #0

Т.е. вместо r1 := r7 он написал r1 := r7 + 0.

Для чего это делается, я пока не понял, нужно слишком глубоко копать - есть ли вообще такая инструкция и тд. Но в любом случае такая оптимизация ничего в поведении программы не меняет.