GC: first working version of boehm gc. working with: 8af66bf9d36f75558ec49e0461099d5f...
[mate.git] / Mate / Strings.hs
index 05f6c50f8aeb7eee497f9d3d1177f6eb7319e819..e5f0fd99f21de81003b2f91b5bd43368f11e4f19 100644 (file)
@@ -57,7 +57,7 @@ allocateJavaString str = do
   -- build object layout
   fsize <- getObjectSize "java/lang/String"
   printfStr "string: fsize: %d (should be 4 * 5)\n" fsize
-  tblptr <- mallocObject $ fromIntegral fsize
+  tblptr <- mallocObjectVM $ fromIntegral fsize
   let ptr = intPtrToPtr (fromIntegral tblptr) :: Ptr CPtrdiff
   mtbl <- getMethodTable "java/lang/String"
   poke ptr $ fromIntegral mtbl
@@ -65,7 +65,7 @@ allocateJavaString str = do
   -- build array layout
   let strlen = fromIntegral $ B.length str
   -- (+1) for \0, (+4) for length
-  newstr <- mallocString (strlen + 5)
+  newstr <- mallocStringVM (strlen + 5)
   BI.memset newstr 0 (fromIntegral $ strlen + 5)
   arr <- newArray ((map fromIntegral $ B.unpack str) :: [Word8])
   copyBytes (plusPtr newstr 4) arr strlen