Есть ли способ отключить постоянную оптимизацию сворачивания в GHC?
Мне нужно скомпилировать некоторый исходный код на Haskell с оптимизацией GHC -O1, но с отключенной постоянной оптимизацией сворачивания. Однако я не смог найти флаг оптимизации для переключения константного свертывания в руководстве по GHC. Возможно ли это отключить, а также сохранить другие оптимизации?
1 ответ
Если вы компилируете с -fno-enable-rewrite-rules
, это отключает постоянное сворачивание. Кроме того, IMO, если вы передадите константы в функцию NOINLINE и используете их внутри функции, у вас есть хороший шанс, что она не будет свернута.