Отличие локальной и глобальной оптимизации общих подвыражений заключается в том, на каком уровне выполняется оптимизация:
- Локальная оптимизация выполняется в рамках одного базового блока. 1 Компилятор проверяет короткие разделы кода на распространённые вложенные выражения. 2
- Глобальная оптимизация выполняется в рамках целой функции. 1 Компилятор выполняет поиск общих вложенных выражений во всех функциях. 2