[project @ 2001-12-20 16:12:09 by sewardj]
authorsewardj <unknown>
Thu, 20 Dec 2001 16:12:09 +0000 (16:12 +0000)
committersewardj <unknown>
Thu, 20 Dec 2001 16:12:09 +0000 (16:12 +0000)
Outline freeStablePtr, so NCG-generated code actually has something to call :)

Also remove the presumably-defunct splitStablePtr.

ghc/includes/Stable.h
ghc/rts/Stable.c

index 28227ec..12056f9 100644 (file)
@@ -1,5 +1,5 @@
 /* -----------------------------------------------------------------------------
- * $Id: Stable.h,v 1.11 2001/12/12 14:03:30 simonmar Exp $
+ * $Id: Stable.h,v 1.12 2001/12/20 16:12:09 sewardj Exp $
  *
  * (c) The GHC Team, 1998-2000
  *
@@ -42,31 +42,14 @@ extern DLL_IMPORT_RTS snEntry *stable_ptr_free;
 
 extern DLL_IMPORT_RTS unsigned int SPT_size;
 
+extern void freeStablePtr(StgStablePtr sp);
+
 extern inline StgPtr
 deRefStablePtr(StgStablePtr sp)
 {
     ASSERT(stable_ptr_table[(StgWord)sp].ref > 0);
     return stable_ptr_table[(StgWord)sp].addr;
 }
-    
-extern inline void
-freeStablePtr(StgStablePtr sp)
-{
-    StgWord sn = (StgWord)sp;
-    
-    ASSERT(sn < SPT_size
-          && stable_ptr_table[sn].addr != NULL
-          && stable_ptr_table[sn].ref > 0);
-    
-    stable_ptr_table[sn].ref --;
-}
-
-extern inline StgStablePtr
-splitStablePtr(StgStablePtr sp)
-{
-    stable_ptr_table[(StgWord)sp].ref ++;
-    return sp;
-}
 
 /* No deRefStableName, because the existence of a stable name doesn't
  * guarantee the existence of the object itself.
index f73b5ea..0232e18 100644 (file)
@@ -1,5 +1,5 @@
 /* -----------------------------------------------------------------------------
- * $Id: Stable.c,v 1.18 2001/11/21 10:09:16 simonmar Exp $
+ * $Id: Stable.c,v 1.19 2001/12/20 16:12:09 sewardj Exp $
  *
  * (c) The GHC Team, 1998-1999
  *
@@ -234,6 +234,18 @@ getStablePtr(StgPtr p)
 }
 
 void
+freeStablePtr(StgStablePtr sp)
+{
+    StgWord sn = (StgWord)sp;
+    
+    ASSERT(sn < SPT_size
+          && stable_ptr_table[sn].addr != NULL
+          && stable_ptr_table[sn].ref > 0);
+    
+    stable_ptr_table[sn].ref --;
+}
+
+void
 enlargeStablePtrTable(void)
 {
   nat old_SPT_size = SPT_size;