ghc-hetmet.git
24 years ago[project @ 2000-04-20 15:22:54 by panne]
panne [Thu, 20 Apr 2000 15:22:54 +0000 (15:22 +0000)]
[project @ 2000-04-20 15:22:54 by panne]
Improved rules for stubs. Not perfect yet, but better than before.

24 years ago[project @ 2000-04-20 15:18:58 by simonmar]
simonmar [Thu, 20 Apr 2000 15:18:58 +0000 (15:18 +0000)]
[project @ 2000-04-20 15:18:58 by simonmar]
add pprStringInCStyle :: String -> SDoc
(we already have a FAST_STRING version but not one for plain Strings).

24 years ago[project @ 2000-04-20 13:20:31 by simonmar]
simonmar [Thu, 20 Apr 2000 13:20:31 +0000 (13:20 +0000)]
[project @ 2000-04-20 13:20:31 by simonmar]
Fix for initModules when unregisterised.

24 years ago[project @ 2000-04-20 12:50:18 by simonpj]
simonpj [Thu, 20 Apr 2000 12:50:18 +0000 (12:50 +0000)]
[project @ 2000-04-20 12:50:18 by simonpj]
Dont strip directory prefix when printing src-locs

24 years ago[project @ 2000-04-20 10:56:05 by simonpj]
simonpj [Thu, 20 Apr 2000 10:56:05 +0000 (10:56 +0000)]
[project @ 2000-04-20 10:56:05 by simonpj]
- Fix bug in TcExpr.tcMonoExpr (RecordUpd ...), where I hadn't
  propagated the recent change (to be H98ish) that record selectors
  for types with a context are overloaded:
data Eq a => T a { f1 :: a }

  Here f1 :: Eq a => T a -> a

  I don't like this, but Mark persuaded me that this was the
  Right Thing if we are to have contexts in data decls at all
  (which we should not)

24 years ago[project @ 2000-04-20 07:02:37 by simonpj]
simonpj [Thu, 20 Apr 2000 07:02:37 +0000 (07:02 +0000)]
[project @ 2000-04-20 07:02:37 by simonpj]
wibble

24 years ago[project @ 2000-04-19 16:51:08 by simonmar]
simonmar [Wed, 19 Apr 2000 16:51:08 +0000 (16:51 +0000)]
[project @ 2000-04-19 16:51:08 by simonmar]
Space leak fix from Simon P.J.

24 years ago[project @ 2000-04-19 16:40:53 by simonpj]
simonpj [Wed, 19 Apr 2000 16:40:53 +0000 (16:40 +0000)]
[project @ 2000-04-19 16:40:53 by simonpj]
- Fix foreign export dynamic wibble (reported by Sven)

24 years ago[project @ 2000-04-19 16:24:00 by simonpj]
simonpj [Wed, 19 Apr 2000 16:24:00 +0000 (16:24 +0000)]
[project @ 2000-04-19 16:24:00 by simonpj]
- Don't rm the .o file when splitting.   Doing so
  forces grotesque amounts of recompilation

24 years ago[project @ 2000-04-19 12:47:55 by simonpj]
simonpj [Wed, 19 Apr 2000 12:47:55 +0000 (12:47 +0000)]
[project @ 2000-04-19 12:47:55 by simonpj]
- Arrange that -ddump-simpl-stats works whether or
  not DEBUG is defines (Ross Paterson's request)

24 years ago[project @ 2000-04-19 12:42:48 by simonmar]
simonmar [Wed, 19 Apr 2000 12:42:48 +0000 (12:42 +0000)]
[project @ 2000-04-19 12:42:48 by simonmar]
- generate the heap profiling into <prog>.hp, as advertised
- clean up RtsFlags a bit

24 years ago[project @ 2000-04-19 10:53:11 by simonmar]
simonmar [Wed, 19 Apr 2000 10:53:11 +0000 (10:53 +0000)]
[project @ 2000-04-19 10:53:11 by simonmar]
Profiling info for all the thunks herein.

24 years ago[project @ 2000-04-19 10:52:36 by simonmar]
simonmar [Wed, 19 Apr 2000 10:52:36 +0000 (10:52 +0000)]
[project @ 2000-04-19 10:52:36 by simonmar]
Profiling description info for PAP and AP_UPD.

24 years ago[project @ 2000-04-19 10:51:59 by simonmar]
simonmar [Wed, 19 Apr 2000 10:51:59 +0000 (10:51 +0000)]
[project @ 2000-04-19 10:51:59 by simonmar]
MUT_VAR needs some profiling description info.

24 years ago[project @ 2000-04-19 09:59:55 by panne]
panne [Wed, 19 Apr 2000 09:59:55 +0000 (09:59 +0000)]
[project @ 2000-04-19 09:59:55 by panne]
Corrected typo in nfib example (/ => `div`).
Added description for hp2ps's -c/-y flags.

24 years ago[project @ 2000-04-19 09:12:10 by simonmar]
simonmar [Wed, 19 Apr 2000 09:12:10 +0000 (09:12 +0000)]
[project @ 2000-04-19 09:12:10 by simonmar]
Fix a bug in previous commit, some .globls were getting thrown away.

24 years ago[project @ 2000-04-18 16:47:50 by simonmar]
simonmar [Tue, 18 Apr 2000 16:47:50 +0000 (16:47 +0000)]
[project @ 2000-04-18 16:47:50 by simonmar]
enumFrom<blah> on Ratios changed slightly recently.  The current
behaviour is correct.

24 years ago[project @ 2000-04-18 16:44:46 by simonmar]
simonmar [Tue, 18 Apr 2000 16:44:46 +0000 (16:44 +0000)]
[project @ 2000-04-18 16:44:46 by simonmar]
Push directives over literal chunks when attempting to move them to
the following chunk on x86.  Occasionally gcc generates a .glob
directive some distance before the symbol it refers to, and we were
ending up with a whole load of .glob directives attached to strings,
and duplicated in each .o file when splitting.

This change reduces the size of my libHSstd_p.a from 43M (!!!) to 9M.
I think this problem must have appeared with gcc 2.95.2, but it's a
little strange that I didn't notice it until now.

24 years ago[project @ 2000-04-18 16:27:23 by simonmar]
simonmar [Tue, 18 Apr 2000 16:27:23 +0000 (16:27 +0000)]
[project @ 2000-04-18 16:27:23 by simonmar]
Addr no longer exports A#.

24 years ago[project @ 2000-04-18 16:25:05 by simonmar]
simonmar [Tue, 18 Apr 2000 16:26:07 +0000 (16:26 +0000)]
[project @ 2000-04-18 16:25:05 by simonmar]
CCallable [Char] is no longer supported.

24 years ago[project @ 2000-04-18 15:06:19 by simonmar]
simonmar [Tue, 18 Apr 2000 15:06:19 +0000 (15:06 +0000)]
[project @ 2000-04-18 15:06:19 by simonmar]
give CAF_BLACKHOLEs a closure description/type (for profiling).

24 years ago[project @ 2000-04-18 14:54:00 by simonmar]
simonmar [Tue, 18 Apr 2000 14:54:00 +0000 (14:54 +0000)]
[project @ 2000-04-18 14:54:00 by simonmar]
Revamp this chapter for the new profiling stuff.

24 years ago[project @ 2000-04-18 11:39:07 by panne]
panne [Tue, 18 Apr 2000 11:39:07 +0000 (11:39 +0000)]
[project @ 2000-04-18 11:39:07 by panne]
Add ghcprof to file list (what about DrIFT, DtdToHaskell, Xtract and
hslibs in general?)

24 years ago[project @ 2000-04-18 11:31:56 by panne]
panne [Tue, 18 Apr 2000 11:31:56 +0000 (11:31 +0000)]
[project @ 2000-04-18 11:31:56 by panne]
Substitute libexecdir, too

24 years ago[project @ 2000-04-18 11:01:24 by simonmar]
simonmar [Tue, 18 Apr 2000 11:01:24 +0000 (11:01 +0000)]
[project @ 2000-04-18 11:01:24 by simonmar]
Add declarations so that emacs PSGML mode can find the DOCTYPE
declaration properly.

24 years ago[project @ 2000-04-17 15:49:19 by simonmar]
simonmar [Mon, 17 Apr 2000 15:49:19 +0000 (15:49 +0000)]
[project @ 2000-04-17 15:49:19 by simonmar]
Check for litlits and dll things when making top-level constrs.

24 years ago[project @ 2000-04-17 14:46:31 by sewardj]
sewardj [Mon, 17 Apr 2000 14:46:31 +0000 (14:46 +0000)]
[project @ 2000-04-17 14:46:31 by sewardj]
zap call to nameFromOPtr (sigh)

24 years ago[project @ 2000-04-17 14:42:30 by sewardj]
sewardj [Mon, 17 Apr 2000 14:42:30 +0000 (14:42 +0000)]
[project @ 2000-04-17 14:42:30 by sewardj]
Get rid of debugging junk in #ifdef USE_MINIINTERPRETER :-(

24 years ago[project @ 2000-04-17 14:31:19 by sewardj]
sewardj [Mon, 17 Apr 2000 14:31:19 +0000 (14:31 +0000)]
[project @ 2000-04-17 14:31:19 by sewardj]
Re-enable symbol table loading for BFD platforms.

24 years ago[project @ 2000-04-17 14:27:32 by simonmar]
simonmar [Mon, 17 Apr 2000 14:27:32 +0000 (14:27 +0000)]
[project @ 2000-04-17 14:27:32 by simonmar]
Add prof to SUBDIRS

24 years ago[project @ 2000-04-17 13:28:17 by sewardj]
sewardj [Mon, 17 Apr 2000 13:28:17 +0000 (13:28 +0000)]
[project @ 2000-04-17 13:28:17 by sewardj]
Track recent -package changes to interfaces.  Also link new symbols
blockAsyncExceptionszh_fast, unblockAsyncExceptionszh_fast,
takeMaybeMVarzh_fast.

24 years ago[project @ 2000-04-17 12:58:40 by simonmar]
simonmar [Mon, 17 Apr 2000 12:58:40 +0000 (12:58 +0000)]
[project @ 2000-04-17 12:58:40 by simonmar]
- actually add -split-objs to SRC_HC_OPTS if $(SplitObjs) == YES and
  we're building a library.

- collect together all the $(SplitObjs) stuff in one place under
  the library building code (it's only relevant for libraries).

SplitObjs=YES should now work.

24 years ago[project @ 2000-04-17 11:57:55 by simonmar]
simonmar [Mon, 17 Apr 2000 11:57:55 +0000 (11:57 +0000)]
[project @ 2000-04-17 11:57:55 by simonmar]
- Turn SplitObjs off.
- Update a woefully out of date comment.

24 years ago[project @ 2000-04-17 11:39:56 by simonmar]
simonmar [Mon, 17 Apr 2000 11:39:56 +0000 (11:39 +0000)]
[project @ 2000-04-17 11:39:56 by simonmar]
Move the HC_PRE & HC_POST stuff into target.mk, so we can override
SplitObjs in the Makefile properly.

24 years ago[project @ 2000-04-17 11:39:23 by sewardj]
sewardj [Mon, 17 Apr 2000 11:39:23 +0000 (11:39 +0000)]
[project @ 2000-04-17 11:39:23 by sewardj]
Make :r (reload) behave more like Hugs98: try and set the current module
to what it was at the last non-failing reload.

24 years ago[project @ 2000-04-17 11:35:18 by simonmar]
simonmar [Mon, 17 Apr 2000 11:35:18 +0000 (11:35 +0000)]
[project @ 2000-04-17 11:35:18 by simonmar]
Add $(INSTALL_INCLUDES), we'll probably need it at some point.

24 years ago[project @ 2000-04-17 10:02:32 by sewardj]
sewardj [Mon, 17 Apr 2000 10:02:32 +0000 (10:02 +0000)]
[project @ 2000-04-17 10:02:32 by sewardj]
Zap an old Partainesque .gdbinit file.

24 years ago[project @ 2000-04-16 16:35:58 by panne]
panne [Sun, 16 Apr 2000 16:35:58 +0000 (16:35 +0000)]
[project @ 2000-04-16 16:35:58 by panne]
Make splitting object files the default again on non-Windoze platforms

24 years ago[project @ 2000-04-16 16:23:24 by panne]
panne [Sun, 16 Apr 2000 16:23:24 +0000 (16:23 +0000)]
[project @ 2000-04-16 16:23:24 by panne]
Fixed name of std library when not building a DLL

24 years ago[project @ 2000-04-14 16:47:43 by panne]
panne [Fri, 14 Apr 2000 16:47:43 +0000 (16:47 +0000)]
[project @ 2000-04-14 16:47:43 by panne]
Reduce number of warnings and raise chances of successful compilation
when *not* building an interpreter :-)

24 years ago[project @ 2000-04-14 16:43:52 by rrt]
rrt [Fri, 14 Apr 2000 16:43:52 +0000 (16:43 +0000)]
[project @ 2000-04-14 16:43:52 by rrt]
Change package name of prelude to std.

24 years ago[project @ 2000-04-14 16:26:53 by rrt]
rrt [Fri, 14 Apr 2000 16:26:53 +0000 (16:26 +0000)]
[project @ 2000-04-14 16:26:53 by rrt]
Correct an off-by-one error.

24 years ago[project @ 2000-04-14 16:25:08 by rrt]
rrt [Fri, 14 Apr 2000 16:25:08 +0000 (16:25 +0000)]
[project @ 2000-04-14 16:25:08 by rrt]
Increased paranoia.

24 years ago[project @ 2000-04-14 16:21:32 by rrt]
rrt [Fri, 14 Apr 2000 16:21:32 +0000 (16:21 +0000)]
[project @ 2000-04-14 16:21:32 by rrt]
Spell "flush" "flush" not "flish".

24 years ago[project @ 2000-04-14 16:19:43 by rrt]
rrt [Fri, 14 Apr 2000 16:19:43 +0000 (16:19 +0000)]
[project @ 2000-04-14 16:19:43 by rrt]
Set fo->bufSize even if it's 0.

24 years ago[project @ 2000-04-14 16:17:49 by rrt]
rrt [Fri, 14 Apr 2000 16:17:49 +0000 (16:17 +0000)]
[project @ 2000-04-14 16:17:49 by rrt]
Correct DLL names.

24 years ago[project @ 2000-04-14 16:17:47 by simonmar]
simonmar [Fri, 14 Apr 2000 16:17:47 +0000 (16:17 +0000)]
[project @ 2000-04-14 16:17:47 by simonmar]
catch exceptions around commitBuffer and free the buffer.  This closes
one memory leak in the new I/O stuff, there may be another small one left.

24 years ago[project @ 2000-04-14 16:16:13 by rrt]
rrt [Fri, 14 Apr 2000 16:16:13 +0000 (16:16 +0000)]
[project @ 2000-04-14 16:16:13 by rrt]
Make PrelMain build under the new packages system (less hacky than before).

24 years ago[project @ 2000-04-14 15:55:00 by rrt]
rrt [Fri, 14 Apr 2000 15:55:00 +0000 (15:55 +0000)]
[project @ 2000-04-14 15:55:00 by rrt]
Fixed -split-objs and removed last vestiges of dLL_ifs.hi.

24 years ago[project @ 2000-04-14 15:28:24 by rrt]
rrt [Fri, 14 Apr 2000 15:28:24 +0000 (15:28 +0000)]
[project @ 2000-04-14 15:28:24 by rrt]
Removed -fcompiling-prelude flag (now removed from compiler)

24 years ago[project @ 2000-04-14 15:18:05 by sewardj]
sewardj [Fri, 14 Apr 2000 15:18:07 +0000 (15:18 +0000)]
[project @ 2000-04-14 15:18:05 by sewardj]
Clean up the runtime heap before deleting modules (and, currently, after
every evaluation) so that the combined system can safely throw away
modules and info tables without creating dangling refs from the heap.

24 years ago[project @ 2000-04-14 15:15:48 by simonmar]
simonmar [Fri, 14 Apr 2000 15:15:48 +0000 (15:15 +0000)]
[project @ 2000-04-14 15:15:48 by simonmar]
Text => Show

24 years ago[project @ 2000-04-14 15:11:25 by sewardj]
sewardj [Fri, 14 Apr 2000 15:11:25 +0000 (15:11 +0000)]
[project @ 2000-04-14 15:11:25 by sewardj]
wibble

24 years ago[project @ 2000-04-14 15:10:20 by sewardj]
sewardj [Fri, 14 Apr 2000 15:10:20 +0000 (15:10 +0000)]
[project @ 2000-04-14 15:10:20 by sewardj]
Change NO_MACHREGS back to NO_REGS -- I misunderstood the problem.

24 years ago[project @ 2000-04-14 15:08:14 by sewardj]
sewardj [Fri, 14 Apr 2000 15:08:14 +0000 (15:08 +0000)]
[project @ 2000-04-14 15:08:14 by sewardj]
gcc-warning-avoiding-wibble

24 years ago[project @ 2000-04-14 14:15:07 by simonmar]
simonmar [Fri, 14 Apr 2000 14:15:07 +0000 (14:15 +0000)]
[project @ 2000-04-14 14:15:07 by simonmar]
back off from _POSIX_C_SOURCE=199506L to 199309L, because the former
causes a bunch of extra functions thread-related to be compiled into
each module on Solaris.

24 years ago[project @ 2000-04-14 14:07:43 by simonmar]
simonmar [Fri, 14 Apr 2000 14:07:43 +0000 (14:07 +0000)]
[project @ 2000-04-14 14:07:43 by simonmar]
msTime() uses non-POSIX features, so #define NON_POSIX_SOURCE.

24 years ago[project @ 2000-04-14 14:07:18 by simonmar]
simonmar [Fri, 14 Apr 2000 14:07:18 +0000 (14:07 +0000)]
[project @ 2000-04-14 14:07:18 by simonmar]
uncomment prototype for msTime.

24 years ago[project @ 2000-04-14 13:47:12 by simonmar]
simonmar [Fri, 14 Apr 2000 13:47:12 +0000 (13:47 +0000)]
[project @ 2000-04-14 13:47:12 by simonmar]
#define _POSIX_C_SOURCE 199506L
#define _ISOC9X_SOURCE

24 years ago[project @ 2000-04-14 12:49:39 by simonmar]
simonmar [Fri, 14 Apr 2000 12:49:39 +0000 (12:49 +0000)]
[project @ 2000-04-14 12:49:39 by simonmar]
Free the spare buffers immediately we hClose a file handle.

24 years ago[project @ 2000-04-14 12:46:34 by simonmar]
simonmar [Fri, 14 Apr 2000 12:46:34 +0000 (12:46 +0000)]
[project @ 2000-04-14 12:46:34 by simonmar]
Fix a bug in commitBuffer, and tweak the semantics of
commitBuffer/commitAndReleaseBuffer.

Add some comments on the algorithms used here.

24 years ago[project @ 2000-04-14 09:54:12 by simonmar]
simonmar [Fri, 14 Apr 2000 09:54:12 +0000 (09:54 +0000)]
[project @ 2000-04-14 09:54:12 by simonmar]
fix for interface header regexp; orphan modules weren't being recorded
as such.

24 years ago[project @ 2000-04-14 09:37:03 by simonmar]
simonmar [Fri, 14 Apr 2000 09:37:03 +0000 (09:37 +0000)]
[project @ 2000-04-14 09:37:03 by simonmar]
Don't bother printing the HiVersion in the __interface line (it's
added by ghc-iface later on anyway).

24 years ago[project @ 2000-04-14 08:58:00 by simonmar]
simonmar [Fri, 14 Apr 2000 08:58:00 +0000 (08:58 +0000)]
[project @ 2000-04-14 08:58:00 by simonmar]
Text => Show
_ByteArray => ByteArray

24 years ago[project @ 2000-04-14 08:55:42 by simonmar]
simonmar [Fri, 14 Apr 2000 08:55:42 +0000 (08:55 +0000)]
[project @ 2000-04-14 08:55:42 by simonmar]
fix up imports of ForeignObj(..).

24 years ago[project @ 2000-04-14 08:52:35 by simonmar]
simonmar [Fri, 14 Apr 2000 08:52:35 +0000 (08:52 +0000)]
[project @ 2000-04-14 08:52:35 by simonmar]
_ForeignObj ==> ForeignObj

24 years ago[project @ 2000-04-14 08:29:49 by simonmar]
simonmar [Fri, 14 Apr 2000 08:29:49 +0000 (08:29 +0000)]
[project @ 2000-04-14 08:29:49 by simonmar]
we should be using hPutBufFull here.

24 years ago[project @ 2000-04-13 23:03:12 by sewardj]
sewardj [Thu, 13 Apr 2000 23:03:12 +0000 (23:03 +0000)]
[project @ 2000-04-13 23:03:12 by sewardj]
Changed NO_REGS to NO_MACHREGS to avoid inexplicable gcc warnings when
building the rts for Hugs.

24 years ago[project @ 2000-04-13 20:41:30 by panne]
panne [Thu, 13 Apr 2000 20:41:32 +0000 (20:41 +0000)]
[project @ 2000-04-13 20:41:30 by panne]
GHC has instance amnesia again, so a bunch of funny
`import Ppr{Core,Type} ()? had to be added. Sorry,
but I need a bootstrapping GHC.

24 years ago[project @ 2000-04-13 19:44:22 by panne]
panne [Thu, 13 Apr 2000 19:44:22 +0000 (19:44 +0000)]
[project @ 2000-04-13 19:44:22 by panne]
Again: Addr is an abstract type in Addr, so import from PrelAddr instead.
Told you so...

24 years ago[project @ 2000-04-13 19:31:05 by panne]
panne [Thu, 13 Apr 2000 19:31:05 +0000 (19:31 +0000)]
[project @ 2000-04-13 19:31:05 by panne]
Bootstrapping fun:

   * Addr is an abstract type in Addr, so import from PrelAddr instead
   * Ignore the (recently introduced) return value of hPutBuf{,BA}

Probably more to come. No problem, as long as I don't run out of malt
first... %-)

24 years ago[project @ 2000-04-13 19:12:17 by panne]
panne [Thu, 13 Apr 2000 19:12:17 +0000 (19:12 +0000)]
[project @ 2000-04-13 19:12:17 by panne]
Ooops, forgot one -syslib => -package

24 years ago[project @ 2000-04-13 18:49:21 by panne]
panne [Thu, 13 Apr 2000 18:49:21 +0000 (18:49 +0000)]
[project @ 2000-04-13 18:49:21 by panne]
HS_cbits => HSstd_cbits

24 years ago[project @ 2000-04-13 15:37:11 by panne]
panne [Thu, 13 Apr 2000 15:37:11 +0000 (15:37 +0000)]
[project @ 2000-04-13 15:37:11 by panne]
StgStablePtr is now void*, as required by The Happy Bit Fiddlers

24 years ago[project @ 2000-04-13 15:00:49 by rrt]
rrt [Thu, 13 Apr 2000 15:00:49 +0000 (15:00 +0000)]
[project @ 2000-04-13 15:00:49 by rrt]
Added details of packages.

24 years ago[project @ 2000-04-13 14:27:15 by panne]
panne [Thu, 13 Apr 2000 14:27:15 +0000 (14:27 +0000)]
[project @ 2000-04-13 14:27:15 by panne]
Removed the useless (and hard to implement) readForeignObjOffAddr#

24 years ago[project @ 2000-04-13 14:11:00 by simonmar]
simonmar [Thu, 13 Apr 2000 14:11:00 +0000 (14:11 +0000)]
[project @ 2000-04-13 14:11:00 by simonmar]
remove accidentally committed stuff.

24 years ago[project @ 2000-04-13 11:56:35 by simonpj]
simonpj [Thu, 13 Apr 2000 11:56:37 +0000 (11:56 +0000)]
[project @ 2000-04-13 11:56:35 by simonpj]
Add support for 'packages'.

* A package is a group of modules.

* A package has a name (e.g. std)

* A package is built into a single library (Unix; e.g. libHSstd.a)
                       or a single DLL     (Windows; e.g. HSstd.dll)

* The '-package-name foo' flag tells GHC that the module being compiled
  is destined for package foo.

* The '-package foo' flag tells GHC to make available modules
  from package 'foo'.  It replaces '-syslib foo' which is now deprecated.

* Cross-package references cost an extra indirection in Windows,
  but not Unix

* GHC does not maintain detailed cross-package dependency information.
  It does remember which modules in other packages the current module
  depends on, but not which things within those imported things.

All of this tidies up the Prelude enormously.  The Prelude and
Standard Libraries are built into a singl package called 'std'.  (This
is a change; the library is now called libHSstd.a instead of libHS.a)

24 years ago[project @ 2000-04-13 08:58:27 by simonmar]
simonmar [Thu, 13 Apr 2000 08:58:27 +0000 (08:58 +0000)]
[project @ 2000-04-13 08:58:27 by simonmar]
Move block/unblockAsyncExceptions here, now that they're used in PrelHandle.

24 years ago[project @ 2000-04-12 17:33:16 by simonmar]
simonmar [Wed, 12 Apr 2000 17:33:17 +0000 (17:33 +0000)]
[project @ 2000-04-12 17:33:16 by simonmar]
This commit fixes the trace/stderr problem, and also fixes some other
problems with the I/O library.

- handles now contain a list of free buffers, which are
  guaranteed to be the same size as the primary handle buffer.

- hPutStr now doesn't evaluate any part of the input string with
  the handle locked.  Instead, it acquires a buffer from the handle
  copies characters into it, then commits the buffer.  This is
  better for concurrency too, because the handle is only locked
  while we're actually reading/writing, not while evaluating.

- there were an even number of off-by-one errors in the I/O system
  which compensated for each other.  This has been fixed.

- made the I/O subsystem a little more exception-safe.  It still
  isn't totally exception-safe, but I can't face doing that
  without a complete rewrite of this thing in Haskell.

- add hPutBufFull and hGetBufFull.  The compiler probably needs to
  be updated to use these too.

24 years ago[project @ 2000-04-12 17:12:23 by simonmar]
simonmar [Wed, 12 Apr 2000 17:12:23 +0000 (17:12 +0000)]
[project @ 2000-04-12 17:12:23 by simonmar]
add takeMaybeMVarzh_fast decl.

24 years ago[project @ 2000-04-12 17:11:38 by simonmar]
simonmar [Wed, 12 Apr 2000 17:11:38 +0000 (17:11 +0000)]
[project @ 2000-04-12 17:11:38 by simonmar]
add takeMaybeMVarzh_fast

24 years ago[project @ 2000-04-12 17:08:15 by simonmar]
simonmar [Wed, 12 Apr 2000 17:08:15 +0000 (17:08 +0000)]
[project @ 2000-04-12 17:08:15 by simonmar]
add takeMaybeMVar

24 years ago[project @ 2000-04-12 16:22:48 by simonmar]
simonmar [Wed, 12 Apr 2000 16:22:48 +0000 (16:22 +0000)]
[project @ 2000-04-12 16:22:48 by simonmar]
add takeMaybeMVar#

24 years ago[project @ 2000-04-12 16:15:35 by simonmar]
simonmar [Wed, 12 Apr 2000 16:15:35 +0000 (16:15 +0000)]
[project @ 2000-04-12 16:15:35 by simonmar]
hack to fix bootstrapping

24 years ago[project @ 2000-04-12 15:35:18 by simonmar]
simonmar [Wed, 12 Apr 2000 15:35:18 +0000 (15:35 +0000)]
[project @ 2000-04-12 15:35:18 by simonmar]
Add takeMaybeMVarzh  (I'm doing this commit in bits, since my working
sources are so full of changes I can't easily unpick them...)

24 years ago[project @ 2000-04-12 15:32:11 by panne]
panne [Wed, 12 Apr 2000 15:32:11 +0000 (15:32 +0000)]
[project @ 2000-04-12 15:32:11 by panne]
Cleaned up Addr, AddrOff added

24 years ago[project @ 2000-04-12 11:49:50 by sewardj]
sewardj [Wed, 12 Apr 2000 11:49:50 +0000 (11:49 +0000)]
[project @ 2000-04-12 11:49:50 by sewardj]
Add -fcompiling-prelude so as to get right dependencies in the interface.

24 years ago[project @ 2000-04-12 09:43:10 by sewardj]
sewardj [Wed, 12 Apr 2000 09:43:10 +0000 (09:43 +0000)]
[project @ 2000-04-12 09:43:10 by sewardj]
Cygwin wibbles.

24 years ago[project @ 2000-04-12 09:37:19 by sewardj]
sewardj [Wed, 12 Apr 2000 09:37:19 +0000 (09:37 +0000)]
[project @ 2000-04-12 09:37:19 by sewardj]
More infotable cleanups: zap the debugging table of info table names.
This can be cleanly done by looking at the .itbl field on Names and Tycons.

24 years ago[project @ 2000-04-12 09:34:46 by sewardj]
sewardj [Wed, 12 Apr 2000 09:34:46 +0000 (09:34 +0000)]
[project @ 2000-04-12 09:34:46 by sewardj]
checkClosureShallow: allow Hugs constructor itbls

24 years ago[project @ 2000-04-11 20:44:17 by panne]
panne [Tue, 11 Apr 2000 20:44:20 +0000 (20:44 +0000)]
[project @ 2000-04-11 20:44:17 by panne]
Cleaning up the foreign object naming mess:

   * Renamed the primop from makeForeignObj# to mkForeignObj#, this
     is more consistent with the old Foreign.mkForeignObj.

   * PrelForeign now exports makeForeignObj with the new signature.

   * freeFile.c now uses StgAddr instead of StgForeignObj, this
     removes the need for some fixIOs.

   * Lots of import tweaking to prepare The Big Foreign Renamer,
     which will move most of Foreign to ForeignObj, and FFI to Foreign.

Note: I've tried to track the changes in the interpreter sources, but
didn't test them.

24 years ago[project @ 2000-04-11 16:51:44 by sewardj]
sewardj [Tue, 11 Apr 2000 16:51:44 +0000 (16:51 +0000)]
[project @ 2000-04-11 16:51:44 by sewardj]
Pull init_stack outside #ifdef INTERPRETER.

24 years ago[project @ 2000-04-11 16:49:20 by sewardj]
sewardj [Tue, 11 Apr 2000 16:49:20 +0000 (16:49 +0000)]
[project @ 2000-04-11 16:49:20 by sewardj]
Fix bitrot to allow (standalone) StgHugs to be built on Solaris, so we
can Purify it.

24 years ago[project @ 2000-04-11 16:36:53 by sewardj]
sewardj [Tue, 11 Apr 2000 16:36:54 +0000 (16:36 +0000)]
[project @ 2000-04-11 16:36:53 by sewardj]
Ensure that when Hugs decides to unload a module (nukeModule()), there are
no closures anywhere in the system which refers to infotables defined
in that module.  That means reverting all CAFs and doing a major GC
prior to deleting the module.  A flag is used to avoid redundant GCs.

24 years ago[project @ 2000-04-11 15:34:04 by keithw]
keithw [Tue, 11 Apr 2000 15:34:04 +0000 (15:34 +0000)]
[project @ 2000-04-11 15:34:04 by keithw]
Render formatting consistent with the Glasgow Style (vapour-)Guide.

24 years ago[project @ 2000-04-11 11:54:22 by simonmar]
simonmar [Tue, 11 Apr 2000 11:54:22 +0000 (11:54 +0000)]
[project @ 2000-04-11 11:54:22 by simonmar]
remove syslib misc.

24 years ago[project @ 2000-04-11 11:53:47 by simonmar]
simonmar [Tue, 11 Apr 2000 11:53:47 +0000 (11:53 +0000)]
[project @ 2000-04-11 11:53:47 by simonmar]
not the dmgob_ guys; we don't have the Native library anymore.

24 years ago[project @ 2000-04-11 11:50:33 by simonmar]
simonmar [Tue, 11 Apr 2000 11:51:17 +0000 (11:51 +0000)]
[project @ 2000-04-11 11:50:33 by simonmar]
syslib wibble

24 years ago[project @ 2000-04-11 11:48:13 by simonmar]
simonmar [Tue, 11 Apr 2000 11:48:13 +0000 (11:48 +0000)]
[project @ 2000-04-11 11:48:13 by simonmar]
don't try to recurse into non-directories.