Allow "INLINEABLE" as a synonym
[ghc-hetmet.git] / rts / PrimOps.cmm
index 029b2b7..1cc9544 100644 (file)
@@ -109,6 +109,11 @@ stg_newAlignedPinnedByteArrayzh
     n = R1;
     alignment = R2;
 
+    /* we always supply at least word-aligned memory, so there's no
+       need to allow extra space for alignment if the requirement is less
+       than a word.  This also prevents mischief with alignment == 0. */
+    if (alignment <= SIZEOF_W) { alignment = 1; }
+
     bytes = n;
 
     /* payload_words is what we will tell the profiler we had to allocate */
@@ -2020,6 +2025,17 @@ stg_getSparkzh
 #endif
 }
 
+stg_numSparkszh
+{
+  W_ n;
+#ifdef THREADED_RTS
+  (n) = foreign "C" dequeElements(Capability_sparks(MyCapability()));
+#else
+  n = 0;
+#endif
+  RET_N(n);
+}
+
 stg_traceEventzh
 {
    W_ msg;