Он вычисляется во время компиляции, по крайней мере, с использованием Xcode для iOS. Эта функция:
float test() {
float x = 109.0f*768.0f/320.0f;
return x;
}
соответствует этим трем инструкциям:
movw r0, #52429
movt r0, #17282
bx lr
Вычисление значения во время компиляции не требуется стандартом C. Фактически, если вы установите прагму FENV_ACCESS
, есть случаи, когда запрещено вычислять ее во время компиляции. Включение FENV_ACCESS
не повлияло на сгенерированные инструкции в этом тестовом примере.