1 ---------------------------------------------------------------------------
4 -- This hand-written interface file allows you to bring into scope the
5 -- primitive operations and types that GHC knows about.
6 ---------------------------------------------------------------------------
8 __interface "core" GHCziPrim 1 0 where
17 -- Magical assert thingy
30 -- Concurrency primitives
36 blockAsyncExceptionszh
37 unblockAsyncExceptionszh
227 sameMutableByteArrayzh
241 indexStablePtrArrayzh
277 writeStablePtrArrayzh
288 indexWideCharOffAddrzh
294 indexStablePtrOffAddrzh
305 readWideCharOffAddrzh
311 readStablePtrOffAddrzh
322 writeWideCharOffAddrzh
326 writeForeignObjOffAddrzh
329 writeStablePtrOffAddrzh
340 indexCharOffForeignObjzh
341 indexWideCharOffForeignObjzh
342 indexIntOffForeignObjzh
343 indexWordOffForeignObjzh
344 indexAddrOffForeignObjzh
345 indexFloatOffForeignObjzh
346 indexDoubleOffForeignObjzh
347 indexStablePtrOffForeignObjzh
348 indexInt8OffForeignObjzh
349 indexInt16OffForeignObjzh
350 indexInt32OffForeignObjzh
351 indexInt64OffForeignObjzh
352 indexWord8OffForeignObjzh
353 indexWord16OffForeignObjzh
354 indexWord32OffForeignObjzh
355 indexWord64OffForeignObjzh
357 unsafeFreezzeArrayzh -- Note zz in the middle
358 unsafeFreezzeByteArrayzh -- Ditto
362 sizzeofByteArrayzh -- Ditto
363 sizzeofMutableByteArrayzh -- Ditto
395 reallyUnsafePtrEqualityzh
405 -- Export GHC.Err.error, so that others don't have to import PrelErr
406 __export GHCziErr error ;
409 --------------------------------------------------
410 instance {CCallable Charzh} = zdfCCallableCharzh;
411 instance {CCallable Doublezh} = zdfCCallableDoublezh;
412 instance {CCallable Floatzh} = zdfCCallableFloatzh;
413 instance {CCallable Intzh} = zdfCCallableIntzh;
414 instance {CCallable Addrzh} = zdfCCallableAddrzh;
415 instance {CCallable Int64zh} = zdfCCallableInt64zh;
416 instance {CCallable Word64zh} = zdfCCallableWord64zh;
417 instance {CCallable Wordzh} = zdfCCallableWordzh;
418 instance {CCallable ByteArrayzh} = zdfCCallableByteArrayzh;
419 instance __forall s => {CCallable (MutableByteArrayzh s)} = zdfCCallableMutableByteArrayzh;
420 instance {CCallable ForeignObjzh} = zdfCCallableForeignObjzh;
421 instance __forall s => {CCallable (StablePtrzh s)} = zdfCCallableStablePtrzh;
422 -- CCallable and CReturnable have kind (Type AnyBox) so that
423 -- things like Int# can be instances of CCallable.
424 1 class CCallable a :: ? ;
425 1 class CReturnable a :: ? ;
427 1 assert :: __forall a => GHCziBase.Bool -> a -> a ;
429 -- These guys don't really exist:
431 1 zdfCCallableCharzh :: {CCallable Charzh} ;
432 1 zdfCCallableDoublezh :: {CCallable Doublezh} ;
433 1 zdfCCallableFloatzh :: {CCallable Floatzh} ;
434 1 zdfCCallableIntzh :: {CCallable Intzh} ;
435 1 zdfCCallableAddrzh :: {CCallable Addrzh} ;
436 1 zdfCCallableInt64zh :: {CCallable Int64zh} ;
437 1 zdfCCallableWord64zh :: {CCallable Word64zh} ;
438 1 zdfCCallableWordzh :: {CCallable Wordzh} ;
439 1 zdfCCallableByteArrayzh :: {CCallable ByteArrayzh} ;
440 1 zdfCCallableMutableByteArrayzh :: __forall s => {CCallable (MutableByteArrayzh s)} ;
441 1 zdfCCallableForeignObjzh :: {CCallable ForeignObjzh} ;
442 1 zdfCCallableStablePtrzh :: __forall a => {CCallable (StablePtrzh a)} ;