Def-use chain
Use-def chain
Static Single Assignment(SSA)
=> improve def-use chains
=> each register has only one definition
Phi Function
Dominance Frontier
=> Dominator: 만약 어떤 노드 x가 Entry에서 y까지 가는 모든 path에 의해서 반드시 호출 되어지는 것이라면 그것을 우리는 y의 dominator x라고 부른다.
=> Strictly dominating: x가 y의 strictly dominator 라고 한다면, x는 y를 domiante 한다 하지만 x는 y가 아니라는 것이다.
=> Dominance Frontier: X 는 Y의 predecessor들중 한개를 dominate한다. 하지만, x는 y를 strictly dominate 하지 않아야 한다. 그냥 dominate라고 보면, 자기 자신도 포함대므로, x=y를 허용하게 된다. 그러면 정의가 꼬인다.
출처: https://goodtogreate.tistory.com/entry/UseDef-Analysis-and-SSA-Static-Single-Assignment [GOOD to GREAT]
'Compiler' 카테고리의 다른 글
Scheduling (0) | 2021.11.05 |
---|---|
Loop Optimization (0) | 2021.11.04 |
Register Allocation (0) | 2021.11.04 |
Alias Analysis (0) | 2021.11.04 |
Dataflow Analysis (0) | 2021.11.03 |