This project is mirrored from https://gitlab.haskell.org/ghc/ghc.git.
Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
Last successful update .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
Last successful update .
- 28 Mar, 2003 1 commit
-
-
sof authored
Off-by-one tidyup. ALLOC_AP, ALLOC_PAP and MKAP were all being constructed with size arguments equal to (1+number of args/FVs) in ByteCodeGen.schemeE, only for Interpreter.c to subtract 1 when fishing out the payloads. This commit drops the up-and-downery. Simplification spotted by Andy Moran
-
- 27 Mar, 2003 7 commits
-
-
sof authored
be gone
-
sof authored
NCG support for f.e.d. stdcall -- Literal.MachLabels now optionally carry the size (in bytes) of the stack frame it expects, if known. That just so happens to match what stdcall labels need to be annotated with when emitting them in the NCG..
-
simonmar authored
Two performance tweaks: - Use specialised indirections, which perform the right kind of return without needing to enter the object they point to. This saves a small percentages of memory reads. - Tweak the update code to generate better code with gcc. This saves a few instructions per update.
-
simonpj authored
------------------------------------- Fix a wibble in default-type setting for TH ------------------------------------- When a bunch of declarations contains no 'default' declaration, we were setting 'defaultDefaultTys' as appropriate default types. This isn't right for Template Haskell, which may have more than one bunch of top-level decls. (The bunches are separated by top-level declaration splices.) Instead, if there is no 'default' declaration we should do nothing.
-
simonpj authored
------------------------------------- Respect SPECIALISE pragmas in instance decls ------------------------------------- For some time now we have simply been discarding SPECIALISE pragmas in instance declarations. I think this was my fault, at some point when I was re-plumbing TcClassDcl.lhs, but it's been this way for some time. The only uses of this facility in the Prelude are in GHC/Float.lhs and GHC/Real.lhs, which affected the efficiency of the Float and Double instance of properFraction, floor, ceiling, etc. Ah well, it's fixed now.
-
simonpj authored
Reduce tctrace verbosity
-
simonpj authored
Import wibbles
-
- 26 Mar, 2003 8 commits
-
-
sof authored
allocatePinned(): move large-object check to the front
-
sof authored
bring rts_mainLazyIO() into scope
-
sof authored
wibbles - drop references to PleaseStopAllocating(), use CloseNursery() to express ExtendNursery()
-
sof authored
initStorage(): sm_mutex not correctly initialised (guess no one's done an SMP build for the past 12 months :)
-
simonmar authored
Add __attribute__((regparm(1))) to evacuate()'s prototype. This avoids a lot of stack assignments between scavenge() and evacuate(). Performance isn't affected measurably, though.
-
simonmar authored
Fix bug in previous two commits: must check HEAP_ALLOCED() before using Bdescr().
-
simonmar authored
Check for the rlim_t type
-
sof authored
gen_map_mblocks(): add comment re: issues that need to be addressed should anyone want to tackle the ToDo item
-
- 25 Mar, 2003 12 commits
-
-
sof authored
bring rts_mainLazyIO() into scope
-
sof authored
to ease replacement of the underlying allocator used by stgMallocBytes() and friends, provide (&use) RtsUtils.c:stgFree()
-
sof authored
wibble wrt stgMallocBytes()
-
sof authored
msTime(): only used with PAR
-
sof authored
leave out unused statics when not using BFD
-
simonmar authored
Update ghc-pkg documentation w.r.t. multiple config files, and add documentation for 'auto' packages.
-
sof authored
code wibbles
-
sof authored
BCO_INSTRS() is no more
-
simonmar authored
Handle multiple config files correctly. Now it is possible to specify a dependency on a package in another config file, and --list-packages lists all the packages in each file. The last file mentioned on the command line is the one to which updates are applied, packages are added, etc.
-
sof authored
wibble - move LARGE_OBJECT_THRESHOLD from Constants.h to Block.h, as it's defined in terms of Block.h defines
-
sof authored
upd MAX_SPEC_SELECTEE_SIZE comment
-
simonmar authored
Update the out-of-memory error message: the request size isn't known any more.
-
- 24 Mar, 2003 4 commits
-
-
simonmar authored
warning elimination
-
simonmar authored
A couple of changes related to bug #2 in the previous commit: - follow IND_STATICs, now that we can check whether we end up in to-space or not - improve the commentary
-
simonmar authored
Fix some bugs in compacting GC. Bug 1: When threading the fields of an AP or PAP, we were grabbing the info table of the function without unthreading it first. Bug 2: eval_thunk_selector() might accidentally find itself in to-space when going through indirections in a compacted generation. We must check for this case and bale out if necessary. Bug 3: This is somewhat more nasty. When we have an AP or PAP that points to a BCO, the layout info for the AP/PAP is in the BCO's instruction array, which is two objects deep from the AP/PAP itself. The trouble is, during compacting GC, we can only safely look one object deep from the current object, because pointers from objects any deeper might have been already updated to point to their final destinations. The solution is to put the arity and bitmap info for a BCO into the BCO object itself. This means BCOs become variable-length, which is a slight annoyance, but it also means that looking up the arity/bitmap is quicker. There is a slight reduction in complexity in the byte code generator due to not having to stuff the bitmap at the front of the instruction stream.
-
simonmar authored
#ifdef some more code that belongs to the old strictness analyser. It turns out we were still compiling the Demand and SaLib modules, which aren't required unless OLD_STRICTNESS is on (do we still need OLD_STRICTNESS?).
-
- 22 Mar, 2003 1 commit
-
-
sof authored
dsForeigns: common up header files
-
- 21 Mar, 2003 6 commits
-
-
sof authored
Friday morning code-wibbling: - made RetainerProfile.c:firstStack a 'static' - added RetainerProfile.c:retainerStackBlocks()
-
sof authored
drop FILE_SIZE (hasn't been needed by NCG for the past 5 years or so)
-
sof authored
reliably clean out mk* binaries
-
simonmar authored
Modifications to the way we calculate CafInfo during tidying (again). The previous hack of setting the CafInfo on all non-top-level bindings to NoCafRefs was a hack, and it came back to bite us: when CorePrep floats out a let to the top level it doesn't create a new binding, and the existing let binder happens to say NoCafRefs which is unsafe. It was caught by an ASSERT in the CoreToStg when compiling the libraries without -O - compiling without -O tends to result in more opportunities for CorePrep to float things to the top level. Now, we calculate CafInfo on the pre-tidied expressions, using the mapping from Ids to Ids that is being built up during tidying. This avoids one loop, but will be slightly slower due to the extra lookups. However, it means we don't need to set the CafInfo on non-top-level binders to NoCafRefs.
-
simonmar authored
GNU ar seems to have trouble with duplicate object file names if you use the 's' modifier, so detect GNU ar here and use a simple 'ar q' command to create archives. This bug was tickled when I replaced an 'ar q' with '$(AR)' in target.mk yesterday: the default $(AR) is 'ar clqs'.
-
simonpj authored
Notes about constructor info tables
-
- 20 Mar, 2003 1 commit
-
-
simonmar authored
replace one instance of ar with $(AR).
-