SSA_NAME структура отвечающая за ssa-переменную VAR_NAME -тип кторый о

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/*
SSA_NAME - структура, отвечающая за ssa-переменную
VAR_NAME -тип, кторый отвечает за имя переменной
PHI - тип, отвечающий за ф-функцию
EDGE - тип, отвечающий за ребро ББ
ASSIGN - тип, отвечающий за единственное присваивание
B_BLOCK - тип, отвечающий за базовый блок
*/
//Модификация к SSA-именам в инструкциях
bool updateSSA_Name(SSA_NAME){}
//Доступ к SSA-именам в инструкциях
SSA_NAME accessSSA_Name(VAR_NAME){}
//Доступ/модификация (к) единственному(ого) присваиванию(ия)
ASSIGN accessAssignment(SSA_NAME){}
bool updateAssignment(SSA_NAME){}
//Доступ/модификация ф-функций для ББ
PHI accessPhi(B_BLOCK){}
bool updatePhi(B_BLOCK, PHI){}
//Доступ к входящим рёбрам ББ для данной ф-функции
EDGE accessSSA_Edge(PHI){}
//Доступ/модификация SSA-имени (доступ к базовому именеи от ssa-индекса)
VAR_NAME accessSSA_RealName(SSA_NAME){}
bool accessSSA_RealName(SSA_NAME, VAR_NAME){}