[project @ 1999-04-23 13:54:12 by simonm]
authorsimonm <unknown>
Fri, 23 Apr 1999 13:54:12 +0000 (13:54 +0000)
committersimonm <unknown>
Fri, 23 Apr 1999 13:54:12 +0000 (13:54 +0000)
dataToTag# support.

ghc/includes/ClosureMacros.h
ghc/includes/PrimOps.h

index c44b953..fca822f 100644 (file)
@@ -1,5 +1,5 @@
 /* ----------------------------------------------------------------------------
- * $Id: ClosureMacros.h,v 1.10 1999/03/23 08:34:07 sof Exp $
+ * $Id: ClosureMacros.h,v 1.11 1999/04/23 13:54:12 simonm Exp $
  *
  * (c) The GHC Team, 1998-1999
  *
@@ -73,7 +73,7 @@ static __inline__ StgFunPtr get_entry(const StgInfoTable *itbl) {
 #define INIT_ENTRY(e)    code : {}
 #define GET_ENTRY(c)     stgCast(StgFunPtr,((c)->header.info))
 #define ENTRY_CODE(info) (info)
-#define INFO_PTR_TO_STRUCT(info) (stgCast(StgInfoTable*,info) - 1)
+#define INFO_PTR_TO_STRUCT(info) ((StgInfoTable *)(info) - 1)
 #define get_itbl(c)      (stgCast(StgInfoTable*,(c)->header.info) -1)
 static __inline__ StgFunPtr get_entry(const StgInfoTable *itbl) {
     return stgCast(StgFunPtr,itbl+1);
index 6030597..a18ab8e 100644 (file)
@@ -1,5 +1,5 @@
 /* -----------------------------------------------------------------------------
- * $Id: PrimOps.h,v 1.24 1999/03/16 13:20:09 simonm Exp $
+ * $Id: PrimOps.h,v 1.25 1999/04/23 13:54:12 simonm Exp $
  *
  * (c) The GHC Team, 1998-1999
  *
@@ -761,6 +761,13 @@ EF_(makeForeignObjzh_fast);
 #endif
 
 /* -----------------------------------------------------------------------------
+   Constructor tags
+   -------------------------------------------------------------------------- */
+
+#define dataToTagzh(r,a)  r=(GET_TAG(((StgClosure *)a)->header.info))
+/*  tagToEnum# is handled directly by the code generator. */
+
+/* -----------------------------------------------------------------------------
    Signal processing.  Not really primops, but called directly from
    Haskell. 
    -------------------------------------------------------------------------- */