| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Move 4.01 onto the main trunk.
|
|
|
|
| |
oops, <windows.h> shouldn't be included unconditionally
|
|
|
|
| |
Provide RTS initialisation as sep. entry point, initRTS()
|
|
|
|
| |
More of same
|
|
|
|
|
| |
#undef __GLASGOW_HASKELL__ before including "rtsdefs.h"
(see source code for reasons as to why we need to do this now).
|
|
|
|
| |
SMmark: multi-slurp protect SMmarkDefs.h; lift out SMmarkDefs include from the insides of an ifdef
|
|
|
|
| |
ErrorIO_innards: Flush stdio + stderr
|
|
|
|
| |
Updated to reflect last batch of changes
|
|
|
|
| |
On-the-fly generation of code chunks for 'foreign export dynamic' - x86 only at the moment
|
|
|
|
| |
DEBUG_REGS: deal with LngRegs
|
|
|
|
| |
Added eqStablePtr
|
|
|
|
| |
callWrapper: Save and restore LngRegs if needs be
|
|
|
|
| |
Hooks now take a file descriptor, not a FILE
|
|
|
|
| |
long long primitives
|
|
|
|
| |
handle_tick_serial: don't tick while reporting a cc profile
|
|
|
|
| |
Ignore NULL finalisers
|
|
|
|
| |
exitSM: free foreign objects on old generation list too!
|
|
|
|
| |
typo fix
|
|
|
|
|
|
| |
segv_handler: additional cpp'ery to account for the fact
that sigcontext_struct was renamed to sigcontext in 2.1.x
Linux kernels.
|
|
|
|
| |
slightly less obscene #ifdef'ing for solaris, define __EXTENSIONS__ to get at prusage_t struct
|
|
|
|
| |
Added OnExitHook(); hook run after Haskell world has been properly shut down
|
|
|
|
|
|
| |
- remove NON_POSIX_SOURCE for linux stuff. Some of the file is POSIX.
This whole file is garbage, and should be recycled.
|
|
|
|
|
|
| |
- remove _BSD_SOURCE for linux case, it broke older linuxen.
- type of scp.cr2 is unsigned long, not caddr_t.
- cast all pointer-like things to (char *) for comparisons.
|
|
|
|
| |
missed one caddr_t.
|
|
|
|
| |
Define _BSD_SOURCE to get this to compile under Linux w/ glibc.
|
|
|
|
| |
Don't use caddr_t in a file that claims to be POSIX compatible.
|
|
|
|
| |
Alloc rate printing fix; was outputting MUT time
|
|
|
|
|
| |
startPerformIO: Only save C stack pointer when
compiling the conc RTS on x86s.
|
|
|
|
| |
Fix for the minBound case, obtained from GMP 2.
|
|
|
|
| |
define _OSF_SOURCE when compiling under OSFx.y (x `elem` [1,3])
|
|
|
|
| |
Adjust a couple of dummy references to point to PrelGHC rather than GHC.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Library re-organisation:
All libraries now live under ghc/lib, which has the following structure:
ghc/lib/std -- all prelude files (libHS.a)
ghc/lib/std/cbits
ghc/lib/exts -- standard Hugs/GHC extensions (libHSexts.a)
-- available with '-fglasgow-exts'
ghc/lib/posix -- POSIX library (libHSposix.a)
ghc/lib/posix/cbits -- available with '-syslib posix'
ghc/lib/misc -- used to be hslibs/ghc (libHSmisc.a)
ghc/lib/misc/cbits -- available with '-syslib misc'
ghc/lib/concurrent -- Concurrent libraries (libHSconc.a)
-- available with '-concurrent'
Also, several non-standard prelude modules had their names changed to begin
with 'Prel' to reduce namespace pollution.
Addr ==> PrelAddr (Addr interface available in 'exts')
ArrBase ==> PrelArr
CCall ==> PrelCCall (CCall interface available in 'exts')
ConcBase ==> PrelConc
GHCerr ==> PrelErr
Foreign ==> PrelForeign (Foreign interface available in 'exts')
GHC ==> PrelGHC
IOHandle ==> PrelHandle
IOBase ==> PrelIOBase
GHCmain ==> PrelMain
STBase ==> PrelST
Unsafe ==> PrelUnsafe
UnsafeST ==> PrelUnsafeST
|
|
|
|
| |
hook function for I/O errors
|
|
|
|
|
|
| |
Define symbols for the (non-existent) info tables
for CCallable and CReturnable (never entered, just
defined to appease the linker.)
|
|
|
|
| |
startPerformIO: push realWorld# token on the B stack now.
|
|
|
|
|
|
|
|
|
|
| |
Don't arbitrarily truncate function names.
Reasoning:
* No information is lost - the output might be poorly
formatted if long cost centres are involved though.
* If the user wants shorter cost centre names, explicit cost
centres can be inserted.
|
|
|
|
|
|
|
|
|
|
| |
Don't arbitrarily truncate function names.
Reasoning:
* If the function names are long, it just reduces the size of
the graph, no information is lost.
* If the user wants shorter cost center names, explicit cost
centres can be inserted.
|
|
|
|
| |
Mirror sequential code, push realWorld# on B-stack before entering IO action
|
|
|
|
| |
Stack underflow comment added
|
|
|
|
| |
RBH_entry: GranSim/GUM fix for invalid InfoPtr
|
|
|
|
| |
Changed default for GranFlags.max_fishes to MAX_FISHES
|
|
|
|
| |
GranSim msg fix
|
|
|
|
| |
Add spark count to debug msg
|
|
|
|
| |
ForeignObj debug output to stderr
|
|
|
|
|
|
|
|
|
| |
Library changes to:
* remove PrimIO
* change type of _ccall_ to IO
* incorporate Alastair Reid's new library interfaces for
compatibility with Hugs.
|
|
|
|
| |
Cosmetic fix to avoid cpp warnings under linux
|
|
|
|
| |
Minor fix to suppress gcc warning
|
|
|
|
| |
ErrorIO_innards: push realWorld# on B stack (cf. startStgWorld)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Changes to unbox the state in the ST and IO monads.
ST now has type
newtype ST s a = ST (State# s -> STret s a)
data STret s a = STret (State# s) a
IO now has type
newtype IO a = IO (State# RealWorld -> IOResult a)
data IOResult a = IOok (State# RealWorld) a
| IOfail (State# RealWorld) IOError
So ST should be slightly more efficient, and IO should be nearly as
efficient as ST.
|
|
|
|
| |
urk, extra parenthesis crept in.
|