Разработка компиляторов

       

Анализ потока управления


В задачу анализа потока управления (control flow analysis) входит определение свойств передачи управления между операторами программы. Проверка многих свойств этого вида необходима для решения задач оптимизации, преобразований программ и т.д.

При решении этих задач обычно используется формальная графовая модель (т.е. анализ производится над графом потока управления), а сами задачи формулируются в теоретико-графовой форме.

Основное употребление анализа потока управления в оптимизации - это фрагментация, то есть представление графа потока управления в виде совокупности фрагментов определенного вида. Как было показано в лекции 11, такое представление необходимо для применения практически всех оптимизирующих преобразований.

Ниже будут рассмотрены основные понятия в области анализа потока управления, приведены определения некоторых фрагментов и алгоритмы их распознавания.



Содержание раздела