- Mar 23, 2000
-
-
Simon Marlow authored
Don't wake up threads if the select() was interrupted by a signal.
-
Julian Seward authored
storage.h needs to see a machine-dependant file-timestamp type for use in Module symbol table entries -- hence this file.
-
Simon Marlow authored
update expected output
-
Simon Marlow authored
Add a few more test cases.
-
Simon Marlow authored
Disable some of the special cases in remInteger and quotInteger, which turned out to be wrong.
-
- Mar 22, 2000
-
-
Julian Seward authored
Zap outdated ifdeffery.
-
Julian Seward authored
Initial commit of major changes to module chasing and storage management: * Total reimplementation of module chasing (see achieveTargetModules in hugs.c). Build, maintain and use module dependency graphs to decide what needs reloading when. The old mechanism with a stack of scripts, etc, is gone forever. All the rest of these points are in support of the module-chasing change: * The result of parsing a module is now a parse tree, rather than a half-baked parse tree and a bunch of side-effects. Hooray! * Redo symbol tables for Names, Tycons, Classes, Instances and Modules. They are now dynamically expandable, doubling in size automatically when full, and use a freelist system to keep track of available slots. * Allow arbitrary modules to be deleted from the system. The main honcho here is nukeModule(). * Not strictly necessary, but ... unify the address space for all compile-time entities. See revised whatIs(). Text is part of the unified address space. This is very convenient for debugging. print() can now print practically anything. Generally simplify storage management as much as possible, and zap the years of elaborate hacks needed to make Hugs work well in 16-bit systems. Added a load of sanity-checking support to storage.[ch]. * We don't support project files any more. They were useful for a while, but no longer seem relevant. * Nuked a large bunch of irrelevant options in rts/options.h. As of this commit, the system can load and chase modules, both in standalone and combined modes. The :l (load), :a (also), :r (refresh), :i (info), :t (show type) and :m (set eval module) commands appear to work. There are also several temporary limitations which will be fixed soon: * Anything to do with external editors, etc, doesn't work. * The downward-closure-of-object-code (if M is object, all modules below M must be too) is not enforced nor checked for. It needs to be. * Module M _must_ reside in M.hs/M.o (sigh). To be fixed. * Error handling is probably flaky, and interrupt handling very likely is. * Error messages don't have line numbers. (A 5-minute fix). * Progress messages are all at sea; needs re-thinking now that the order in which things are done is radically different. * Compile-time GC is temporarily disabled whilst I figure out how to stress-test the GC. * Freed-up symbol table entries are never re-entered on the free lists -- a debugging measure. * :% is given a bad type in combined mode. To be investigated.
-
Simon Marlow authored
another -u: __init_PrelMain
-
Simon Peyton Jones authored
Make Enum for Ratio behave like the Report says
-
Reuben Thomas authored
Removed obsolete comment.
-
Reuben Thomas authored
Changed __init_Main to __init_PrelMain in line with changes elsewhere.
-
Reuben Thomas authored
Stopped PrelMain.dll_o being built with -split-objs (filter this out from argument list)
-
- Mar 21, 2000
-
-
Simon Marlow authored
What happened to gcc's "uninitialised variable" warnings when I needed them?
-
Simon Marlow authored
not needed anymore.
-
Simon Marlow authored
wibbles
-
Simon Marlow authored
Fix up the tests in here. Now that threadDelay is interruptible, many of the tests for block/unblockAsyncExceptions failed because they were relying on exceptions being blocked during a threadDelay.
-
Simon Marlow authored
Call __init_PrelMain instead of __initMain. PrelMain lives above Main in the dependency tree, so this is more correct.
-
Simon Marlow authored
MutableArray/STArray fixage.
-
Reuben Thomas authored
Added PrelException_BlockedOnDeadMVar_static_closure and PrelException_NonTermination_static_closure.
-
Reuben Thomas authored
Made them build on mingw32 again (problems with getourtimeofday, which shouldn't be needed under mingw anyway).
-
Simon Marlow authored
Fix several bugs in readChunk, mainly to do with copying already-buffered data into the user buffer.
-
sven.panne@aedion.de authored
After Simon's last commit it suffices to mention libHS once (that was exactly what I was trying in that second :-)
-
Simon Marlow authored
- add BlockedOnDeadMVar to the ever-increasing list of '-u' things - remove accidental commit (again). sigh.
-
- Mar 20, 2000
-
-
sven.panne@aedion.de authored
ITimer.h is really called Itimer.h. Hmmm, let's guess on what brilliant OS this part of the RTS was developed... :-))
-
sven.panne@aedion.de authored
Bootstrapping fix, this time for slurpFile
-
AndyGill authored
Adding an alternative to the "delay" system used for threads that are waiting for time to pass. This works on a target time basis, eliminating the need to use the ticky style counter. It is only enabled under: #if defined(INTERPRETER) && !defined(HAVE_SETITIMER)
-
AndyGill authored
Second attack at supporting threads inside STG Hugs. We now support most of the concurrency primitives. Also a wibble in Evaluator.c, letting Hugs compile.
-
- Mar 19, 2000
-
-
sven.panne@aedion.de authored
*sigh* hPutBuf{,BA} versionitis again, this time for bootstrapping 4.07
-
- Mar 18, 2000
-
-
sven.panne@aedion.de authored
Due to PrelException_PutFullMVar_static_closure there is a circular dependency between libHS and libHSrts, which is broken during the linking phase by mentioning -lHS again *after* -lHSrts. Hmmm, perhaps it would be better to mention the smaller -lHSrts twice instead? With this patch 4.06 can build 4.07, now let's see if it bootstraps...
-
sven.panne@aedion.de authored
Re-enable soft failure while searching .hi files
-
- Mar 17, 2000
-
-
Reuben Thomas authored
Spelt HS_cbits_imp correctly in SRC_BLD_DLL_OPTS
-
Reuben Thomas authored
Set WAYS=$(GhcLibWays) so that DLLs can be built.
-
Reuben Thomas authored
Added PrelException_PutFullMVar_static_closure and __init_Prelude, and also (rather hackily) __init_Main (until I find out how that should really be dealt with).
-
Simon Marlow authored
don't export non-std stuff.
-
Simon Marlow authored
More random cleanups.
-
Simon Marlow authored
Random cleanup: rename the TSO->whatNext field to what_next, to be a bit more consistent.
-
Simon Marlow authored
Add the readBlahOffAddr suite of primitives. The previous method of using indexStuffOffAddr didn't enforce proper ordering in the I/O monad. The indexBlahOffAddr primops may go away in the future if/when we figure out how to make unsafePerformIO into a no-op at the back end.
-
Simon Marlow authored
Add test for interruptible ops.
-
Simon Marlow authored
Support "interruptible operations": threads which are blocked on MVars, exceptions, I/O, or sleeping are fair game for raiseInThread.
-
Simon Marlow authored
Add test for garbage collecting threads.
-