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 "rts" PrelGHC 1 0 where
17 -- Magical assert thingy
30 -- Concurrency primitives
36 blockAsyncExceptionszh
37 unblockAsyncExceptionszh
220 sameMutableByteArrayzh
232 indexStablePtrArrayzh
249 indexStablePtrOffAddrzh
265 readStablePtrOffAddrzh
279 writeForeignObjOffAddrzh
282 writeStablePtrOffAddrzh
292 -- indexOffForeignObjzh
293 indexCharOffForeignObjzh
294 indexIntOffForeignObjzh
295 indexWordOffForeignObjzh
296 indexAddrOffForeignObjzh
297 indexFloatOffForeignObjzh
298 indexDoubleOffForeignObjzh
299 indexStablePtrOffForeignObjzh
300 indexInt8OffForeignObjzh
301 indexInt16OffForeignObjzh
302 indexInt32OffForeignObjzh
303 indexInt64OffForeignObjzh
304 indexWord8OffForeignObjzh
305 indexWord16OffForeignObjzh
306 indexWord32OffForeignObjzh
307 indexWord64OffForeignObjzh
316 writeStablePtrArrayzh
343 unsafeFreezzeArrayzh -- Note zz in the middle
344 unsafeFreezzeByteArrayzh -- Ditto
348 sizzeofByteArrayzh -- Ditto
349 sizzeofMutableByteArrayzh -- Ditto
382 indexWordOffClosurezh
386 reallyUnsafePtrEqualityzh
396 -- Export PrelErr.error, so that others don't have to import PrelErr
397 __export PrelErr error ;
400 --------------------------------------------------
401 instance {CCallable Charzh} = zdfCCallableCharzh;
402 instance {CCallable Doublezh} = zdfCCallableDoublezh;
403 instance {CCallable Floatzh} = zdfCCallableFloatzh;
404 instance {CCallable Intzh} = zdfCCallableIntzh;
405 instance {CCallable Addrzh} = zdfCCallableAddrzh;
406 instance {CCallable Int64zh} = zdfCCallableInt64zh;
407 instance {CCallable Word64zh} = zdfCCallableWord64zh;
408 instance {CCallable Wordzh} = zdfCCallableWordzh;
409 instance {CCallable ByteArrayzh} = zdfCCallableByteArrayzh;
410 instance __forall s => {CCallable (MutableByteArrayzh s)} = zdfCCallableMutableByteArrayzh;
411 instance {CCallable ForeignObjzh} = zdfCCallableForeignObjzh;
412 instance __forall s => {CCallable (StablePtrzh s)} = zdfCCallableStablePtrzh;
413 -- CCallable and CReturnable have kind (Type AnyBox) so that
414 -- things like Int# can be instances of CCallable.
415 1 class CCallable a :: ? ;
416 1 class CReturnable a :: ? ;
418 1 assert :: __forall a => PrelBase.Bool -> a -> a ;
420 -- These guys don't really exist:
422 1 zdfCCallableCharzh :: {CCallable Charzh} ;
423 1 zdfCCallableDoublezh :: {CCallable Doublezh} ;
424 1 zdfCCallableFloatzh :: {CCallable Floatzh} ;
425 1 zdfCCallableIntzh :: {CCallable Intzh} ;
426 1 zdfCCallableAddrzh :: {CCallable Addrzh} ;
427 1 zdfCCallableInt64zh :: {CCallable Int64zh} ;
428 1 zdfCCallableWord64zh :: {CCallable Word64zh} ;
429 1 zdfCCallableWordzh :: {CCallable Wordzh} ;
430 1 zdfCCallableByteArrayzh :: {CCallable ByteArrayzh} ;
431 1 zdfCCallableMutableByteArrayzh :: __forall s => {CCallable (MutableByteArrayzh s)} ;
432 1 zdfCCallableForeignObjzh :: {CCallable ForeignObjzh} ;
433 1 zdfCCallableStablePtrzh :: __forall a => {CCallable (StablePtrzh a)} ;