[project @ 2000-08-21 14:16:57 by simonmar]
authorsimonmar <unknown>
Mon, 21 Aug 2000 14:16:57 +0000 (14:16 +0000)
committersimonmar <unknown>
Mon, 21 Aug 2000 14:16:57 +0000 (14:16 +0000)
commitcd1a93d89e211b93c6eab4f3bbe692f0bfba8cf1
tree4748a9e05746b665e8b4b318ac513dae4810b6bf
parent601bd95083aae24e43d1ec724da83774b04e130b
[project @ 2000-08-21 14:16:57 by simonmar]
- add touch# and foreignObjToAddr# primops.

- add these functions to ForeignObj:

withForeignObj  :: ForeignObj -> (Addr -> IO a) -> IO a
touchForeignObj :: ForeignObj -> IO ()

- foreignObjToAddr, which was previously implemented using a _casm_, now
  uses the foreignObjToAddr# primop.

- replace implementations of readXXXOffForeignObj and writeXXXOffForeignObj
  using the withForeignObj and the Addr operations.  ForeignObj.lhs now has
  no _casms_ in it!  (it still can't be compiled with the NCG though, because
  it has a f.i.d.)
ghc/includes/PrimOps.h
ghc/lib/std/PrelGHC.hi-boot