ghc-hetmet.git
19 years ago[project @ 2005-04-19 12:29:56 by simonmar]
simonmar [Tue, 19 Apr 2005 12:29:56 +0000 (12:29 +0000)]
[project @ 2005-04-19 12:29:56 by simonmar]
Now build.mk.sample does *nothing* by default

19 years ago[project @ 2005-04-17 11:13:30 by panne]
panne [Sun, 17 Apr 2005 11:13:30 +0000 (11:13 +0000)]
[project @ 2005-04-17 11:13:30 by panne]
Haddock can't handle recursive modules currently, so we disable it for now.

19 years ago[project @ 2005-04-17 11:11:32 by panne]
panne [Sun, 17 Apr 2005 11:11:33 +0000 (11:11 +0000)]
[project @ 2005-04-17 11:11:32 by panne]
Haddock fixes, "-- *" should be used with care...

19 years ago[project @ 2005-04-16 22:47:23 by simonpj]
simonpj [Sat, 16 Apr 2005 22:47:25 +0000 (22:47 +0000)]
[project @ 2005-04-16 22:47:23 by simonpj]
Significant clean-up of the handling of hi-boot files.
Previously, when compling A.hs, we loaded A.hi-boot, and
it went into the External Package Table.  It was strange
but it worked.  This tidy up stops it going anywhere;
it's just read in, and typechecked into a ModDetails.

All this was on the way to improving the handling of
instances in hs-boot files, something Chris Ryder wanted.
I think they work quite sensibly now.

If I've got all this right (have not had a chance to
fully test it) we can merge it into STABLE.

19 years ago[project @ 2005-04-16 22:46:01 by simonpj]
simonpj [Sat, 16 Apr 2005 22:46:01 +0000 (22:46 +0000)]
[project @ 2005-04-16 22:46:01 by simonpj]
Improve kind error msg; may make some tests change their output

19 years ago[project @ 2005-04-16 22:45:17 by simonpj]
simonpj [Sat, 16 Apr 2005 22:45:17 +0000 (22:45 +0000)]
[project @ 2005-04-16 22:45:17 by simonpj]
Improve location info for kind errors; may make some tests change their output

19 years ago[project @ 2005-04-16 19:39:25 by panne]
panne [Sat, 16 Apr 2005 19:39:25 +0000 (19:39 +0000)]
[project @ 2005-04-16 19:39:25 by panne]
And yesterday's "I messed up DocBook XML, too!" award goes to...

   *drum roll*

   ... Simon Peyton-Jones!

Congratulations! :-)

19 years ago[project @ 2005-04-16 16:05:52 by ross]
ross [Sat, 16 Apr 2005 16:05:53 +0000 (16:05 +0000)]
[project @ 2005-04-16 16:05:52 by ross]
Rejig handling of environments in arrow notation: instead of the
proc_level stuff, we just record the environment of the proc, and
use that on the left side of -< and the head of (|...|).

This also makes the arrow1 test yield a compile error, as it should,
but the error message is uninformative.

19 years ago[project @ 2005-04-15 21:51:28 by sof]
sof [Fri, 15 Apr 2005 21:51:28 +0000 (21:51 +0000)]
[project @ 2005-04-15 21:51:28 by sof]
back out Directory.hs:1.14 and directory.c:1.7; neither meant for HEAD

19 years ago[project @ 2005-04-15 18:13:34 by sof]
sof [Fri, 15 Apr 2005 18:13:34 +0000 (18:13 +0000)]
[project @ 2005-04-15 18:13:34 by sof]
LIBRARY, GHCI_LIBRARY: permit settings of these to be overridden in Makefiles; Merge to STABLE

19 years ago[project @ 2005-04-15 14:33:49 by simonpj]
simonpj [Fri, 15 Apr 2005 14:33:49 +0000 (14:33 +0000)]
[project @ 2005-04-15 14:33:49 by simonpj]
Update the CgCmmBranch (ghc directory) up to the HEAD ghc-6-4-branch-point

19 years ago[project @ 2005-04-15 14:26:39 by simonpj]
simonpj [Fri, 15 Apr 2005 14:26:39 +0000 (14:26 +0000)]
[project @ 2005-04-15 14:26:39 by simonpj]
Be consistent about quotes in error messages; MERGE TO STABLE

19 years ago[project @ 2005-04-15 07:13:08 by simonpj]
simonpj [Fri, 15 Apr 2005 07:13:08 +0000 (07:13 +0000)]
[project @ 2005-04-15 07:13:08 by simonpj]
Update comments on hslibs to make it clear that that they are (a) deprecated,
and (b) not required for building GHC.

Merge to STABLE

19 years ago[project @ 2005-04-15 05:29:48 by wolfgang]
wolfgang [Fri, 15 Apr 2005 05:29:49 +0000 (05:29 +0000)]
[project @ 2005-04-15 05:29:48 by wolfgang]
Initialise foreign exports from GNU C __attribute__((constructor)) functions
in the stub C file, rather than from __stginit_ functions.
For non-profiling ways, leave out __stginit_ alltogether.

19 years ago[project @ 2005-04-14 23:41:25 by sof]
sof [Thu, 14 Apr 2005 23:41:25 +0000 (23:41 +0000)]
[project @ 2005-04-14 23:41:25 by sof]
Better reporting of WAIT_FAILEDs from WaitFor*Object() calls.

Merge to STABLE.

19 years ago[project @ 2005-04-14 18:07:05 by ross]
ross [Thu, 14 Apr 2005 18:07:05 +0000 (18:07 +0000)]
[project @ 2005-04-14 18:07:05 by ross]
fix typo (Sourceforge bug #1183229)

(for STABLE)

19 years ago[project @ 2005-04-14 15:19:29 by simonpj]
simonpj [Thu, 14 Apr 2005 15:19:29 +0000 (15:19 +0000)]
[project @ 2005-04-14 15:19:29 by simonpj]
Fix TH handling of guards

19 years ago[project @ 2005-04-14 14:06:25 by wolfgang]
wolfgang [Thu, 14 Apr 2005 14:06:25 +0000 (14:06 +0000)]
[project @ 2005-04-14 14:06:25 by wolfgang]
Fix previous commit

19 years ago[project @ 2005-04-14 04:32:29 by dons]
dons [Thu, 14 Apr 2005 04:32:29 +0000 (04:32 +0000)]
[project @ 2005-04-14 04:32:29 by dons]
Typo in comment only.

19 years ago[project @ 2005-04-13 21:42:17 by wolfgang]
wolfgang [Wed, 13 Apr 2005 21:42:17 +0000 (21:42 +0000)]
[project @ 2005-04-13 21:42:17 by wolfgang]
Make the status messages from ghc --make display the number of modules
to be compiled, as in:

[3 of 9] Compiling Foo.hs     ( Foo.hs, Foo.o )

19 years ago[project @ 2005-04-13 15:07:20 by simonmar]
simonmar [Wed, 13 Apr 2005 15:07:20 +0000 (15:07 +0000)]
[project @ 2005-04-13 15:07:20 by simonmar]
Fix breakage in i386 floating-pt comparisons

19 years ago[project @ 2005-04-13 14:44:51 by simonmar]
simonmar [Wed, 13 Apr 2005 14:44:51 +0000 (14:44 +0000)]
[project @ 2005-04-13 14:44:51 by simonmar]
preprocessFile: return the source filename rather than "<buffer>"

19 years ago[project @ 2005-04-13 14:02:17 by simonmar]
simonmar [Wed, 13 Apr 2005 14:02:17 +0000 (14:02 +0000)]
[project @ 2005-04-13 14:02:17 by simonmar]
stopTaskManager: don't complain too loudly if we can't stop all the
tasks.  The IO manager thread turns out to be an offender here;
perhaps we should start sending signals to threads if they don't stop
when they're told to.

19 years ago[project @ 2005-04-13 13:30:42 by simonmar]
simonmar [Wed, 13 Apr 2005 13:30:42 +0000 (13:30 +0000)]
[project @ 2005-04-13 13:30:42 by simonmar]
Add :

  loadMsg :: Session -> LoadHowMuch
  -> (Messages-> IO ()) -> IO SuccessFlag

ie. just like load, except it takes a message callback and plumbs it
down to hscMain.  checkModule now uses loadMsgs.  Better name
suggestions welcome.

19 years ago[project @ 2005-04-13 13:17:35 by simonmar]
simonmar [Wed, 13 Apr 2005 13:17:35 +0000 (13:17 +0000)]
[project @ 2005-04-13 13:17:35 by simonmar]
- checkModule is back, and now returns a ModuleInfo

- added:

  modInfoTopLevelScope :: [Name]
  modInfoExports       :: [Name]

- in order to implement modInfoExports, ModDetails now contains
  md_exports::NameSet.

19 years ago[project @ 2005-04-13 11:11:31 by simonmar]
simonmar [Wed, 13 Apr 2005 11:11:31 +0000 (11:11 +0000)]
[project @ 2005-04-13 11:11:31 by simonmar]
Fix assertion

19 years ago[project @ 2005-04-12 23:14:32 by sof]
sof [Tue, 12 Apr 2005 23:14:32 +0000 (23:14 +0000)]
[project @ 2005-04-12 23:14:32 by sof]
tidy up prev commit; mingw doesn't support these two symbols

19 years ago[project @ 2005-04-12 19:58:56 by wolfgang]
wolfgang [Tue, 12 Apr 2005 19:58:57 +0000 (19:58 +0000)]
[project @ 2005-04-12 19:58:56 by wolfgang]
Dynamic Linking:
On non-Win32, we can store cross-dylib pointers in static data, so disable
a Win32-specific hack on the other platforms, to prevent code bloat.

19 years ago[project @ 2005-04-12 16:49:31 by krasimir]
krasimir [Tue, 12 Apr 2005 16:49:31 +0000 (16:49 +0000)]
[project @ 2005-04-12 16:49:31 by krasimir]
Few changes to GHC API:

  * The Instance type is removed. Each instance is represented as dictonary Id.
Now there is:

  isDictonaryId :: Id -> Bool

predicate which allows to distinguish them.

  * The full list of all available predicates of type (Id -> Bool) is exported
  * Few predicates for TyCon are exported
  * checkModule is removed. It isn't used anymore. Instead the full load is made.
The hook API will be required at some time in order to make available the
parsed/typechecked source.

19 years ago[project @ 2005-04-12 16:46:41 by sof]
sof [Tue, 12 Apr 2005 16:46:41 +0000 (16:46 +0000)]
[project @ 2005-04-12 16:46:41 by sof]
make 'mkdependC' happy

19 years ago[project @ 2005-04-12 16:40:16 by krasimir]
krasimir [Tue, 12 Apr 2005 16:40:16 +0000 (16:40 +0000)]
[project @ 2005-04-12 16:40:16 by krasimir]
initDynLinker is invoked from unload now. This makes safe to call it even when
then linker is still not initialized.

19 years ago[project @ 2005-04-12 12:24:44 by simonmar]
simonmar [Tue, 12 Apr 2005 12:24:44 +0000 (12:24 +0000)]
[project @ 2005-04-12 12:24:44 by simonmar]
cleanup

19 years ago[project @ 2005-04-12 12:24:27 by simonmar]
simonmar [Tue, 12 Apr 2005 12:24:27 +0000 (12:24 +0000)]
[project @ 2005-04-12 12:24:27 by simonmar]
- emit a debug message when we're yielding at shut down time

19 years ago[project @ 2005-04-12 12:21:22 by simonmar]
simonmar [Tue, 12 Apr 2005 12:21:22 +0000 (12:21 +0000)]
[project @ 2005-04-12 12:21:22 by simonmar]
thread friendliness: remove some global variables

19 years ago[project @ 2005-04-12 10:07:56 by simonmar]
simonmar [Tue, 12 Apr 2005 10:07:56 +0000 (10:07 +0000)]
[project @ 2005-04-12 10:07:56 by simonmar]
- prevent multiple threads from trying to do GC (deadlocks)

- change the startWorkerThread flag to an integer, prevents
  spurious extra tasks from being started at startup time

19 years ago[project @ 2005-04-12 09:17:47 by simonmar]
simonmar [Tue, 12 Apr 2005 09:17:48 +0000 (09:17 +0000)]
[project @ 2005-04-12 09:17:47 by simonmar]
The in_haskell sanity check should be per-Capability rather than global.

I just ran a Haskell program in 8 pthreads simultaneously :-)

19 years ago[project @ 2005-04-12 09:04:23 by simonmar]
simonmar [Tue, 12 Apr 2005 09:04:24 +0000 (09:04 +0000)]
[project @ 2005-04-12 09:04:23 by simonmar]
Per-task nurseries for SMP.  This was kind-of implemented before, but
it's much cleaner now.  There is now one *step* per capability, so we
have somewhere to hang the block count.  So for SMP, there are simply
multiple instances of generation 0 step 0.  The rNursery entry in the
register table now points to the step rather than the head block of
the nurersy.

19 years ago[project @ 2005-04-12 08:25:25 by simonmar]
simonmar [Tue, 12 Apr 2005 08:25:25 +0000 (08:25 +0000)]
[project @ 2005-04-12 08:25:25 by simonmar]
Remove -fasm from porting instructions

19 years ago[project @ 2005-04-12 07:46:08 by simonmar]
simonmar [Tue, 12 Apr 2005 07:46:08 +0000 (07:46 +0000)]
[project @ 2005-04-12 07:46:08 by simonmar]
Add missing symbols

19 years ago[project @ 2005-04-11 14:43:06 by simonmar]
simonmar [Mon, 11 Apr 2005 14:43:06 +0000 (14:43 +0000)]
[project @ 2005-04-11 14:43:06 by simonmar]
Set the default minAllocAreaSize to 512k.  Caches are bigger these
days.

19 years ago[project @ 2005-04-11 13:51:45 by simonmar]
simonmar [Mon, 11 Apr 2005 13:51:45 +0000 (13:51 +0000)]
[project @ 2005-04-11 13:51:45 by simonmar]
Fix register allocation bug: at a branch destination we weren't
setting the free register set correctly.  This may have resulted in
poor code in some cases; worst case it causes a Prelude.head: empty list.

19 years ago[project @ 2005-04-11 09:50:18 by simonmar]
simonmar [Mon, 11 Apr 2005 09:50:18 +0000 (09:50 +0000)]
[project @ 2005-04-11 09:50:18 by simonmar]
Fix i386 breakage

19 years ago[project @ 2005-04-11 08:53:39 by simonmar]
simonmar [Mon, 11 Apr 2005 08:53:39 +0000 (08:53 +0000)]
[project @ 2005-04-11 08:53:39 by simonmar]
A couple of optimisations to float code

19 years ago[project @ 2005-04-11 08:52:47 by simonmar]
simonmar [Mon, 11 Apr 2005 08:52:47 +0000 (08:52 +0000)]
[project @ 2005-04-11 08:52:47 by simonmar]
Add a Todo

19 years ago[project @ 2005-04-11 08:52:29 by simonmar]
simonmar [Mon, 11 Apr 2005 08:52:29 +0000 (08:52 +0000)]
[project @ 2005-04-11 08:52:29 by simonmar]
When generating a switch for:

  case e of
    0 -> A
    1 -> B

instead of generating

  if (e < 1) then goto A
  B

generate

  if (e >= 1) then goto B
  A

because this helps the NCG to generate better code.  In particular, if
e is a comparison, then we don't need to reverse the sense of the
comparison to eliminate the comparse against 1 (the NCG does try to
reverse the comparison, but floating-point comparisons can't be
reversed).

19 years ago[project @ 2005-04-10 21:44:10 by simonmar]
simonmar [Sun, 10 Apr 2005 21:44:10 +0000 (21:44 +0000)]
[project @ 2005-04-10 21:44:10 by simonmar]
Fix for Storage.c assertion failure

19 years ago[project @ 2005-04-08 16:48:49 by simonpj]
simonpj [Fri, 8 Apr 2005 16:48:49 +0000 (16:48 +0000)]
[project @ 2005-04-08 16:48:49 by simonpj]
Wibble to ghci

19 years ago[project @ 2005-04-08 14:51:48 by simonmar]
simonmar [Fri, 8 Apr 2005 14:51:48 +0000 (14:51 +0000)]
[project @ 2005-04-08 14:51:48 by simonmar]
GHC API work:

  - add parseName :: Session -> String -> IO [Name]
  - make lookupName look up in the global type environment

  - add data ModuleInfo
  - add a few ModuleInfo-related functions
  - add getModuleInfo :: Session -> Module -> IO ModuleInfo

19 years ago[project @ 2005-04-08 13:40:55 by simonmar]
simonmar [Fri, 8 Apr 2005 13:40:55 +0000 (13:40 +0000)]
[project @ 2005-04-08 13:40:55 by simonmar]
Refine the imports a bit

19 years ago[project @ 2005-04-08 13:39:11 by simonmar]
simonmar [Fri, 8 Apr 2005 13:39:11 +0000 (13:39 +0000)]
[project @ 2005-04-08 13:39:11 by simonmar]
- add initPackages
- add showGhcException
- tidy up the export list a bit

19 years ago[project @ 2005-04-08 13:33:24 by simonmar]
simonmar [Fri, 8 Apr 2005 13:33:24 +0000 (13:33 +0000)]
[project @ 2005-04-08 13:33:24 by simonmar]
Haddock comment on initPackages

19 years ago[project @ 2005-04-08 10:51:37 by krasimir]
krasimir [Fri, 8 Apr 2005 10:51:37 +0000 (10:51 +0000)]
[project @ 2005-04-08 10:51:37 by krasimir]
Replace hPutStrLn stderr with debugTraceMsg

19 years ago[project @ 2005-04-08 10:15:38 by simonmar]
simonmar [Fri, 8 Apr 2005 10:15:38 +0000 (10:15 +0000)]
[project @ 2005-04-08 10:15:38 by simonmar]
Tell the C backend that BaseReg has a "strange type" (this forces it
to cast it to StgWord before doing arithmetic)

19 years ago[project @ 2005-04-08 10:07:00 by simonmar]
simonmar [Fri, 8 Apr 2005 10:07:00 +0000 (10:07 +0000)]
[project @ 2005-04-08 10:07:00 by simonmar]
Fix i386 breakage

19 years ago[project @ 2005-04-08 10:04:26 by simonmar]
simonmar [Fri, 8 Apr 2005 10:04:26 +0000 (10:04 +0000)]
[project @ 2005-04-08 10:04:26 by simonmar]
fix breakage in i386 native codegen

19 years ago[project @ 2005-04-08 09:54:54 by simonmar]
simonmar [Fri, 8 Apr 2005 09:54:54 +0000 (09:54 +0000)]
[project @ 2005-04-08 09:54:54 by simonmar]
x86_64 hacking:

  - use %rip-relative addressing in a couple of places
  - floating-point comparisons handle NaN properly

I believe the x86_64 NCG is now ready for prime time.  It is
successfully bootstrapping the compiler, and I think this fixes the
last of the test failures.

19 years ago[project @ 2005-04-07 21:27:10 by simonmar]
simonmar [Thu, 7 Apr 2005 21:27:10 +0000 (21:27 +0000)]
[project @ 2005-04-07 21:27:10 by simonmar]
Fix compiling for way p

19 years ago[project @ 2005-04-07 15:56:34 by simonmar]
simonmar [Thu, 7 Apr 2005 15:56:34 +0000 (15:56 +0000)]
[project @ 2005-04-07 15:56:34 by simonmar]
A much simpler way of stopping all the other threads to do a GC in SMP
mode: the thread that wants to do GC just acquires all the
capabilities, and releases them after doing the GC.

19 years ago[project @ 2005-04-07 15:53:01 by simonmar]
simonmar [Thu, 7 Apr 2005 15:53:01 +0000 (15:53 +0000)]
[project @ 2005-04-07 15:53:01 by simonmar]
resetNurseries: tidy up

19 years ago[project @ 2005-04-07 14:33:30 by simonmar]
simonmar [Thu, 7 Apr 2005 14:33:32 +0000 (14:33 +0000)]
[project @ 2005-04-07 14:33:30 by simonmar]
Support handling signals in the threaded RTS by passing the signal
number down the pipe to the IO manager.  This avoids needing
synchronisation in the signal handler.

Signals should now work with -threaded.  Since this is a bugfix, I'll
merge the changes into the 6.4 branch.

19 years ago[project @ 2005-04-07 12:40:33 by simonmar]
simonmar [Thu, 7 Apr 2005 12:40:33 +0000 (12:40 +0000)]
[project @ 2005-04-07 12:40:33 by simonmar]
Allow use of BaseReg

19 years ago[project @ 2005-04-07 12:39:56 by simonmar]
simonmar [Thu, 7 Apr 2005 12:39:56 +0000 (12:39 +0000)]
[project @ 2005-04-07 12:39:56 by simonmar]
The arg to suspendThread should have a "ptr" hint

19 years ago[project @ 2005-04-07 11:35:48 by simonmar]
simonmar [Thu, 7 Apr 2005 11:35:48 +0000 (11:35 +0000)]
[project @ 2005-04-07 11:35:48 by simonmar]
Add the -hide-all-packages flag.

19 years ago[project @ 2005-04-07 06:25:54 by wolfgang]
wolfgang [Thu, 7 Apr 2005 06:25:54 +0000 (06:25 +0000)]
[project @ 2005-04-07 06:25:54 by wolfgang]
Mac OS X: Work around a subtle bug/strangeness/"feature" in Apple's toolchain
that affects machoInitSymbolsWithoutUnderscore().
(The symbolsWithoutUnderscore symbol must be .globl, otherwise incorrect code
will be generated to refer to it)

This has already been MERGED TO STABLE as part of the previous commit.

19 years ago[project @ 2005-04-07 05:27:16 by wolfgang]
wolfgang [Thu, 7 Apr 2005 05:27:17 +0000 (05:27 +0000)]
[project @ 2005-04-07 05:27:16 by wolfgang]
Set the keepCAFs flag (required for GHCi with dynamic libraries) from an
__attribute__((constructor)) function linked to stage 2 ghc if GhcBuildDylibs
is set in mk/build.mk.

The previous hack (setting it from addDLL) didn't work, because a few CAFs
from libHSbase_dyn were evaluated before the Linker was first invoked by
GHCi.

MERGE TO STABLE

19 years ago[project @ 2005-04-06 21:51:17 by simonmar]
simonmar [Wed, 6 Apr 2005 21:51:17 +0000 (21:51 +0000)]
[project @ 2005-04-06 21:51:17 by simonmar]
way fix

19 years ago[project @ 2005-04-06 15:27:06 by simonmar]
simonmar [Wed, 6 Apr 2005 15:27:06 +0000 (15:27 +0000)]
[project @ 2005-04-06 15:27:06 by simonmar]
Revamp the Task API: now we use the same implementation for threaded
and SMP.  We also keep per-task timing stats in the threaded RTS now,
which makes the output of +RTS -sstderr more useful.

19 years ago[project @ 2005-04-06 15:24:28 by simonmar]
simonmar [Wed, 6 Apr 2005 15:24:28 +0000 (15:24 +0000)]
[project @ 2005-04-06 15:24:28 by simonmar]
complain if $(way) is not a member of $(WAYS).  This will help stop me
shooting myself in the foot by building things for nonexistent ways.

19 years ago[project @ 2005-04-06 10:13:35 by simonmar]
simonmar [Wed, 6 Apr 2005 10:13:35 +0000 (10:13 +0000)]
[project @ 2005-04-06 10:13:35 by simonmar]
fix build on non-x86_64

19 years ago[project @ 2005-04-06 10:04:43 by simonmar]
simonmar [Wed, 6 Apr 2005 10:04:43 +0000 (10:04 +0000)]
[project @ 2005-04-06 10:04:43 by simonmar]
x86_64: support for the basic relocation records.  Unfortunately this
isn't enough, we need to create a PLT for far jumps too.

19 years ago[project @ 2005-04-06 09:42:45 by simonmar]
simonmar [Wed, 6 Apr 2005 09:42:45 +0000 (09:42 +0000)]
[project @ 2005-04-06 09:42:45 by simonmar]
Update building-guide link

19 years ago[project @ 2005-04-06 00:59:11 by sof]
sof [Wed, 6 Apr 2005 00:59:11 +0000 (00:59 +0000)]
[project @ 2005-04-06 00:59:11 by sof]
RTS_MINGW_ONLY_SYMBOLS: added _imp___osver global (needed by HsBase.h:__hscore_get_osver())

19 years ago[project @ 2005-04-05 21:27:54 by simonmar]
simonmar [Tue, 5 Apr 2005 21:27:54 +0000 (21:27 +0000)]
[project @ 2005-04-05 21:27:54 by simonmar]
wibble

19 years ago[project @ 2005-04-05 21:26:11 by simonmar]
simonmar [Tue, 5 Apr 2005 21:26:11 +0000 (21:26 +0000)]
[project @ 2005-04-05 21:26:11 by simonmar]
unreg wibble

19 years ago[project @ 2005-04-05 21:24:53 by simonmar]
simonmar [Tue, 5 Apr 2005 21:24:53 +0000 (21:24 +0000)]
[project @ 2005-04-05 21:24:53 by simonmar]
wibble to fix the unreg way

19 years ago[project @ 2005-04-05 15:51:26 by simonmar]
simonmar [Tue, 5 Apr 2005 15:51:26 +0000 (15:51 +0000)]
[project @ 2005-04-05 15:51:26 by simonmar]
x86_64: fix brainos in implementation of fl. pt. negation

19 years ago[project @ 2005-04-05 15:38:01 by simonmar]
simonmar [Tue, 5 Apr 2005 15:38:01 +0000 (15:38 +0000)]
[project @ 2005-04-05 15:38:01 by simonmar]
Instead of gathering a set of 'candidates' in the occurrence
analyser, use the isLocalId predicate to identify things
for which occurrence information is required.  By defn
isLocalId is true of Ids (whether top level or not) defined
in this module, and that is exactly what we want.

The 'candidates set' predated the LocalId invariant, I think.

19 years ago[project @ 2005-04-05 14:41:37 by simonmar]
simonmar [Tue, 5 Apr 2005 14:41:37 +0000 (14:41 +0000)]
[project @ 2005-04-05 14:41:37 by simonmar]
Implement the out-of-line floating-point MachOps

19 years ago[project @ 2005-04-05 14:39:13 by simonmar]
simonmar [Tue, 5 Apr 2005 14:39:13 +0000 (14:39 +0000)]
[project @ 2005-04-05 14:39:13 by simonmar]
blackhole updates

19 years ago[project @ 2005-04-05 14:31:17 by simonmar]
simonmar [Tue, 5 Apr 2005 14:31:17 +0000 (14:31 +0000)]
[project @ 2005-04-05 14:31:17 by simonmar]
wibble

19 years ago[project @ 2005-04-05 14:23:35 by simonmar]
simonmar [Tue, 5 Apr 2005 14:23:35 +0000 (14:23 +0000)]
[project @ 2005-04-05 14:23:35 by simonmar]
Catch up with InfoTable changes

19 years ago[project @ 2005-04-05 12:19:54 by simonmar]
simonmar [Tue, 5 Apr 2005 12:19:57 +0000 (12:19 +0000)]
[project @ 2005-04-05 12:19:54 by simonmar]
Some multi-processor hackery, including

  - Don't hang blocked threads off BLACKHOLEs any more, instead keep
    them all on a separate queue which is checked periodically for
    threads to wake up.

    This is good because (a) we don't have to worry about locking the
    closure in SMP mode when we want to block on it, and (b) it means
    the standard update code doesn't need to wake up any threads or
    check for a BLACKHOLE_BQ, simplifying the update code.

    The downside is that if there are lots of threads blocked on
    BLACKHOLEs, we might have to do a lot of repeated list traversal.
    We don't expect this to be common, though.  conc023 goes slower
    with this change, but we expect most programs to benefit from the
    shorter update code.

  - Fixing up the Capability code to handle multiple capabilities (SMP
    mode), and related changes to get the SMP mode at least building.

19 years ago[project @ 2005-04-05 09:45:06 by simonmar]
simonmar [Tue, 5 Apr 2005 09:45:06 +0000 (09:45 +0000)]
[project @ 2005-04-05 09:45:06 by simonmar]
x86_64: generate 32-bit relative offset plus 32-bit padding instead of
a 64-bit relative offset.  This is probably not the best place to do
it, but it'll do for now.

Also reinstate some changes that accidentally got spammed yesterday.

19 years ago[project @ 2005-04-05 09:42:48 by simonmar]
simonmar [Tue, 5 Apr 2005 09:42:48 +0000 (09:42 +0000)]
[project @ 2005-04-05 09:42:48 by simonmar]
GHC package: set $(GhcLibHcOpts) to empty; we want $(GhcStage2HcOpts)
to take precedence here.

19 years ago[project @ 2005-04-05 09:38:00 by simonmar]
simonmar [Tue, 5 Apr 2005 09:38:01 +0000 (09:38 +0000)]
[project @ 2005-04-05 09:38:00 by simonmar]
Main x86_64 hacking: we have a problem on this arch where binutils
can't generate 64-bit relative relocations (R_X86_64_PC64), which many
of our info-table fields are.  So far we've been hacking around it by
putting everything in the text section, but I've decided to adopt
another approach: we'll use explicit 32-bit offset fields on this
platform instead.  This is safe in the default "small" memory model
where all symbols are guaranteed to be in the lower 2Gb of the address
space.

NCG changes coming; mangler changes are probably required too.

19 years ago[project @ 2005-04-05 09:31:27 by simonmar]
simonmar [Tue, 5 Apr 2005 09:31:27 +0000 (09:31 +0000)]
[project @ 2005-04-05 09:31:27 by simonmar]
print format type fixup

19 years ago[project @ 2005-04-05 09:30:11 by simonmar]
simonmar [Tue, 5 Apr 2005 09:30:11 +0000 (09:30 +0000)]
[project @ 2005-04-05 09:30:11 by simonmar]
printf format type fixup

19 years ago[project @ 2005-04-05 09:28:32 by simonmar]
simonmar [Tue, 5 Apr 2005 09:28:32 +0000 (09:28 +0000)]
[project @ 2005-04-05 09:28:32 by simonmar]
type fixups

19 years ago[project @ 2005-04-05 09:22:27 by simonmar]
simonmar [Tue, 5 Apr 2005 09:23:12 +0000 (09:23 +0000)]
[project @ 2005-04-05 09:22:27 by simonmar]
type fixup

19 years ago[project @ 2005-04-05 09:06:36 by krasimir]
krasimir [Tue, 5 Apr 2005 09:06:37 +0000 (09:06 +0000)]
[project @ 2005-04-05 09:06:36 by krasimir]
In many places there was a common pattern

when (verbose >= n) $ putMsg "..."

It is now replaced with

debutTraceMsg dflags n "..."

In few places hPutStrLn stderr or putStrLn was used instead of putMsg in
the above pattern. They are replaced too. Now putMsg is used only in places
where the verbosity flag was not checked.

19 years ago[project @ 2005-04-05 08:25:06 by simonpj]
simonpj [Tue, 5 Apr 2005 08:25:07 +0000 (08:25 +0000)]
[project @ 2005-04-05 08:25:06 by simonpj]
Final wibbles, I hope

19 years ago[project @ 2005-04-04 16:49:42 by simonpj]
simonpj [Mon, 4 Apr 2005 16:49:42 +0000 (16:49 +0000)]
[project @ 2005-04-04 16:49:42 by simonpj]
One more stage2 wibble

19 years ago[project @ 2005-04-04 16:15:04 by simonpj]
simonpj [Mon, 4 Apr 2005 16:15:04 +0000 (16:15 +0000)]
[project @ 2005-04-04 16:15:04 by simonpj]
More stage2 wibbles

19 years ago[project @ 2005-04-04 15:54:50 by simonpj]
simonpj [Mon, 4 Apr 2005 15:54:50 +0000 (15:54 +0000)]
[project @ 2005-04-04 15:54:50 by simonpj]
More wibbles to HsSyn changes

19 years ago[project @ 2005-04-04 15:54:18 by simonmar]
simonmar [Mon, 4 Apr 2005 15:54:18 +0000 (15:54 +0000)]
[project @ 2005-04-04 15:54:18 by simonmar]
Use the imul instruction natively, rather than the braindead wrapper
around it.  The register allocator has been able to handle the fixed
register usage of imul for a while now.  Also, the wrapper was broken
on x86_64.

19 years ago[project @ 2005-04-04 15:51:45 by simonmar]
simonmar [Mon, 4 Apr 2005 15:51:45 +0000 (15:51 +0000)]
[project @ 2005-04-04 15:51:45 by simonmar]
wibble

19 years ago[project @ 2005-04-04 15:22:25 by simonpj]
simonpj [Mon, 4 Apr 2005 15:22:25 +0000 (15:22 +0000)]
[project @ 2005-04-04 15:22:25 by simonpj]
Further HsSyn wibbles

19 years ago[project @ 2005-04-04 14:11:29 by simonpj]
simonpj [Mon, 4 Apr 2005 14:11:29 +0000 (14:11 +0000)]
[project @ 2005-04-04 14:11:29 by simonpj]
Wibbles arising from HsSyn changes

19 years ago[project @ 2005-04-04 13:51:26 by simonmar]
simonmar [Mon, 4 Apr 2005 13:51:26 +0000 (13:51 +0000)]
[project @ 2005-04-04 13:51:26 by simonmar]
Big cleanup of the scheduler.

The main idea here was to extract as much stuff as possible from the
scheduler loop into seprate functions, so as to better expose the
control structure of the scheduler.  Now, the scheduler loop is down
to some 300+ lines; there's some more code that could be extracted,
but I think it looks pretty good now.

This work is partly due to an initial cleanup by the GRAN/PAR folks,
heavily re-worked by me.

19 years ago[project @ 2005-04-04 13:30:58 by simonpj]
simonpj [Mon, 4 Apr 2005 13:30:58 +0000 (13:30 +0000)]
[project @ 2005-04-04 13:30:58 by simonpj]
Update hs-boot file