Added construction of phi congruence classes.
[libfirm] / ir / be / bephicongr_t.h
1 /**
2  * @author Daniel Grund
3  * @date 09.12.2004
4  */
5
6 #ifndef _BEPHICONGR_T_H
7 #define _BEPHICONGR_T_H
8
9 #include "irnode.h"
10
11 typedef struct _phi_info_t {
12         ir_node *phi_congr_class;
13         unsigned int phi_class_size;
14 } phi_info_t;
15
16 extern size_t phi_irn_data_offset;
17
18 #define get_irn_phi_info(irn) get_irn_data(irn, phi_info_t, phi_irn_data_offset)
19 #define get_phi_class(n)      get_irn_phi_info(n)->phi_congr_class
20 #define get_phi_class_size(n) get_irn_phi_info(n)->phi_class_size
21
22 void be_phi_congr_class_init(void);
23 void be_det_phi_congr_classes(void);
24
25 void det_phi_congr_class(ir_node *curr_phi);
26
27 #endif