Книга: Системное программное обеспечение. Лабораторный практикум

Таблица 4.2. Пример работы алгоритма исключения лишних операций

Таблица 4.2. Пример работы алгоритма исключения лишних операций


Теперь, если исключить триады особого вида SAME(j,O), то в результате выполнения алгоритма получим следующую последовательность триад:

1: * (C, B)

2: + (D, ^1)

3::= (D, ^2)

4: + (D, ^1)

5::= (A, ^4)

6::= (C, ^4)

Обратите внимание, что в итоговой последовательности изменилась нумерация триад и номера в ссылках одних триад на другие. Если в компиляторе в качестве ссылок использовать не номера триад, а непосредственно указатели на них, то изменения ссылок в таком варианте не потребуется.

Алгоритм исключения лишних операций позволяет избежать повторного выполнения одних и тех же операций над одними и теми же операндами. В результате оптимизации по этому алгоритму сокращается и время выполнения, и объем кода результирующей программы.

Оглавление книги


Генерация: 1.236. Запросов К БД/Cache: 3 / 1
поделиться
Вверх Вниз