Расширенный базовый блок - Extended basic block
В вычисление, расширенный базовый блок[1][2] это собрание базовые блоки кода в программа с определенными свойствами, которые делают их легко поддающимися оптимизации. Много оптимизация компилятора работают на расширенных базовых блоках.
Определение
Расширенный базовый блок - это максимальный набор базовых блоков, в котором:
- только первый базовый блок может иметь несколько базовых блоков-предшественников;
- все другие базовые блоки имеют один единственный базовый блок-предшественник, который должен входить в набор базовых блоков.
Использует
Многие локальные оптимизации, которые работают с базовыми блоками, можно легко расширить для работы с расширенными базовыми блоками. Примером является исключение общего подвыражения который удаляет повторяющиеся выражения. В простейшем виде это локальная оптимизация, работающая только с базовыми блоками.[3]
Смотрите также
Примечания
- ^ Купер, Кейт Д. и Торчон, Линда, Разработка компилятора, Морган Кауфманн, 2004 г., ISBN 1-55860-699-8 стр. 405
- ^ Стивен С. Мучник Расширенный дизайн и реализация компилятора, Издательство Морган Кауфманн, 1997. ISBN 1-55860-320-4 стр. 175
- ^ «Архивная копия». Архивировано из оригинал на 2014-05-15. Получено 2012-07-04.CS1 maint: заархивированная копия как заголовок (связь)