+ } while(0)
+
+/**
+ * Merge the debug info due to ommon-subexpression elimination
+ */
+#define DBG_OPT_CSE(oldn, n) \
+ do { \
+ ir_node *ons[2]; \
+ ons[0] = oldn; \
+ ons[1] = n; \
+ hook_merge_nodes(&n, 1, ons, SIZ(ons), HOOK_OPT_CSE); \
+ __dbg_info_merge_sets(&n, 1, ons, SIZ(ons), dbg_opt_cse); \
+ } while(0)
+
+#define DBG_OPT_POLY_ALLOC(oldn, n) \
+ do { \
+ ir_node *ons[3]; \
+ ons[0] = oldn; \
+ ons[1] = skip_Proj(get_Sel_ptr(oldn)); \
+ ons[2] = n; \
+ hook_merge_nodes(&n, 1, ons, SIZ(ons), HOOK_OPT_POLY_CALL); \
+ __dbg_info_merge_sets(&n, 1, ons, SIZ(ons), dbg_rem_poly_call); \
+ } while(0)
+
+#define DBG_OPT_POLY(oldn, n) \
+ do { \
+ hook_merge_nodes(&n, 1, &oldn, 1, HOOK_OPT_POLY_CALL); \
+ __dbg_info_merge_pair(n, oldn, dbg_rem_poly_call); \
+ } while(0)
+
+#endif /* _IROPT_DBG_H_ */