+#define constrTag(con) (get_itbl(con)->srt_bitmap)
+
+/* function info table -----------------------------------------------------*/
+
+#define \
+INFO_TABLE_FUN_GEN(info, /* info-table label */ \
+ entry, /* entry code label */ \
+ ptrs, nptrs, /* closure layout info */\
+ srt_, srt_off_, srt_bitmap_, /* SRT info */ \
+ fun_type_, arity_, bitmap_, slow_apply_, \
+ /* Function info */ \
+ type_, /* closure type */ \
+ info_class, entry_class, /* C storage classes */ \
+ prof_descr, prof_type) /* profiling info */ \
+ entry_class(entry); \
+ info_class const StgFunInfoTable info = { \
+ i : { \
+ layout : { payload : {ptrs,nptrs} }, \
+ PROF_INFO(prof_type, prof_descr) \
+ STD_INFO(srt_bitmap_,type_), \
+ INIT_ENTRY(entry) \
+ }, \
+ srt : (StgSRT *)((StgClosure **)srt_+srt_off_), \
+ arity : arity_, \
+ fun_type : fun_type_, \
+ bitmap : (W_)bitmap_, \
+ slow_apply : slow_apply_ \
+ }