- Jul 08, 1999
-
-
Simon Marlow authored
Back out rev 1.30 - it broke a lot of things.
-
- Jul 07, 1999
-
-
Simon Marlow authored
Reduce ScrutConDiscount from 3 to 2.
-
Simon Marlow authored
- charge 1 for a case expression - give a discount of opt_UF_ScrutConDiscount each time a constructor is scrutinised (previously a case expression was not charged for at all, and the discount for a scrutinised constructor was (opt_UF_ScrutConDiscount * tyconFamilySize). In 4.02, a case expression was also charged tyconFamilySize to balance the discount, but this had the disadvantage of charging for alternatives which may not be present in the actual case expression).
-
Simon Marlow authored
Back out yesterday's change - needs more thought.
-
- Jul 06, 1999
-
-
Simon Peyton Jones authored
All Simon's recent tuning changes. Rough summary follows: * Fix Kevin Atkinson's cant-find-instance bug. Turns out that Rename.slurpSourceRefs needs to repeatedly call getImportedInstDecls, and then go back to slurping source-refs. Comments with Rename.slurpSourceRefs. * Add a case to Simplify.mkDupableAlt for the quite-common case where there's a very simple alternative, in which case there's no point in creating a join-point binding. * Fix CoreUtils.exprOkForSpeculation so that it returns True of (==# a# b#). This lack meant that case ==# a# b# of { True -> x; False -> x } was not simplifying * Make float-out dump bindings at the top of a function argument, as at the top of a let(rec) rhs. See notes with FloatOut.floatRhs * Make the ArgOf case of mkDupableAlt generate a OneShot lambda. This gave a noticeable boost to spectral/boyer2 * Reduce the number of coerces, using worker/wrapper stuff. The main idea is in WwLib.mkWWcoerce. The gloss is that we must do the w/w split even for small non-recursive things. See notes with WorkWrap.tryWw. * This further complicated getWorkerId, so I finally bit the bullet and make the workerInfo field of the IdInfo work properly, including under substitutions. Death to getWorkerId. Kevin Glynn will be happy. * Make all lambdas over realWorldStatePrimTy into one-shot lambdas. This is a GROSS HACK. * Also make the occurrence analyser aware of one-shot lambdas. * Make various Prelude things into INLINE, so that foldr doesn't get inlined in their body, so that the caller gets the benefit of fusion. Notably in PrelArr.lhs.
-
Julian Seward authored
Assembler/Disassembler: handle and print calls to compiled code Evaluator: return to scheduler when entering unknown closure StgCRun: debugging trace in miniinterpreter (temporary) Updates: fix normal and vectored returns to Hugs
-
Julian Seward authored
Make vectored returns to Hugs work, and make IS_CODE_PTR etc work for dynamically loaded objects.
-
Simon Marlow authored
Should really call OnExitHook() in shutdownHaskellAndExit().
-
Julian Seward authored
Mods to enable interworking with simple compiled code. Supports fns and data decls. Classes, instances, primops, don't work yet. Unregisterised, mininterpreted x86-ELF is the supported object format. GC appears to work correctly.
-
Simon Marlow authored
we're on to 4.04 now.
-
Julian Seward authored
Mods to enable interworking with simple compiled code. Supports fns and data decls. Classes, instances, primops, don't work yet. Unregisterised, mininterpreted x86-ELF is the supported object format. GC appears to work correctly.
-
Simon Marlow authored
Add a note about @raiseInThread@.
-
Simon Marlow authored
-ddump-rdr is now -ddump-parsed
-
Simon Marlow authored
only pop explicit layout contexts with '}'.
-
Simon Marlow authored
print the compiler version on the same line as the compilee version; looks a bit tidier.
-
Julian Seward authored
Header file for an alternative bignum implementation, which is in interpreter/sainteger.c. Currently used by STGHugs. Temporary -- until we resolve GMP licensing issues.
-
Simon Marlow authored
Re-jig some stuff in here so it doesn't look like you need so many tools to build GHC.
-
sof authored
Added maxPrecedence
-
sof authored
Added needed includes of SchedAPI.h
-
Keith Wansbrough authored
Whoops, add index terms too.
-
Keith Wansbrough authored
Add -ddump-most and -ddump-all, with the obvious meanings.
-
sof authored
Redo previous commit to cut down on the use of COMPILING_RTS where possible - SchedAPI.h is now an RTS internal header file which RtsAPI.h no longer includes.
-
sof authored
Don't include RtsAPI.h when compiling RTS.
-
- Jul 05, 1999
-
-
sof authored
Temporary workaround for problem which caused the following program main = putStrLn ("aa" ++ IOExts.trace "bb" "cc") to deadlock - when the (untouched) stderr is evaluated (which IOExts.trace forces), it will touch stdout (see code for details of why), but it has already been locked by putStrLn. Boom - game over. This temporary 'fix' is, to put it kindly, in the fancy-footwork category as it doesn't solve the problem, but merely turns it on its head. Instead of stderr depending on stdout, stdout now depends on stderr, so the following program will deadlock main = hPutStrLn stderr ("aa" ++ myTrace "bb" "cc") myTrace msg v = unsafePerformIO $ do putStrLn msg return v The 'theory' is that this is far less likely to occur in practice than the other way around. The next step / real solution would be to give up the lock on an output Handle while filling up its output buffer. However, that requires ripping out / re-org'ing a fair bit of buffer management code, which I'll delay doing.
-
sof authored
Remove -#include "RtsAPI.h" - you now get it for free.
-
sof authored
Stg.h contains all the defs and protos that are visible when compiling .hc code (==> .hs code). Augment this set with the externally visible RTS API.
-
sof authored
Tidied up the handling of the code that emits the precedence level predicates that gets used in applications of showParen and readParen.
-
sof authored
Two new Dark Corner regression tests: - testing the derived Show&Read instances for constructors with a field label that is a varsym rather than a varid. - check that the default fixity & assoc of an operator is 'infixl 9'.
-
sof authored
New option, -fail, to indicate failure (whatever the return code).
-
Simon Peyton Jones authored
Make sure that instance gates have their home modules loaded by RnIfaces.getImportedInstDecls. This was causing Kevin Atkinson's missing-instance bug.
-
sof authored
* If a field label is a 'varsym', wrap parens around it when Show'ing and Read'ing it back in. * If there's no fixity decl for a 'consym', the default is for it to be left-assoc.
-
- Jul 03, 1999
-
-
sof authored
Don't use WinSock under cygwin
-
sof authored
Don't compile in WinSock support under cygwin
-
sof authored
exitWith: don't call exit(), but use the RTS' shutdownHaskellAndExit()
-
sof authored
New RTS entry point, shutdownHaskellAndExit(), which does what the name implies - used when you want to exit from within Haskell code (e.g., System.exitWith.)
-
- Jul 02, 1999
-
-
Simon Marlow authored
Remove final fflush() - it seems to be incompatible with recent releases of Linux's libc implementation, and we don't use stdio in any case.
-
- Jul 01, 1999
-
-
sven.panne@aedion.de authored
The allocator for mega groups now checks if consecutive megablocks on the free list are contiguous in memory. The omission of this check caused all kinds of funny runtime errors and took away at least five happy years of my life... :-{
-
Simon Marlow authored
8-bit clarity
-
Simon Marlow authored
Make this more Haskell 1.3-insensitive
-
- Jun 30, 1999
-
-
Simon Marlow authored
Allow the following (not strictly H98) construct: do blah e $ do blah This doesn't break any existing code, just allows more programs through. Only the semantics for layout after a 'do' have changed.
-