Добро пожаловать в отладку в мире оптимизации.Это артефакт того, как компилятор реализовал ваш код, и он не должен быть реальной проблемой.(если вы не получили неправильный ответ)
Как вы указали, xauForwardValuta
никогда не переназначается и даже не используется снова после первой строки.Таким образом, компилятор видит, что регистр, в котором он хранится, может быть использован повторно.И он повторно использует его для промежуточного вычисления xauForwardValuta * -1
.
. Если вы отлаживаете оптимизированный код, вы часто будете видеть, как значения изменяются или даже исчезают, поскольку единственный регистр, который их содержал, повторно используется для чего-то другого.