ghc-hetmet.git
23 years ago[project @ 2001-02-12 04:55:33 by chak]
chak [Mon, 12 Feb 2001 04:55:33 +0000 (04:55 +0000)]
[project @ 2001-02-12 04:55:33 by chak]
Finish SimonM's "non-optional GHCi RTS" patch.

23 years ago[project @ 2001-02-11 17:51:07 by simonmar]
simonmar [Sun, 11 Feb 2001 17:51:08 +0000 (17:51 +0000)]
[project @ 2001-02-11 17:51:07 by simonmar]
Bite the bullet and make GHCi support non-optional in the RTS.  GHC
4.11 should be able to build GHCi without any additional tweaks now.

- the Linker is split into two parts: LinkerBasic.c, containing the
  routines required by the rest of the RTS, and Linker.c, containing
  the linker proper, which is not referred to from the rest of the RTS.
  Only Linker.c requires -ldl, so programs which don't make use of the
  linker (everything except GHC, in other words) won't need -ldl.

23 years ago[project @ 2001-02-11 17:18:13 by simonmar]
simonmar [Sun, 11 Feb 2001 17:18:13 +0000 (17:18 +0000)]
[project @ 2001-02-11 17:18:13 by simonmar]
Remove GhcReportCompiles - it was pretty cool, but got lost somewhere
on the road to GHCi, and we never really used it anyhow.

23 years ago[project @ 2001-02-11 17:14:48 by simonmar]
simonmar [Sun, 11 Feb 2001 17:14:48 +0000 (17:14 +0000)]
[project @ 2001-02-11 17:14:48 by simonmar]
cruftbuster

23 years ago[project @ 2001-02-11 17:12:35 by simonmar]
simonmar [Sun, 11 Feb 2001 17:12:35 +0000 (17:12 +0000)]
[project @ 2001-02-11 17:12:35 by simonmar]
- remove flag settings for modules which don't exist
- remove all heap-size settings less than 16m, and set the default to 16m.
- remove pre-ghc-4.08 compatibility cruft; the compiler requires 4.08 now.

23 years ago[project @ 2001-02-11 17:01:46 by simonmar]
simonmar [Sun, 11 Feb 2001 17:01:46 +0000 (17:01 +0000)]
[project @ 2001-02-11 17:01:46 by simonmar]
Remove some duplicate Makefile gunk, and collect the symbolic link
code together in mk/target.mk.

23 years ago[project @ 2001-02-11 16:48:21 by simonmar]
simonmar [Sun, 11 Feb 2001 16:48:21 +0000 (16:48 +0000)]
[project @ 2001-02-11 16:48:21 by simonmar]
clean up a little

23 years ago[project @ 2001-02-11 16:32:48 by simonmar]
simonmar [Sun, 11 Feb 2001 16:32:48 +0000 (16:32 +0000)]
[project @ 2001-02-11 16:32:48 by simonmar]
Create ghci-$(ProjectVersion) and ghci-inplace mini-scripts, and a
ghci->ghci-$(ProjectVersion) link.

I put these in here rather than ghc/compiler, because ghc/compiler
already has a ghci subdirectory.

23 years ago[project @ 2001-02-11 14:33:27 by simonmar]
simonmar [Sun, 11 Feb 2001 14:33:27 +0000 (14:33 +0000)]
[project @ 2001-02-11 14:33:27 by simonmar]
Experimental implementation of a bizarre, and probably not well
thought out, idea I had last week: making GHCi extensible, in Haskell.

Two new commands:

:def <name> <expr>
:undef <name>

:def defines a new command, :<name>, with the semantics that

(<expr> :: String -> IO String)

is run, passed the argument to :<name>, and the resulting string is
fed back through GHCi's command-line interpreter (\n may be used to
separate commands in the returned string).  <expr> is compiled once,
when the :def command is entered.

Simple example:

Prelude> :def date (\s -> Time.getClockTime >>= print >> return "")
Prelude> :date
Sun Feb 11 13:44:28 GMT 2001
Prelude>

Implementing built-in GHCi commands with macros:

Prelude> :def mycd (\s -> Directory.setCurrentDirectory s >> return "")
Prelude> :mycd /home/simonm
Prelude> :!ls
...

Define new functions from the command-line:

Prelude> :! echo "module Tmp where" >/tmp/Tmp.hs
Prelude> :def let (\s -> return (":! echo " ++ s ++ ">> /tmp/Tmp.hs\n:load /tmp/Tmp.hs"))
Prelude> :let x = 42
Compiling Tmp ... compilation IS required
Ok, modules loaded: Tmp.
Tmp> x
42
Tmp> :let y = x
Compiling Tmp ... compilation IS required
Ok, modules loaded: Tmp.
Tmp> y
42
Tmp>

I'm sure the possibilities are endless...

23 years ago[project @ 2001-02-11 13:13:37 by simonmar]
simonmar [Sun, 11 Feb 2001 13:13:37 +0000 (13:13 +0000)]
[project @ 2001-02-11 13:13:37 by simonmar]
Replace some OS-specific ifdefs which should really be ARCH-specific.
Fixes FreeBSD support.

23 years ago[project @ 2001-02-11 09:36:00 by qrczak]
qrczak [Sun, 11 Feb 2001 09:36:00 +0000 (09:36 +0000)]
[project @ 2001-02-11 09:36:00 by qrczak]
Reverse the 'default' list.

23 years ago[project @ 2001-02-10 10:43:25 by qrczak]
qrczak [Sat, 10 Feb 2001 10:43:25 +0000 (10:43 +0000)]
[project @ 2001-02-10 10:43:25 by qrczak]
Move kludgedSystem (renamed to system) to a separate module.
This avoids ugly interactions with the C preprocessor (string gaps,
__GLASGOW_HASKELL__ in strings).

23 years ago[project @ 2001-02-09 17:29:59 by simonmar]
simonmar [Fri, 9 Feb 2001 17:29:59 +0000 (17:29 +0000)]
[project @ 2001-02-09 17:29:59 by simonmar]
remove the bug report location in the welcome msg; it pushed the
message over 80 columns and is available from the ghc homepage in any
case.

23 years ago[project @ 2001-02-09 17:23:57 by sewardj]
sewardj [Fri, 9 Feb 2001 17:23:57 +0000 (17:23 +0000)]
[project @ 2001-02-09 17:23:57 by sewardj]
Avoid unused-var warnings.

23 years ago[project @ 2001-02-09 17:15:20 by simonmar]
simonmar [Fri, 9 Feb 2001 17:15:20 +0000 (17:15 +0000)]
[project @ 2001-02-09 17:15:20 by simonmar]
#if 0 this file (instead of #ifdef INTERPRETER).  We'll need the code
later to implement foreign import in the interpreter.

23 years ago[project @ 2001-02-09 17:00:20 by sewardj]
sewardj [Fri, 9 Feb 2001 17:00:20 +0000 (17:00 +0000)]
[project @ 2001-02-09 17:00:20 by sewardj]
Fix the x86 side of this following the (inevitable) breakage caused by
recent sparc hackery.

23 years ago[project @ 2001-02-09 16:49:30 by sewardj]
sewardj [Fri, 9 Feb 2001 16:49:30 +0000 (16:49 +0000)]
[project @ 2001-02-09 16:49:30 by sewardj]
Generate sparc entry code for interpreted constructors.  GHCi now is doing
a pretty good impression of working correctly on sparcs.  Dudeadacious!

23 years ago[project @ 2001-02-09 15:48:53 by simonmar]
simonmar [Fri, 9 Feb 2001 15:48:53 +0000 (15:48 +0000)]
[project @ 2001-02-09 15:48:53 by simonmar]
quote the SourceForge bug reporting address rather than
glasgow-haskell-bugs@haskell.org.

23 years ago[project @ 2001-02-09 15:39:39 by simonmar]
simonmar [Fri, 9 Feb 2001 15:39:39 +0000 (15:39 +0000)]
[project @ 2001-02-09 15:39:39 by simonmar]
don't make up the version number

23 years ago[project @ 2001-02-09 15:33:51 by simonmar]
simonmar [Fri, 9 Feb 2001 15:33:51 +0000 (15:33 +0000)]
[project @ 2001-02-09 15:33:51 by simonmar]
Introducing the new warm/cuddly GHCi logo.

23 years ago[project @ 2001-02-09 13:09:16 by simonmar]
simonmar [Fri, 9 Feb 2001 13:09:17 +0000 (13:09 +0000)]
[project @ 2001-02-09 13:09:16 by simonmar]
Remove all vestiges of INTERPRETER and __HUGS__.

23 years ago[project @ 2001-02-09 12:40:22 by simonmar]
simonmar [Fri, 9 Feb 2001 12:40:22 +0000 (12:40 +0000)]
[project @ 2001-02-09 12:40:22 by simonmar]
declare __init_PrelMain to match the new prototype for startupHaskell.

23 years ago[project @ 2001-02-09 12:39:53 by sewardj]
sewardj [Fri, 9 Feb 2001 12:39:53 +0000 (12:39 +0000)]
[project @ 2001-02-09 12:39:53 by sewardj]
Make the linker work on sparc-solaris:
* Teach it how to handle RelA-style relocation tables.
* Teach it about (a few of the multifarious) sparc relocation types.

23 years ago[project @ 2001-02-09 12:09:33 by simonmar]
simonmar [Fri, 9 Feb 2001 12:09:33 +0000 (12:09 +0000)]
[project @ 2001-02-09 12:09:33 by simonmar]
Declare the 3rd argument to startupHaskell as a function pointer
rather than a void *, to avoid accidental mis-declarations of
__init_Foo symbols.

23 years ago[project @ 2001-02-09 10:33:22 by sewardj]
sewardj [Fri, 9 Feb 2001 10:33:22 +0000 (10:33 +0000)]
[project @ 2001-02-09 10:33:22 by sewardj]
Un-break updateWithIndirection when -DDEBUG (don't zero slop words
beyond end of indirection node in the case of THUNK_SELECTOR) ??

23 years ago[project @ 2001-02-09 10:08:09 by simonmar]
simonmar [Fri, 9 Feb 2001 10:08:09 +0000 (10:08 +0000)]
[project @ 2001-02-09 10:08:09 by simonmar]
Unblock async exceptions in the recursive exception handler, so if we
somehow get stuck in a loop in here we'll probably be able to ^C out
of it.

23 years ago[project @ 2001-02-08 18:04:49 by sewardj]
sewardj [Thu, 8 Feb 2001 18:04:49 +0000 (18:04 +0000)]
[project @ 2001-02-08 18:04:49 by sewardj]
fix a nasty bug in some DEBUG code which caused very occasional heap
corruption.

23 years ago[project @ 2001-02-08 15:00:28 by simonmar]
simonmar [Thu, 8 Feb 2001 15:00:28 +0000 (15:00 +0000)]
[project @ 2001-02-08 15:00:28 by simonmar]
Allow zonking an unbound type variable with kind openTypeKind with voidTy.
I'm fairly sure this is ok - Simon?

23 years ago[project @ 2001-02-08 14:58:28 by simonmar]
simonmar [Thu, 8 Feb 2001 14:58:28 +0000 (14:58 +0000)]
[project @ 2001-02-08 14:58:28 by simonmar]
- print "*** Exception: " before an exception

- use a recursive exception handler, so eg. error (error "wibble")
  doesn't panic the system

23 years ago[project @ 2001-02-08 14:36:21 by simonmar]
simonmar [Thu, 8 Feb 2001 14:36:21 +0000 (14:36 +0000)]
[project @ 2001-02-08 14:36:21 by simonmar]
Fix bitrot in SMP code.

23 years ago[project @ 2001-02-08 09:53:08 by rrt]
rrt [Thu, 8 Feb 2001 09:53:08 +0000 (09:53 +0000)]
[project @ 2001-02-08 09:53:08 by rrt]
New error message (same error, ythink).

23 years ago[project @ 2001-02-07 16:56:47 by rrt]
rrt [Wed, 7 Feb 2001 16:56:47 +0000 (16:56 +0000)]
[project @ 2001-02-07 16:56:47 by rrt]
Comment out evil use of egrep.

WARNING: If you have to use egrep, then work out a way of stopping it adding
a \n to the end of the output file; otherwise you will mess up the test
results again, and I will give you a jolly good SPANKING.

23 years ago[project @ 2001-02-07 16:47:25 by simonmar]
simonmar [Wed, 7 Feb 2001 16:47:25 +0000 (16:47 +0000)]
[project @ 2001-02-07 16:47:25 by simonmar]
Add "Warning:" to the front of warning messages.

23 years ago[project @ 2001-02-07 16:24:41 by simonmar]
simonmar [Wed, 7 Feb 2001 16:24:41 +0000 (16:24 +0000)]
[project @ 2001-02-07 16:24:41 by simonmar]
remove accidentally left-in trace

23 years ago[project @ 2001-02-07 16:23:28 by simonmar]
simonmar [Wed, 7 Feb 2001 16:23:28 +0000 (16:23 +0000)]
[project @ 2001-02-07 16:23:28 by simonmar]
wibble

23 years ago[project @ 2001-02-07 16:17:26 by sewardj]
sewardj [Wed, 7 Feb 2001 16:17:26 +0000 (16:17 +0000)]
[project @ 2001-02-07 16:17:26 by sewardj]
Always have (unload Batch) work, regardless if definedness of GHCI.

23 years ago[project @ 2001-02-07 16:12:47 by simonmar]
simonmar [Wed, 7 Feb 2001 16:12:47 +0000 (16:12 +0000)]
[project @ 2001-02-07 16:12:47 by simonmar]
wibbles

23 years ago[project @ 2001-02-07 16:07:31 by simonmar]
simonmar [Wed, 7 Feb 2001 16:07:31 +0000 (16:07 +0000)]
[project @ 2001-02-07 16:07:31 by simonmar]
Enforce the restriction that .o files may only depend on other .o
files.  Any .o files which don't satisfy this requirement will be
ignored, and the module interpreted instead.

23 years ago[project @ 2001-02-07 13:47:03 by sewardj]
sewardj [Wed, 7 Feb 2001 13:47:03 +0000 (13:47 +0000)]
[project @ 2001-02-07 13:47:03 by sewardj]
#ifndef GHCI wibbles.

23 years ago[project @ 2001-02-07 12:54:09 by sewardj]
sewardj [Wed, 7 Feb 2001 12:54:09 +0000 (12:54 +0000)]
[project @ 2001-02-07 12:54:09 by sewardj]
Try and fix the freeStringBuffer nightmare once and for all.

23 years ago[project @ 2001-02-07 12:46:52 by sebc]
sebc [Wed, 7 Feb 2001 12:46:52 +0000 (12:46 +0000)]
[project @ 2001-02-07 12:46:52 by sebc]
Renamed ALL, BOOT and INSTALL (!) variables to ALL_TARGET, BOOT_TARGET,
and INSTALL_TARGET to get rid of a conflict with autoconf's INSTALL
variable.

23 years ago[project @ 2001-02-07 12:43:32 by simonmar]
simonmar [Wed, 7 Feb 2001 12:43:32 +0000 (12:43 +0000)]
[project @ 2001-02-07 12:43:32 by simonmar]
don't moan about "loading my own interface" when we're in a package module.

23 years ago[project @ 2001-02-07 12:29:17 by simonmar]
simonmar [Wed, 7 Feb 2001 12:29:17 +0000 (12:29 +0000)]
[project @ 2001-02-07 12:29:17 by simonmar]
Add a test for the bug found in Handle printing yesterday.

23 years ago[project @ 2001-02-07 12:18:42 by rrt]
rrt [Wed, 7 Feb 2001 12:18:42 +0000 (12:18 +0000)]
[project @ 2001-02-07 12:18:42 by rrt]
Dear Jules: not all of us have yet attained GHC-ENLiGHTENMENT (i.e. comment
out freeStringBuffer until it's implemented in GHC < 4.11).

23 years ago[project @ 2001-02-07 12:15:30 by sewardj]
sewardj [Wed, 7 Feb 2001 12:15:30 +0000 (12:15 +0000)]
[project @ 2001-02-07 12:15:30 by sewardj]
Make compatible with 4.08.2 (add [ ] in forall).

23 years ago[project @ 2001-02-07 11:53:00 by simonmar]
simonmar [Wed, 7 Feb 2001 11:53:00 +0000 (11:53 +0000)]
[project @ 2001-02-07 11:53:00 by simonmar]
Don't re-link interpreted modules if they haven't changed.  Now :r is
almost instantaneous when nothing changes (as it should be).

23 years ago[project @ 2001-02-07 11:48:10 by simonmar]
simonmar [Wed, 7 Feb 2001 11:48:10 +0000 (11:48 +0000)]
[project @ 2001-02-07 11:48:10 by simonmar]
wibble

23 years ago[project @ 2001-02-07 11:45:19 by simonmar]
simonmar [Wed, 7 Feb 2001 11:45:19 +0000 (11:45 +0000)]
[project @ 2001-02-07 11:45:19 by simonmar]
don't re-summarise a module if its source hasn't changed.

23 years ago[project @ 2001-02-07 10:45:43 by simonmar]
simonmar [Wed, 7 Feb 2001 10:45:43 +0000 (10:45 +0000)]
[project @ 2001-02-07 10:45:43 by simonmar]
the interactive environment now reads commands from ./.ghci followed
by ~/.ghci.

23 years ago[project @ 2001-02-06 17:31:00 by simonmar]
simonmar [Tue, 6 Feb 2001 17:31:00 +0000 (17:31 +0000)]
[project @ 2001-02-06 17:31:00 by simonmar]
Qualified names on the command line may now refer to any exported
entity from any module, not just entities from the "original" defining
module.

eg. "IO.hFlush IO.stdout" now works.

There's still a problem in that home interfaces may be demand-loaded
if they're aren't already in memory, which is wrong (you can refer to
a module which isn't loaded, causing things to fall over at link
time).

23 years ago[project @ 2001-02-06 16:22:12 by simonmar]
simonmar [Tue, 6 Feb 2001 16:22:12 +0000 (16:22 +0000)]
[project @ 2001-02-06 16:22:12 by simonmar]
allow comments on the command line: convenient in scripts

23 years ago[project @ 2001-02-06 14:44:53 by simonmar]
simonmar [Tue, 6 Feb 2001 14:44:53 +0000 (14:44 +0000)]
[project @ 2001-02-06 14:44:53 by simonmar]
strdup(), and later free(), the filename passed in via loadObj.

Yet another bug bites the dust.

23 years ago[project @ 2001-02-06 14:01:22 by simonmar]
simonmar [Tue, 6 Feb 2001 14:01:22 +0000 (14:01 +0000)]
[project @ 2001-02-06 14:01:22 by simonmar]
oops, filterNameMap was the wrong way around (or I was using wrong).
It should *keep* the named modules, not throw them away.

23 years ago[project @ 2001-02-06 12:27:57 by simonmar]
simonmar [Tue, 6 Feb 2001 12:27:57 +0000 (12:27 +0000)]
[project @ 2001-02-06 12:27:57 by simonmar]
oops, forgot to remove the object from the linked list when we unload it.

23 years ago[project @ 2001-02-06 12:09:42 by sewardj]
sewardj [Tue, 6 Feb 2001 12:09:42 +0000 (12:09 +0000)]
[project @ 2001-02-06 12:09:42 by sewardj]
Check the context_switch flag and yield if set, so that interpreted
code behaves properly in a multi(haskell)threaded environment.

23 years ago[project @ 2001-02-06 12:03:10 by simonmar]
simonmar [Tue, 6 Feb 2001 12:03:10 +0000 (12:03 +0000)]
[project @ 2001-02-06 12:03:10 by simonmar]
Try to get the stable modules story right.  Things now work much
better: objects aren't unloaded and reloaded unnecessarily, and
compiling modules from with GHCi works:

> :! ghc -c A.hs
> :r
Compiling A ... compilation IS NOT required (using ./A.o)
Compiling B ... compilation IS NOT required
Compiling C ... compilation IS NOT required
Compiling Main ... compilation IS NOT required

Compiled module must not depend on interpreted modules, but we
currently don't enforce this restriction properly.

23 years ago[project @ 2001-02-06 12:02:05 by sewardj]
sewardj [Tue, 6 Feb 2001 12:02:05 +0000 (12:02 +0000)]
[project @ 2001-02-06 12:02:05 by sewardj]
Implement implicit and explicit stack checks.  For details, see recent
commit message for ghc/compiler/ghci/ByteCodeGen.lhs.

23 years ago[project @ 2001-02-06 12:01:00 by sewardj]
sewardj [Tue, 6 Feb 2001 12:01:00 +0000 (12:01 +0000)]
[project @ 2001-02-06 12:01:00 by sewardj]
Add bci_STKCHECK and INTERP_STACK_CHECK_THRESH.

23 years ago[project @ 2001-02-06 12:00:17 by sewardj]
sewardj [Tue, 6 Feb 2001 12:00:17 +0000 (12:00 +0000)]
[project @ 2001-02-06 12:00:17 by sewardj]
Support stack overflow checks in interpreted code.  The deal is:
* If a BCO is reckoned to need less than iNTERP_STACK_CHECK_THRESH
  words of stack, no stack check insn is added.
* If a BCO needs >= iNTERP_STACK_CHECK_THRESH words, an explicit
  check insn is added.

The interpreter ensures at least iNTERP_STACK_CHECK_THRESH words of
stack are available before running each BCO, regardless of whether or
not the BCO contains an explicit check insn too.

By setting iNTERP_STACK_CHECK_THRESH to a suitably large level
(currently 50), most BCOs only require the implicit stack check, which
avoids the overhead of decoding one extra insn per BCO.  BCOs which do
have a stack check insn then do 2 stack checks rather than 1
(implicit, then explicit), but this is rare enough that we don't care.

23 years ago[project @ 2001-02-06 11:57:30 by simonmar]
simonmar [Tue, 6 Feb 2001 11:57:30 +0000 (11:57 +0000)]
[project @ 2001-02-06 11:57:30 by simonmar]
- CAF reversion:  CAFs are reverted on a load or reload.  They can
  optionally be reverted after every evaluation, with :set +r.

- we now compile the "hFlush stdout/stderr" expressions once and
  for all at startup, and just run them after each evaluation.  This
  has the pleasant side effect of causing the Prelude to be read in
  before any expressions are typed, causing GHCi to seem more
  responsive.

23 years ago[project @ 2001-02-06 11:42:30 by simonmar]
simonmar [Tue, 6 Feb 2001 11:42:30 +0000 (11:42 +0000)]
[project @ 2001-02-06 11:42:30 by simonmar]
urk! when showing a handle, we don't replace the MVar.  For example,
the following test causes a deadlock:

main = do
  getContents
  catch getChar (\e -> print e >> return 'x')
  catch getChar (\e -> print e >> return 'x')

To be merged into 4.08.

23 years ago[project @ 2001-02-06 11:41:04 by rrt]
rrt [Tue, 6 Feb 2001 11:41:04 +0000 (11:41 +0000)]
[project @ 2001-02-06 11:41:04 by rrt]
Corrected comment according to code.

23 years ago[project @ 2001-02-06 10:37:23 by sewardj]
sewardj [Tue, 6 Feb 2001 10:37:23 +0000 (10:37 +0000)]
[project @ 2001-02-06 10:37:23 by sewardj]
When linking a bytecode module, only add top-level (isGlobalName)
bindings into the returned augmented closure env.

23 years ago[project @ 2001-02-05 22:02:18 by qrczak]
qrczak [Mon, 5 Feb 2001 22:02:18 +0000 (22:02 +0000)]
[project @ 2001-02-05 22:02:18 by qrczak]
Works under Linux again - Posix was not needed.

23 years ago[project @ 2001-02-05 18:01:39 by rrt]
rrt [Mon, 5 Feb 2001 18:01:39 +0000 (18:01 +0000)]
[project @ 2001-02-05 18:01:39 by rrt]
Make it work on Windows.

23 years ago[project @ 2001-02-05 17:58:06 by rrt]
rrt [Mon, 5 Feb 2001 17:58:06 +0000 (17:58 +0000)]
[project @ 2001-02-05 17:58:06 by rrt]
Make sure config.h is included to garner vital symbols.

23 years ago[project @ 2001-02-05 17:52:49 by rrt]
rrt [Mon, 5 Feb 2001 17:52:49 +0000 (17:52 +0000)]
[project @ 2001-02-05 17:52:49 by rrt]
Add machdep C flags to cpp command line (for benefit of Windows, so that
-mno-cygwin is passed to cpp and the right headers are obtained).

23 years ago[project @ 2001-02-05 17:50:26 by rrt]
rrt [Mon, 5 Feb 2001 17:50:26 +0000 (17:50 +0000)]
[project @ 2001-02-05 17:50:26 by rrt]
Improved comment.

23 years ago[project @ 2001-02-05 17:29:41 by sewardj]
sewardj [Mon, 5 Feb 2001 17:29:41 +0000 (17:29 +0000)]
[project @ 2001-02-05 17:29:41 by sewardj]
Enable (& fix) peephole optimisation.  Also a couple of unhandled cases
left over from running the Galois raytracer, I think.

23 years ago[project @ 2001-02-05 17:27:48 by sewardj]
sewardj [Mon, 5 Feb 2001 17:27:48 +0000 (17:27 +0000)]
[project @ 2001-02-05 17:27:48 by sewardj]
Major performance improvements for the bytecode interpreter.

23 years ago[project @ 2001-02-05 11:49:20 by chak]
chak [Mon, 5 Feb 2001 11:49:20 +0000 (11:49 +0000)]
[project @ 2001-02-05 11:49:20 by chak]
Somewhere we lost the Storable instances of CFloat, CDouble and CLDouble &
removed cruft from CTypes.h.

23 years ago[project @ 2001-02-05 11:20:12 by simonmar]
simonmar [Mon, 5 Feb 2001 11:20:12 +0000 (11:20 +0000)]
[project @ 2001-02-05 11:20:12 by simonmar]
add some _scc_s

23 years ago[project @ 2001-02-05 11:18:54 by simonmar]
simonmar [Mon, 5 Feb 2001 11:18:54 +0000 (11:18 +0000)]
[project @ 2001-02-05 11:18:54 by simonmar]
linking fixes

23 years ago[project @ 2001-02-05 11:14:28 by simonmar]
simonmar [Mon, 5 Feb 2001 11:14:28 +0000 (11:14 +0000)]
[project @ 2001-02-05 11:14:28 by simonmar]
Add a list of objects currently loaded to the persistent linker state.

23 years ago[project @ 2001-02-05 08:48:25 by simonpj]
simonpj [Mon, 5 Feb 2001 08:48:25 +0000 (08:48 +0000)]
[project @ 2001-02-05 08:48:25 by simonpj]
Add (still incomplete) comment

23 years ago[project @ 2001-02-05 08:43:47 by simonpj]
simonpj [Mon, 5 Feb 2001 08:43:47 +0000 (08:43 +0000)]
[project @ 2001-02-05 08:43:47 by simonpj]
Add restriction comment to generics

23 years ago[project @ 2001-02-01 13:35:10 by sewardj]
sewardj [Thu, 1 Feb 2001 13:35:10 +0000 (13:35 +0000)]
[project @ 2001-02-01 13:35:10 by sewardj]
Fix a long-standing roaring bogon in mangleIndexTree, to do with
not-necessarily-valid assumptions about PrimRep sizes.  In future all
enquiries about PrimRep sizes should go via MachMisc.primRepToSize
and/or MachMisc.sizeOf.  The Lord preserve us from random, unportable
hacks in the NCG.

23 years ago[project @ 2001-02-01 12:37:44 by simonmar]
simonmar [Thu, 1 Feb 2001 12:37:44 +0000 (12:37 +0000)]
[project @ 2001-02-01 12:37:44 by simonmar]
fix problems with unloadObj

23 years ago[project @ 2001-02-01 11:49:32 by simonmar]
simonmar [Thu, 1 Feb 2001 11:49:32 +0000 (11:49 +0000)]
[project @ 2001-02-01 11:49:32 by simonmar]
Fix two bugs:

- the typechecker wasn't attempting to resolve all the overloading when
  forcing an expression to IO type.  Now typing '1' at the prompt works
  again.

- the typechecker was attempting to check for Main.main even when
  we had avoided recompilation of Main.

23 years ago[project @ 2001-02-01 11:47:53 by simonmar]
simonmar [Thu, 1 Feb 2001 11:47:53 +0000 (11:47 +0000)]
[project @ 2001-02-01 11:47:53 by simonmar]
remove unused v_ProduceHi

23 years ago[project @ 2001-01-31 15:38:02 by sewardj]
sewardj [Wed, 31 Jan 2001 15:38:02 +0000 (15:38 +0000)]
[project @ 2001-01-31 15:38:02 by sewardj]
Give a clause for hPutFS on UnicodeStr.  Apparently only needed so that
-ddump-stix doesn't bomb when printing unicode strings.

23 years ago[project @ 2001-01-31 15:36:42 by sewardj]
sewardj [Wed, 31 Jan 2001 15:36:42 +0000 (15:36 +0000)]
[project @ 2001-01-31 15:36:42 by sewardj]
Un-break the x86 world following sparc byte-extend (Word8Rep) fix.  Duh.

23 years ago[project @ 2001-01-31 12:40:51 by simonmar]
simonmar [Wed, 31 Jan 2001 12:40:51 +0000 (12:40 +0000)]
[project @ 2001-01-31 12:40:51 by simonmar]
Throw away linkables in cmUnload, as well as interfaces.

23 years ago[project @ 2001-01-31 12:27:24 by sewardj]
sewardj [Wed, 31 Jan 2001 12:27:25 +0000 (12:27 +0000)]
[project @ 2001-01-31 12:27:24 by sewardj]
Create PrimReps: {Int|Word}{8|16|32}Rep, for use in the native code
generator.  And change the rep for character ops from Int8Rep to
Word8Rep.  This fixes a bug in the sparc NCG in which chars loaded from
memory were incorrectly sign-extended to 32 bits.  This problem
appeared when CharRep was turned into a 32-bit quantity, and
previous uses of it were replaced with Int8Rep, incorrectly, since
Int8Rep is signed.  Also undo the kludge in the x86 section which
had (unknown to all) kept it working despite the change to Int8Rep.

sparc NCG now appears to work; hope the x86 side isn't now broken.

23 years ago[project @ 2001-01-31 11:04:29 by simonmar]
simonmar [Wed, 31 Jan 2001 11:04:29 +0000 (11:04 +0000)]
[project @ 2001-01-31 11:04:29 by simonmar]
Remove now-unnecessary markCAFs().

23 years ago[project @ 2001-01-31 11:03:21 by simonmar]
simonmar [Wed, 31 Jan 2001 11:03:21 +0000 (11:03 +0000)]
[project @ 2001-01-31 11:03:21 by simonmar]
disable the gcCAFs debugging routine on GHCi - it conflicts with
GHCi's new CAF reversion mechanism.

23 years ago[project @ 2001-01-31 10:12:08 by simonmar]
simonmar [Wed, 31 Jan 2001 10:12:08 +0000 (10:12 +0000)]
[project @ 2001-01-31 10:12:08 by simonmar]
fix compilation errors in #ifdef TICKY_TICKY code

23 years ago[project @ 2001-01-30 15:28:25 by simonmar]
simonmar [Tue, 30 Jan 2001 15:28:25 +0000 (15:28 +0000)]
[project @ 2001-01-30 15:28:25 by simonmar]
remove -hi and -nohi which haven't worked for a while.  -ohi /dev/null
works just as well as -nohi.

23 years ago[project @ 2001-01-30 13:39:09 by simonmar]
simonmar [Tue, 30 Jan 2001 13:39:09 +0000 (13:39 +0000)]
[project @ 2001-01-30 13:39:09 by simonmar]
back out accidental change

23 years ago[project @ 2001-01-30 13:38:22 by simonmar]
simonmar [Tue, 30 Jan 2001 13:38:22 +0000 (13:38 +0000)]
[project @ 2001-01-30 13:38:22 by simonmar]
oops, back out accidental change

23 years ago[project @ 2001-01-30 12:30:37 by rrt]
rrt [Tue, 30 Jan 2001 12:30:37 +0000 (12:30 +0000)]
[project @ 2001-01-30 12:30:37 by rrt]
Modernise Perl paragraph.

23 years ago[project @ 2001-01-30 12:14:02 by simonmar]
simonmar [Tue, 30 Jan 2001 12:14:02 +0000 (12:14 +0000)]
[project @ 2001-01-30 12:14:02 by simonmar]
update documentation to reflect change from _scc_ to {-# SCC ".." #-}

23 years ago[project @ 2001-01-30 12:13:34 by simonmar]
simonmar [Tue, 30 Jan 2001 12:13:34 +0000 (12:13 +0000)]
[project @ 2001-01-30 12:13:34 by simonmar]
Allow {-# SCC "..." #-} to be used instead of _scc_ "...".  The latter
will be phased out in a couple of versions.

23 years ago[project @ 2001-01-30 11:13:26 by simonmar]
simonmar [Tue, 30 Jan 2001 11:13:26 +0000 (11:13 +0000)]
[project @ 2001-01-30 11:13:26 by simonmar]
Add Sigbjorn's hack to fix the Happy version test.

23 years ago[project @ 2001-01-30 10:59:04 by simonmar]
simonmar [Tue, 30 Jan 2001 10:59:04 +0000 (10:59 +0000)]
[project @ 2001-01-30 10:59:04 by simonmar]
put sys/types.h and sys/timeb.h includes under their own #ifdefs,
instead of all under HAVE_WINDOWS_H.

23 years ago[project @ 2001-01-30 10:56:55 by simonmar]
simonmar [Tue, 30 Jan 2001 10:56:55 +0000 (10:56 +0000)]
[project @ 2001-01-30 10:56:55 by simonmar]
lang package needs an undefined symbol (for deprecated rts_mkAddr)

23 years ago[project @ 2001-01-30 10:55:04 by simonmar]
simonmar [Tue, 30 Jan 2001 10:55:35 +0000 (10:55 +0000)]
[project @ 2001-01-30 10:55:04 by simonmar]
slight reorganisation of the -ddump-hi-diffs output

23 years ago[project @ 2001-01-30 10:53:22 by simonmar]
simonmar [Tue, 30 Jan 2001 10:53:22 +0000 (10:53 +0000)]
[project @ 2001-01-30 10:53:22 by simonmar]
Don't discard top-level functions in interactive mode, even if they're
not exported.  When typing expressions in the context of a module, the
entire top-level scope of the module should be available.

23 years ago[project @ 2001-01-30 10:52:14 by simonmar]
simonmar [Tue, 30 Jan 2001 10:52:14 +0000 (10:52 +0000)]
[project @ 2001-01-30 10:52:14 by simonmar]
remove unnecessary cases in static_flags

23 years ago[project @ 2001-01-30 10:50:48 by simonmar]
simonmar [Tue, 30 Jan 2001 10:50:48 +0000 (10:50 +0000)]
[project @ 2001-01-30 10:50:48 by simonmar]
remove CAF List hack; the RTS has support for CAF retension and reversion.