summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* comment out a non-true assertionSimon Marlow2006-06-161-1/+1
|
* make compilation a little less noisySimon Marlow2006-06-161-2/+2
|
* allow the max number of workers to scale with +RTS -NSimon Marlow2006-06-161-0/+4
|
* fix one-character error in stack checkSimon Marlow2006-06-161-1/+1
|
* add STM support to the new throwTo mechanismSimon Marlow2006-06-162-10/+32
|
* remove duplicate way names (-debug -debug didn't work)Simon Marlow2006-06-161-2/+2
|
* Asynchronous exception support for SMPSimon Marlow2006-06-1623-1788/+2461
| | | | | | | | | | | | | | | | | This patch makes throwTo work with -threaded, and also refactors large parts of the concurrency support in the RTS to clean things up. We have some new files: RaiseAsync.{c,h} asynchronous exception support Threads.{c,h} general threading-related utils Some of the contents of these new files used to be in Schedule.c, which is smaller and cleaner as a result of the split. Asynchronous exception support in the presence of multiple running Haskell threads is rather tricky. In fact, to my annoyance there are still one or two bugs to track down, but the majority of the tests run now.
* make rmp_tmp_w an StgWord instead of StgIntSimon Marlow2006-06-161-1/+1
|
* __compat_long_path_size(): have proto and defn agree on return typesof@galois.com2006-06-141-2/+2
|
* call wakeUpRts() in the correct placeSimon Marlow2006-06-141-2/+1
|
* readerProc: split up text output using host's line termination conventionsof@galois.com2006-06-131-1/+19
|
* Improve pretty-printing for bagssimonpj@microsoft.com2006-06-121-4/+1
|
* Make scoped type variables work for default methodssimonpj@microsoft.com2006-06-126-56/+67
| | | | | | | | | | | Consider class C a where op :: forall b. a -> b -> b op = <rhs> Then 'b' should be in scope in <rhs>. I had omitted this case. This patch fixes it.
* And move 'Chasing ...' messages into verbosity 2 as wellDon Stewart2006-06-121-1/+1
|
* Emit 'linking not required' messages only with -v 2 or above.Don Stewart2006-06-111-1/+1
| | | | | | | Similar in philosophy to the 'Skipping' patch, this is another case of printing noisy messages when no work is being done. This patch makes the building-when-nothing-to-do case smoother.
* Don't emit 'Skipping' messages unless -v2 or higher is onDon Stewart2006-06-101-3/+3
| | | | | | | | | Following GNU make, this patch makes GHC not emit messages about modules its skipping. This makes builds much quieter, and its a lot easier to work out what effects a change had on the code. The current behaviour can be recovered with -v2
* fix the stage3 buildSimon Marlow2006-06-121-0/+2
|
* oops, undo accidental commit of version numberSimon Marlow2006-06-121-1/+1
|
* Move readline configuration into the readline packageSimon Marlow2006-06-095-54/+5
|
* fix possible ^C problemsSimon Marlow2006-06-083-14/+37
| | | | | | | Calling prodAllCapabilities() from interruptStgRts() was wrong, for the same reasons that we stopped doing it in handle_tick(). We now use the same mechanism (send a byte down the pipe to the IO manager thread), but abstract it in a wakeUpRts() function in the scheduler.
* New tracing interfaceSimon Marlow2006-06-0818-284/+569
| | | | | | | | A simple interface for generating trace messages with timestamps and thread IDs attached to them. Most debugging output goes through this interface now, so it is straightforward to get timestamped debugging traces with +RTS -vt. Also, we plan to use this to generate parallelism profiles from the trace output.
* fix warningsSimon Marlow2006-06-082-9/+22
|
* fix warningsSimon Marlow2006-06-081-8/+8
|
* Make it so that StgWord/StgInt are longsSimon Marlow2006-06-081-2/+11
| | | | | This means we can use a %ld format specifier for StgWord/StgInt with printf and not get shouted at by gcc.
* more warning fixageSimon Marlow2006-06-081-6/+6
|
* fix a warningSimon Marlow2006-06-081-1/+1
|
* fix some warningsSimon Marlow2006-06-081-3/+6
|
* Add new RTS flags for tracing:Simon Marlow2006-06-082-3/+34
| | | | | | | | | -vs Trace scheduler events (see also -Ds with -debug) -vt Time-stamp trace messages the intention is that we will pipe the -vs output into a profile-generating tool. This commit includes the flags only, functionality to follow.
* codegen debug flag (+RTS -Dc) was unused; remove itSimon Marlow2006-06-072-6/+0
|
* add 'const' modifiers to types where appropriateSimon Marlow2006-06-073-19/+19
|
* rearrange casts to avoid gcc warningsSimon Marlow2006-06-071-66/+71
|
* warning fixSimon Marlow2006-06-071-2/+2
|
* remove //@ stuffSimon Marlow2006-06-071-28/+0
|
* Gather timing stats for a Task when it completes.Simon Marlow2006-06-075-14/+30
| | | | | Previously we did this just for workers, now we do it for the main thread and for forkOS threads too.
* Remove unnecessary SCHED_INTERRUPTED scheduler stateSimon Marlow2006-06-072-9/+3
|
* fix a warningSimon Marlow2006-04-271-1/+1
|
* re-enable time package on Windowssimonmar@microsoft.com2006-06-061-2/+0
|
* fix a case of "naughty I386 byte reg"Simon Marlow2006-06-061-12/+22
| | | | | The fix is a little hacky, because we don't have support for register classes in general, but it's an improvement.
* A better icon for GHCiNeil Mitchell2006-06-021-0/+0
|
* markSignalHandlers(): implementation was unnecessary, and had a bugsimonmar@microsoft.com2006-06-061-4/+2
| | | | | | | | | | There's no need to mark the signal handler here, because it is stored in a StablePtr and hence is a root anyway. Furthermore, the call to evac() was passing the address of a local variable, which turned out to be harmless for copying GC, but fatal for compacting GC: compacting GC assumes that the addresses of the roots are the same each time. Fixes: possibly #783, possibly #776, definitely #787
* disable time package on mingw to unblock builds.sof@galois.com2006-06-051-0/+2
|
* Remove one more IfaceInlineCallsimonpj@microsoft.com2006-06-051-1/+0
|
* Remove InlinePlease and add inline function and RULEsimonpj@microsoft.com2006-06-0517-75/+108
| | | | | | | | | | | | | | | | | | | | | | | | | For a long time GHC has had some internal mechanism designed to support a call-site inline directive, thus inline f xs makes f be inlined at the call site even if f is big. However, the surface syntax seems to have gone, and in any case it can be done more neatly using a RULE. This commit: * Removes the InlineCall constructor for Note and InlinePlease for SimplCont * Adds a new known-key Id called 'inline', whose definition in GHC.Base is just the identity function * Adds a built-in RULE in PrelRules that rewrites (inline f) to the body of f, if possible * Adds documentation NOTE: I have not tested this (aeroplane work). Give it a try!
* Fix typosimonpj@microsoft.com2006-06-051-2/+2
|
* fix type of allocateExecSimon Marlow2006-06-011-1/+1
|
* stgMallocBytesRWX --> allocateExecSimon Marlow2006-06-011-1/+1
|
* fix non-Windows buildSimon Marlow2006-06-011-1/+1
|
* Win32: set up the console code pagessimonmar@microsoft.com2006-06-013-5/+38
| | | | | | This may help with entering non-ASCII characters at the GHCi prompt, but as usual with Unicode there's no simple solution that just works. See commentary in InteractiveUI.hs for more details.
* add a type signaturesimonmar@microsoft.com2006-06-011-0/+1
|
* improvements to lexical error reportingsimonmar@microsoft.com2006-06-011-6/+4
|