- 10 Dec, 2006 4 commits
-
-
mnislaih authored
-
mnislaih authored
The entry point is: setBreakpointHandler :: Session -> BkptHandler Module -> IO ()
-
mnislaih authored
RtClosureInspect includes a bunch of stuff for playing with closures: - the datatype Closure is the low level representation type - the datatype Term is the high level representation type - cvObtainTerm is the main entry point, providing the Term representation of an arbitrary closure
-
mnislaih authored
This patch extends the RTS linker and the dynamic linker so that it is possible to find out the datacon of a closure in heap at runtime: - The RTS linker now carries a hashtable 'Address->Symbol' for data constructors - The Persistent Linker State in the dynamic linker is extended in a similar way. Finally, these two sources of information are consulted by: > Linker.recoverDataCon :: a -> TcM Name
-
- 09 Dec, 2006 1 commit
-
-
mnislaih authored
- infoPtr# :: a -> Addr# - closurePayload# :: a -> (# Array b, ByteArr# #) These prim ops provide the magic behind the ':print' command
-
- 15 Dec, 2006 5 commits
-
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
- 14 Dec, 2006 4 commits
-
-
andy@galois.com authored
-
Simon Marlow authored
-
Simon Marlow authored
The main goal here is to reduce fragmentation, which turns out to be the case of #743. While I was here I found some opportunities to improve performance too. The code is rather more complex, but it also contains a long comment describing the strategy, so please take a look at that for the details.
-
Simon Marlow authored
-
- 13 Dec, 2006 6 commits
-
-
andy@galois.com authored
-
simonpj@microsoft.com authored
People keep complaining, with some justification, that runST $ foo doesn't work. So I've finally caved in. The difficulty with the above is that we need to decide how to instantiate ($)'s type arguments based on the first argument (runST), and then use that info to check the second argumnent. There is a left-to-right flow of information. It's not hard to implement this, and it's clearly useful. The main change is in TcExpr.tcArgs, with some knock-on effects elsewhere. I was finally provoked into this by Trac #981, which turned out, after some head-scratching, to be another instance of the same problem. (There was some bug-fixing too; a type like ((?x::Int) => ...) is a polytype even though it has no leading for-alls, but the new TcUnify code was not treating it right.) Test for this is tc222
-
andy@galois.com authored
-
andy@galois.com authored
-
wolfgang.thaller@gmx.net authored
Work around the PowerPC architecture's +-32KB limitation for conditional branches by conditionally skipping an unconditional branch instead (unconditional branches have a +-32MB range). This requires an extra pass over the basic blocks for each CmmTop after block sequencing, to determine which branches are "far". Fixes ticket #709, "Fixup too large" error with -fasm on PowerPC
-
Ian Lynagh authored
conc021 is an example of a program that broke. It doesn't handle them particularly well still, but it doesn't crash at least.
-
- 12 Dec, 2006 1 commit
-
-
Simon Marlow authored
Also move closeMutex() etc. into freeTaskManager, this is a free-ish thing
-
- 13 Dec, 2006 2 commits
-
-
Ian Lynagh authored
-
andy@galois.com authored
- Added HPCRIX support for passing tracer filename. - Added thread tracing support. - Cleaned up use of HsFFI.h
-
- 09 Dec, 2006 1 commit
-
-
andy@galois.com authored
-
- 30 Nov, 2006 1 commit
-
-
andy@galois.com authored
-
- 12 Dec, 2006 15 commits
-
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-