summaryrefslogtreecommitdiff
path: root/includes/Cmm.h
diff options
context:
space:
mode:
authorSimon Marlow <marlowsd@gmail.com>2012-10-09 09:23:50 +0100
committerSimon Marlow <marlowsd@gmail.com>2012-10-09 11:13:58 +0100
commitcc2a4d57692ccd40bd552cccbcec15b7d5c97746 (patch)
treedc93a00b87657b1ba0367392f1497708145a7625 /includes/Cmm.h
parent70765e86772010d09f42ba844fe9f73b17a711c7 (diff)
downloadhaskell-cc2a4d57692ccd40bd552cccbcec15b7d5c97746.tar.gz
profiling fixes
Diffstat (limited to 'includes/Cmm.h')
-rw-r--r--includes/Cmm.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/includes/Cmm.h b/includes/Cmm.h
index afe08a26a3..805806b309 100644
--- a/includes/Cmm.h
+++ b/includes/Cmm.h
@@ -247,8 +247,8 @@
// because LDV profiling relies on entering closures to mark them as
// "used".
-#define LOAD_INFO \
- info = %INFO_PTR(UNTAG(P1));
+#define LOAD_INFO(ret,x) \
+ info = %INFO_PTR(UNTAG(x));
#define MAYBE_UNTAG(x) UNTAG(x);
@@ -346,11 +346,13 @@
------------------------------------------------------------------------- */
#if defined(PROFILING)
-#define PROF_HDR_FIELDS(w_) \
- w_ prof_hdr_1, \
- w_ prof_hdr_2,
+#define PROF_HDR_FIELDS(w_) PROF_HDR_FIELDS_(w_,prof_hdr_1,prof_hdr_2)
+#define PROF_HDR_FIELDS_(w_,hdr1,hdr2) \
+ w_ hdr1, \
+ w_ hdr2,
#else
#define PROF_HDR_FIELDS(w_) /* nothing */
+#define PROF_HDR_FIELDS_(w_,hdr1,hdr2) /* nothing */
#endif
/* -------------------------------------------------------------------------