Базовый блок
Базовый блок (basic block, BB) — в программировании и теории компиляторов[1] — понятие, обозначающее последовательность инструкций или кода, имеющую одну точку входа (только первая инструкция в последовательности может быть назначением инструкции передачи управления), одну точку выхода и не содержащую инструкций передачи управления ранее точки выхода.
Таким образом, базовый блок — это последовательность инструкций, каждая из которых исполняется тогда и только тогда, когда исполняется первая инструкция из последовательности[2].
На начало базового блока может указывать одновременно несколько инструкций перехода, конец же блока — либо инструкция передачи управления (jump), либо инструкция, предшествующая переходу.
Базовые блоки являются основной единицей кода, над которой проводятся оптимизации компилятором. Также они являются вершинами (или узлами) в графе потока управления.
См. также
[править | править код]Примечания
[править | править код]- ↑ «Control Flow Analysis» by Frances E. Allen . Дата обращения: 2 июня 2010. Архивировано 26 мая 2020 года.
- ↑ «Global Common Subexpression Elimination» by John Cocke
Ссылки
[править | править код]int main()
{
printf("Hi");
return 0;
}
| Это заготовка статьи о программировании. Помогите Википедии, дополнив её. |
В статье не хватает ссылок на источники (см. рекомендации по поиску). |