ghc-hetmet.git
23 years ago[project @ 2001-02-20 15:44:26 by simonpj]
simonpj [Tue, 20 Feb 2001 15:44:26 +0000 (15:44 +0000)]
[project @ 2001-02-20 15:44:26 by simonpj]
Eta expansion wibbles
~~~~~~~~~~~~~~~~~~~~~
* Don't eta reduce, and do eta expand,
  data con workers and primops

  Reason: they don't have bindings, so they aren't really
  ordinary variables.

This is a bit of a swamp, provoked by moving CoreSat later,
something I'm beginning to wonder about...

Not are things settled yet -- I think some rules may
not fire that should because of constructor worker/wrapper
issues.  E.g when you have   foldr (:) [] xs = xs

23 years ago[project @ 2001-02-20 15:38:45 by simonpj]
simonpj [Tue, 20 Feb 2001 15:38:45 +0000 (15:38 +0000)]
[project @ 2001-02-20 15:38:45 by simonpj]
Import wibble

23 years ago[project @ 2001-02-20 15:38:27 by simonpj]
simonpj [Tue, 20 Feb 2001 15:38:27 +0000 (15:38 +0000)]
[project @ 2001-02-20 15:38:27 by simonpj]
Layout wibble

23 years ago[project @ 2001-02-20 15:37:42 by simonpj]
simonpj [Tue, 20 Feb 2001 15:37:42 +0000 (15:37 +0000)]
[project @ 2001-02-20 15:37:42 by simonpj]
Add another assert

23 years ago[project @ 2001-02-20 15:36:55 by simonpj]
simonpj [Tue, 20 Feb 2001 15:36:55 +0000 (15:36 +0000)]
[project @ 2001-02-20 15:36:55 by simonpj]
Remove IPName altogether

23 years ago[project @ 2001-02-20 15:35:28 by simonpj]
simonpj [Tue, 20 Feb 2001 15:35:28 +0000 (15:35 +0000)]
[project @ 2001-02-20 15:35:28 by simonpj]
Use tcIfaceType

23 years ago[project @ 2001-02-20 13:15:11 by simonpj]
simonpj [Tue, 20 Feb 2001 13:15:11 +0000 (13:15 +0000)]
[project @ 2001-02-20 13:15:11 by simonpj]
Fix top level float

23 years ago[project @ 2001-02-20 11:04:42 by simonmar]
simonmar [Tue, 20 Feb 2001 11:04:42 +0000 (11:04 +0000)]
[project @ 2001-02-20 11:04:42 by simonmar]
Make the warning package options (-W, -w, -Wall) dynamic.

23 years ago[project @ 2001-02-20 09:55:12 by simonpj]
simonpj [Tue, 20 Feb 2001 09:55:12 +0000 (09:55 +0000)]
[project @ 2001-02-20 09:55:12 by simonpj]
Wibble

23 years ago[project @ 2001-02-20 09:45:57 by simonpj]
simonpj [Tue, 20 Feb 2001 09:45:57 +0000 (09:45 +0000)]
[project @ 2001-02-20 09:45:57 by simonpj]
Import wibbles

23 years ago[project @ 2001-02-20 09:45:30 by simonpj]
simonpj [Tue, 20 Feb 2001 09:45:30 +0000 (09:45 +0000)]
[project @ 2001-02-20 09:45:30 by simonpj]
A bit more on deprecations

23 years ago[project @ 2001-02-20 09:45:12 by simonpj]
simonpj [Tue, 20 Feb 2001 09:45:12 +0000 (09:45 +0000)]
[project @ 2001-02-20 09:45:12 by simonpj]
A bit more on decoupling the prelude

23 years ago[project @ 2001-02-20 09:42:50 by simonpj]
simonpj [Tue, 20 Feb 2001 09:42:50 +0000 (09:42 +0000)]
[project @ 2001-02-20 09:42:50 by simonpj]
Typechecking [TcModule, TcBinds, TcHsSyn, TcInstDcls, TcSimplify]
~~~~~~~~~~~~
* Fix a bug in TcSimplify that broke functional dependencies.
  Interleaving unification and context reduction is trickier
  than I thought.  Comments in the code amplify.

* Fix a functional-dependency bug, that meant that this pgm:
class C a b | a -> b where f :: a -> b

g :: (C a b, Eq b) => a -> Bool
g x = f x == f x
  gave an ambiguity error report.  I'm afraid I've forgotten
  what the problem was.

* Correct the implementation of the monomorphism restriction,
  in TcBinds.generalise.  This fixes Marcin's bug report:
test1 :: Eq a => a -> b -> b
test1 x y = y

test2 = test1 (3::Int)
  Previously we were erroneously inferring test2 :: () -> ()

* Make the "unf_env" that is looped round in TcModule go round
  in a big loop, not just round tcImports.  This matters when
  we have mutually recursive modules, so that the Ids bound in
  the source code may appear in the imports.  Sigh.  But no big
  deal.

  It does mean that you have to be careful not to call isLocalId,
  isDataConId etc, because they consult the IdInfo of an Id, which
  in turn may be determined by the loop-tied unf_env.

23 years ago[project @ 2001-02-20 09:41:48 by simonpj]
simonpj [Tue, 20 Feb 2001 09:41:48 +0000 (09:41 +0000)]
[project @ 2001-02-20 09:41:48 by simonpj]
Deprecations [HscTypes, MkIface, Rename, RnEnv, RnIfaces]
~~~~~~~~~~~~
* Arrange that a change in deprecations is treated as a
  hi-file difference.

* Warn about deprecations at the usage site.  This entailed
  changing HscTypes.GlobalRdrEnv to include deprecations.
  While I was at it, I changed the range of GlobalRdrEnv
  to a data type, GlobalRdrElt, instead a of a pair.

23 years ago[project @ 2001-02-20 09:40:43 by simonpj]
simonpj [Tue, 20 Feb 2001 09:40:45 +0000 (09:40 +0000)]
[project @ 2001-02-20 09:40:43 by simonpj]
Decoupling the Prelude [HsExpr, HsLit, HsPat, ParseUtil, Parser.y, PrelNames,
~~~~~~~~~~~~~~~~~~~~~~  Rename, RnEnv, RnExpr, RnHsSyn, Inst, TcEnv, TcMonad,
TcPat, TcExpr]
The -fno-implicit-prelude flag is meant to arrange that when you write
3
you get
fromInt 3
where 'fromInt' is whatever fromInt is in scope at the top level of
the module being compiled.  Similarly for
* numeric patterns
* n+k patterns
* negation

This used to work, but broke when we made the static/dynamic flag distinction.
It's now tidied up a lot.  Here's the plan:

  - PrelNames contains sugarList :: SugarList, which maps built-in names
    to the RdrName that should replace them.

  - The renamer makes a finite map :: SugarMap, which maps the built-in names
    to the Name of the re-mapped thing

  - The typechecker consults this map via tcLookupSyntaxId when it is doing
    numeric things

At present I've only decoupled numeric syntax, since that is the main demand,
but the scheme is much more robustly extensible than the previous method.

As a result some HsSyn constructors don't need to carry names in them
(notably HsOverLit, NegApp, NPlusKPatIn)

23 years ago[project @ 2001-02-20 09:38:59 by simonpj]
simonpj [Tue, 20 Feb 2001 09:39:00 +0000 (09:39 +0000)]
[project @ 2001-02-20 09:38:59 by simonpj]
Back end changes [CgExpr, ClosureInfo, CoreSat, CoreUtils,
~~~~~~~~~~~~~~~~  CmdLineOpts, HscMain, CoreToStg, StgSyn]
* Move CoreTidy and interface-file dumping *before* CoreSat.
  In this way interface files are not in A-normal form, so
  they are less bulky, and a bit easier to use as input to
  the optimiser.

  So now CoreSat is regarded as a pre-pass to CoreToStg.
  Since CoreTidy pins on utterly-final IdInfo, CoreSat has to
  be very careful not to change the arity of any function.

* CoreSat uses OrdList instead of lists to collect floating binds
  This in turn meant I could simplify the FloatingBind type a bit

* Greatly simplfy the StgBinderInfo data type.  It was
  gathering far more information than we needed.

* Add a flag -fkeep-stg-types, which keeps type abstractions
  and applications in STG code, for the benefit of code generators
  that are typed; notably the .NET ILX code generator.

23 years ago[project @ 2001-02-20 08:57:46 by simonpj]
simonpj [Tue, 20 Feb 2001 08:57:46 +0000 (08:57 +0000)]
[project @ 2001-02-20 08:57:46 by simonpj]
Add fundeps tests

23 years ago[project @ 2001-02-20 03:41:31 by qrczak]
qrczak [Tue, 20 Feb 2001 03:41:31 +0000 (03:41 +0000)]
[project @ 2001-02-20 03:41:31 by qrczak]
Remove unbalanced #endif.

23 years ago[project @ 2001-02-19 16:18:38 by rrt]
rrt [Mon, 19 Feb 2001 16:18:38 +0000 (16:18 +0000)]
[project @ 2001-02-19 16:18:38 by rrt]
Use Sleep under mingw rather than sleep (which is obsolete), and try using
fork under cygwin (it should work by now, shurely...).

23 years ago[project @ 2001-02-19 16:10:23 by rrt]
rrt [Mon, 19 Feb 2001 16:10:23 +0000 (16:10 +0000)]
[project @ 2001-02-19 16:10:23 by rrt]
Don't declare unused struct termios on mingwin.

23 years ago[project @ 2001-02-19 16:07:48 by rrt]
rrt [Mon, 19 Feb 2001 16:07:48 +0000 (16:07 +0000)]
[project @ 2001-02-19 16:07:48 by rrt]
Move if #ifndefs so that no code is compiled on win32; the code that was
compiled was doing nothing useful, and probably shouldn't have been.

23 years ago[project @ 2001-02-19 14:54:48 by rrt]
rrt [Mon, 19 Feb 2001 14:54:48 +0000 (14:54 +0000)]
[project @ 2001-02-19 14:54:48 by rrt]
Add -mno-cygwin to CPPFLAGS on i386-unknown-mingw32 to stop configure.h
getting lots of bogus headers that aren't there. I'm not at all sure why
this hasn't caused problems before...

23 years ago[project @ 2001-02-19 12:35:31 by simonmar]
simonmar [Mon, 19 Feb 2001 12:35:31 +0000 (12:35 +0000)]
[project @ 2001-02-19 12:35:31 by simonmar]
fix the GHC_HAPPY_OPTS hack to correctly detect happy 1.10

23 years ago[project @ 2001-02-19 12:13:49 by simonmar]
simonmar [Mon, 19 Feb 2001 12:13:49 +0000 (12:13 +0000)]
[project @ 2001-02-19 12:13:49 by simonmar]
Rather than implement -K (which would probably need another primop),
simply bump the maximum stack size to 8M.  It dynamically grows
anyhow.

23 years ago[project @ 2001-02-19 11:38:55 by sewardj]
sewardj [Mon, 19 Feb 2001 11:38:55 +0000 (11:38 +0000)]
[project @ 2001-02-19 11:38:55 by sewardj]
Expand on comments re StString lifting activity

23 years ago[project @ 2001-02-19 10:15:54 by sewardj]
sewardj [Mon, 19 Feb 2001 10:15:54 +0000 (10:15 +0000)]
[project @ 2001-02-19 10:15:54 by sewardj]
Fix two bugs exposed when trying to boot HEAD on sparc with NCG and -O:

1.  StScratchWords on sparc were in the wrong place; they were
    immediately above %fp and should have been immediately below.
    Fixed.  Also removed a suspicious-looking "+1" in the x86
    version of same.

2.  (Potentially affects all platforms): Lift strings out from
    top-level literal data, and place them at the end of the block.
    The motivating example (bug) was:

     Stix:
        (DataSegment)
        Bogon.ping_closure :
        (Data P_ Addr.A#_static_info)
        (Data StgAddr (Str `alalal'))
        (Data P_ (0))
     results in:
        .data
                .align 8
        .global Bogon_ping_closure
        Bogon_ping_closure:
                .long   Addr_Azh_static_info
                .long   .Ln1a8
        .Ln1a8:
                .byte   0x61
                .byte   0x6C
                .byte   0x61
                .byte   0x6C
                .byte   0x61
                .byte   0x6C
                .byte   0x00
                .long   0
   ie, the Str is planted in-line, when what we really meant was to place
   a _reference_ to the string there.  This is Way Wrong (tm).  Fixed.

23 years ago[project @ 2001-02-19 09:06:23 by qrczak]
qrczak [Mon, 19 Feb 2001 09:06:23 +0000 (09:06 +0000)]
[project @ 2001-02-19 09:06:23 by qrczak]
Oops, I broke it yesterday; don't use autoheader.
(I don't see my yesterday's commit log. I changed #define to #undef
in autoconf templates.)

23 years ago[project @ 2001-02-18 17:22:49 by qrczak]
qrczak [Sun, 18 Feb 2001 17:22:50 +0000 (17:22 +0000)]
[project @ 2001-02-18 17:22:49 by qrczak]
Change #define to #undef in autoconf templates.

23 years ago[project @ 2001-02-18 14:45:15 by qrczak]
qrczak [Sun, 18 Feb 2001 14:45:15 +0000 (14:45 +0000)]
[project @ 2001-02-18 14:45:15 by qrczak]
Recent Unicode and future ISO-10646 finally decided that the character
code space ends at U+10FFFF. Let ghc follow the rules: maxBound::Char
is now '\x10FFFF', etc.

23 years ago[project @ 2001-02-17 20:21:50 by sebc]
sebc [Sat, 17 Feb 2001 20:21:50 +0000 (20:21 +0000)]
[project @ 2001-02-17 20:21:50 by sebc]
The LIBM variable was between two Readline related variables. Cleaned up.

23 years ago[project @ 2001-02-17 19:52:56 by sebc]
sebc [Sat, 17 Feb 2001 19:52:56 +0000 (19:52 +0000)]
[project @ 2001-02-17 19:52:56 by sebc]
Make LIBM be detected by autoconf.

23 years ago[project @ 2001-02-16 17:35:01 by simonmar]
simonmar [Fri, 16 Feb 2001 17:35:01 +0000 (17:35 +0000)]
[project @ 2001-02-16 17:35:01 by simonmar]
Today's doc hacking.

23 years ago[project @ 2001-02-16 12:07:10 by sewardj]
sewardj [Fri, 16 Feb 2001 12:07:10 +0000 (12:07 +0000)]
[project @ 2001-02-16 12:07:10 by sewardj]
Remove ghc-$(ProjectVersion) from GhcBinDistPrlScripts, since it's not
a perl script any more.

23 years ago[project @ 2001-02-16 11:39:37 by sewardj]
sewardj [Fri, 16 Feb 2001 11:39:37 +0000 (11:39 +0000)]
[project @ 2001-02-16 11:39:37 by sewardj]
Remove ghc-stats from GhcBinDistLibPrlScripts.

23 years ago[project @ 2001-02-16 09:53:51 by simonmar]
simonmar [Fri, 16 Feb 2001 09:53:51 +0000 (09:53 +0000)]
[project @ 2001-02-16 09:53:51 by simonmar]
deLam the contents of an _scc_: they don't disappear at code
generation time.

23 years ago[project @ 2001-02-15 22:34:48 by qrczak]
qrczak [Thu, 15 Feb 2001 22:34:48 +0000 (22:34 +0000)]
[project @ 2001-02-15 22:34:48 by qrczak]
Use ${1+"$@"} instead of "$@". How stupid are those shells.

23 years ago[project @ 2001-02-15 19:43:18 by qrczak]
qrczak [Thu, 15 Feb 2001 19:43:18 +0000 (19:43 +0000)]
[project @ 2001-02-15 19:43:18 by qrczak]
Use "$@" instead of $* to pass commandline arguments safely.

23 years ago[project @ 2001-02-15 17:33:53 by simonmar]
simonmar [Thu, 15 Feb 2001 17:33:53 +0000 (17:33 +0000)]
[project @ 2001-02-15 17:33:53 by simonmar]
More documentation rewriting...  I'm particularly proud of the "flag
reference" section, please check it out.

23 years ago[project @ 2001-02-15 17:22:15 by sewardj]
sewardj [Thu, 15 Feb 2001 17:22:15 +0000 (17:22 +0000)]
[project @ 2001-02-15 17:22:15 by sewardj]
Correct usage info for tryPutMVar#.

23 years ago[project @ 2001-02-15 14:30:35 by sewardj]
sewardj [Thu, 15 Feb 2001 14:30:35 +0000 (14:30 +0000)]
[project @ 2001-02-15 14:30:35 by sewardj]
VoidRep call/return support for interpreted code.

23 years ago[project @ 2001-02-15 14:27:36 by sewardj]
sewardj [Thu, 15 Feb 2001 14:30:07 +0000 (14:30 +0000)]
[project @ 2001-02-15 14:27:36 by sewardj]
VoidRep call/return support for the interpreter.

23 years ago[project @ 2001-02-15 12:38:35 by simonmar]
simonmar [Thu, 15 Feb 2001 12:38:35 +0000 (12:38 +0000)]
[project @ 2001-02-15 12:38:35 by simonmar]
re-order the WithHc and WithGhc tests: now if you specify
--with-ghc=<ghc>, then WithHc also gets <ghc> if you don't set it
explicitly.  Previously it got whatever ghc was in the PATH, which
would fail if there wasn't a ghc in the PATH at all.

23 years ago[project @ 2001-02-15 10:02:43 by simonmar]
simonmar [Thu, 15 Feb 2001 10:02:43 +0000 (10:02 +0000)]
[project @ 2001-02-15 10:02:43 by simonmar]
changes to support tryPutMVar which I forgot in the main commit.

23 years ago[project @ 2001-02-14 14:28:49 by rrt]
rrt [Wed, 14 Feb 2001 14:28:49 +0000 (14:28 +0000)]
[project @ 2001-02-14 14:28:49 by rrt]
Remove -l from library name in libraries list (oops!)

23 years ago[project @ 2001-02-14 14:14:55 by simonmar]
simonmar [Wed, 14 Feb 2001 14:14:55 +0000 (14:14 +0000)]
[project @ 2001-02-14 14:14:55 by simonmar]
simple tryPutMVar test.

23 years ago[project @ 2001-02-14 14:02:58 by simonmar]
simonmar [Wed, 14 Feb 2001 14:02:58 +0000 (14:02 +0000)]
[project @ 2001-02-14 14:02:58 by simonmar]
Tidy the type we get back from typecheckExpr.

23 years ago[project @ 2001-02-14 13:56:50 by simonmar]
simonmar [Wed, 14 Feb 2001 13:56:50 +0000 (13:56 +0000)]
[project @ 2001-02-14 13:56:50 by simonmar]
add tryPutMVarzh_fast

23 years ago[project @ 2001-02-14 12:59:34 by simonmar]
simonmar [Wed, 14 Feb 2001 12:59:35 +0000 (12:59 +0000)]
[project @ 2001-02-14 12:59:34 by simonmar]
- make putMVar block rather than raise an exception when it encounters a
  full MVar (to match the semantics in our recent paper on async excpetions).

- add tryPutMVar, a non-blocking version of putMVar.

23 years ago[project @ 2001-02-14 12:43:24 by rrt]
rrt [Wed, 14 Feb 2001 12:43:24 +0000 (12:43 +0000)]
[project @ 2001-02-14 12:43:24 by rrt]
Turn off linking under Windows until it's fixed (that's linking, there's no
hope of fixing Windows).

23 years ago[project @ 2001-02-14 12:41:15 by rrt]
rrt [Wed, 14 Feb 2001 12:41:15 +0000 (12:41 +0000)]
[project @ 2001-02-14 12:41:15 by rrt]
Add winmm to libraries for RTS under Windows, where it's now used for
threadDelay.

23 years ago[project @ 2001-02-14 12:37:10 by rrt]
rrt [Wed, 14 Feb 2001 12:37:10 +0000 (12:37 +0000)]
[project @ 2001-02-14 12:37:10 by rrt]
Remove inadvertently committed debugging gumph.

23 years ago[project @ 2001-02-14 12:36:06 by rrt]
rrt [Wed, 14 Feb 2001 12:36:06 +0000 (12:36 +0000)]
[project @ 2001-02-14 12:36:06 by rrt]
Make isDirectory work on Windows (dirent.d_name is a char *, not a char []);
also getDirectoryContents (readdir helpfully sets errno to ENOENT when we've
read the last entry, rather than leaving it at 0).

Windows is *not* the way of the future.

23 years ago[project @ 2001-02-14 12:32:48 by rrt]
rrt [Wed, 14 Feb 2001 12:32:48 +0000 (12:32 +0000)]
[project @ 2001-02-14 12:32:48 by rrt]
Remove an out-of-date comment and correct a Windows wibble.

23 years ago[project @ 2001-02-14 11:54:33 by simonmar]
simonmar [Wed, 14 Feb 2001 11:54:33 +0000 (11:54 +0000)]
[project @ 2001-02-14 11:54:33 by simonmar]
PrimOp dependency wibble

23 years ago[project @ 2001-02-14 11:36:07 by sewardj]
sewardj [Wed, 14 Feb 2001 11:36:07 +0000 (11:36 +0000)]
[project @ 2001-02-14 11:36:07 by sewardj]
Remove support for directly loading .so's/.DLL's from the cmd line
in interactive mode and instead support the -lfooble mechanism.

23 years ago[project @ 2001-02-14 11:03:59 by sewardj]
sewardj [Wed, 14 Feb 2001 11:03:59 +0000 (11:03 +0000)]
[project @ 2001-02-14 11:03:59 by sewardj]
Show error messages generated from failed .so/.DLL load attempts.

23 years ago[project @ 2001-02-14 11:02:36 by sewardj]
sewardj [Wed, 14 Feb 2001 11:02:36 +0000 (11:02 +0000)]
[project @ 2001-02-14 11:02:36 by sewardj]
Allow addDLL to return error message strings to caller.

23 years ago[project @ 2001-02-14 10:33:05 by simonmar]
simonmar [Wed, 14 Feb 2001 10:33:05 +0000 (10:33 +0000)]
[project @ 2001-02-14 10:33:05 by simonmar]
Fix for tail-calling on HP-UX, and a lengthy explanation, thanks to
Andy Bennet <andy_bennet@hp.com>.

23 years ago[project @ 2001-02-14 09:50:00 by simonmar]
simonmar [Wed, 14 Feb 2001 09:50:00 +0000 (09:50 +0000)]
[project @ 2001-02-14 09:50:00 by simonmar]
add -ldl to SRC_HC_OPTS if GhcWithInterpreter=YES and HaveLibDL=YES.

23 years ago[project @ 2001-02-13 18:37:53 by qrczak]
qrczak [Tue, 13 Feb 2001 18:37:53 +0000 (18:37 +0000)]
[project @ 2001-02-13 18:37:53 by qrczak]
Fix evalExpr's comment: it's Bool again, not Maybe.

23 years ago[project @ 2001-02-13 18:08:44 by simonmar]
simonmar [Tue, 13 Feb 2001 18:08:44 +0000 (18:08 +0000)]
[project @ 2001-02-13 18:08:44 by simonmar]
beginnings of a documentation revamp

23 years ago[project @ 2001-02-13 18:01:22 by simonmar]
simonmar [Tue, 13 Feb 2001 18:01:23 +0000 (18:01 +0000)]
[project @ 2001-02-13 18:01:22 by simonmar]
style nitpicking

23 years ago[project @ 2001-02-13 17:48:25 by sewardj]
sewardj [Tue, 13 Feb 2001 17:48:25 +0000 (17:48 +0000)]
[project @ 2001-02-13 17:48:25 by sewardj]
Improve detection and rejection of unboxed tuples.

23 years ago[project @ 2001-02-13 17:40:37 by qrczak]
qrczak [Tue, 13 Feb 2001 17:40:37 +0000 (17:40 +0000)]
[project @ 2001-02-13 17:40:37 by qrczak]
No, please don't pass hsc2hs/Main.hs through cpp :-)
It corrupts __GLASGOW_HASKELL__ in strings (because of string gaps).

I moved the system-dependent thing to KludgedSystem (it should be
named better as it no longer contains only the system function)
so it does not require cpp.

(I keep it in sync with QForeign, which is easier if the same source
can work in both places.)

23 years ago[project @ 2001-02-13 17:13:39 by sewardj]
sewardj [Tue, 13 Feb 2001 17:13:39 +0000 (17:13 +0000)]
[project @ 2001-02-13 17:13:39 by sewardj]
* Turn off -O when --interactive is engaged.
* Check and abort if --interactive is used together with any non-std Way.

23 years ago[project @ 2001-02-13 16:58:34 by simonmar]
simonmar [Tue, 13 Feb 2001 16:58:34 +0000 (16:58 +0000)]
[project @ 2001-02-13 16:58:34 by simonmar]
markup fix

23 years ago[project @ 2001-02-13 16:11:27 by rrt]
rrt [Tue, 13 Feb 2001 16:11:27 +0000 (16:11 +0000)]
[project @ 2001-02-13 16:11:27 by rrt]
Make work again on Windows. Main.hs has to be passed through CPP now.

23 years ago[project @ 2001-02-13 15:53:10 by qrczak]
qrczak [Tue, 13 Feb 2001 15:53:10 +0000 (15:53 +0000)]
[project @ 2001-02-13 15:53:10 by qrczak]
Main.hs is not passed through cpp, so I moved #ifdefed defaultCompiler
to module KludgedSystem which is passed through cpp.

23 years ago[project @ 2001-02-13 15:51:57 by sewardj]
sewardj [Tue, 13 Feb 2001 15:51:57 +0000 (15:51 +0000)]
[project @ 2001-02-13 15:51:57 by sewardj]
In interactive mode, pre-load into the runtime linker any .so/.o/.DLL
files specified on the command line.

23 years ago[project @ 2001-02-13 15:23:33 by rrt]
rrt [Tue, 13 Feb 2001 15:23:33 +0000 (15:23 +0000)]
[project @ 2001-02-13 15:23:33 by rrt]
Remove typos, and NO_LARGE_TUPLES, which was the wrong way round anyway (so
we never had large tuples).

23 years ago[project @ 2001-02-13 15:12:42 by rrt]
rrt [Tue, 13 Feb 2001 15:12:42 +0000 (15:12 +0000)]
[project @ 2001-02-13 15:12:42 by rrt]
Update tests not to use deprecated features (except that I had to write
Exception.catch everywhere instead of catch for some reason, because ghc
complained that catch was ambiguous (Exception. vs PrelException.).

Also add some cases to make mingwin work.

23 years ago[project @ 2001-02-13 15:09:02 by rrt]
rrt [Tue, 13 Feb 2001 15:09:02 +0000 (15:09 +0000)]
[project @ 2001-02-13 15:09:02 by rrt]
Make it work on Cygwin. Story of my life.

23 years ago[project @ 2001-02-13 14:34:40 by simonmar]
simonmar [Tue, 13 Feb 2001 14:34:40 +0000 (14:34 +0000)]
[project @ 2001-02-13 14:34:40 by simonmar]
oops, back out accidental changes

23 years ago[project @ 2001-02-13 14:18:49 by simonmar]
simonmar [Tue, 13 Feb 2001 14:18:49 +0000 (14:18 +0000)]
[project @ 2001-02-13 14:18:49 by simonmar]
Don't build HS*.o for ways other than the normal way.

23 years ago[project @ 2001-02-13 13:11:07 by sewardj]
sewardj [Tue, 13 Feb 2001 13:11:07 +0000 (13:11 +0000)]
[project @ 2001-02-13 13:11:07 by sewardj]
Add more general support for linking .so's into the running image.

23 years ago[project @ 2001-02-13 13:10:14 by sewardj]
sewardj [Tue, 13 Feb 2001 13:10:14 +0000 (13:10 +0000)]
[project @ 2001-02-13 13:10:14 by sewardj]
Move library names from extra_ld_opts to extra_libraries.

23 years ago[project @ 2001-02-13 13:09:36 by sewardj]
sewardj [Tue, 13 Feb 2001 13:09:36 +0000 (13:09 +0000)]
[project @ 2001-02-13 13:09:36 by sewardj]
Properly handle loading .so's in interactive mode.

23 years ago[project @ 2001-02-13 11:11:06 by simonmar]
simonmar [Tue, 13 Feb 2001 11:11:06 +0000 (11:11 +0000)]
[project @ 2001-02-13 11:11:06 by simonmar]
make this compile with profiling on (it probably won't work, though).

23 years ago[project @ 2001-02-13 11:10:28 by rrt]
rrt [Tue, 13 Feb 2001 11:10:28 +0000 (11:10 +0000)]
[project @ 2001-02-13 11:10:28 by rrt]
Use MM timers on Windows even when not profiling, as threadDelay needs it
to work properly.

Flush stdout when quitting (in RtsUtils), as Linux glibc probably works now,
and it reveals error messages that are otherwise truncated when one's
program segfaults.

23 years ago[project @ 2001-02-13 10:57:24 by simonmar]
simonmar [Tue, 13 Feb 2001 10:57:24 +0000 (10:57 +0000)]
[project @ 2001-02-13 10:57:24 by simonmar]
do the dlopen() check a better way.

23 years ago[project @ 2001-02-13 10:47:33 by simonmar]
simonmar [Tue, 13 Feb 2001 10:47:34 +0000 (10:47 +0000)]
[project @ 2001-02-13 10:47:33 by simonmar]
update the configure system to find dlopen(), whether it lives in -ldl
or in the standard C library.

I'd like to take this opportunity to throw a few bricks in the general
direction of whoever invented this godforsaken tool.

23 years ago[project @ 2001-02-13 10:12:45 by sewardj]
sewardj [Tue, 13 Feb 2001 10:12:45 +0000 (10:12 +0000)]
[project @ 2001-02-13 10:12:45 by sewardj]
PrelCError_HC_OPTS = +RTS -K4m -RTS

23 years ago[project @ 2001-02-13 09:35:45 by simonmar]
simonmar [Tue, 13 Feb 2001 09:35:45 +0000 (09:35 +0000)]
[project @ 2001-02-13 09:35:45 by simonmar]
compile ByteCodeItbls with -fvia-C

23 years ago[project @ 2001-02-12 16:40:34 by sewardj]
sewardj [Mon, 12 Feb 2001 16:40:34 +0000 (16:40 +0000)]
[project @ 2001-02-12 16:40:34 by sewardj]
Free the local symbol table at the end of the ocResolve_ phase; we
won't need it after that.

23 years ago[project @ 2001-02-12 16:08:48 by simonmar]
simonmar [Mon, 12 Feb 2001 16:08:48 +0000 (16:08 +0000)]
[project @ 2001-02-12 16:08:48 by simonmar]
comment typo

23 years ago[project @ 2001-02-12 13:36:49 by sewardj]
sewardj [Mon, 12 Feb 2001 13:36:49 +0000 (13:36 +0000)]
[project @ 2001-02-12 13:36:49 by sewardj]
Fix up inter-package dependencies so the run-time linker doesn't barf.

23 years ago[project @ 2001-02-12 13:33:46 by simonmar]
simonmar [Mon, 12 Feb 2001 13:33:47 +0000 (13:33 +0000)]
[project @ 2001-02-12 13:33:46 by simonmar]
Clean up temporary files between compilations, but cache preprocessed
modules that we might re-use.

23 years ago[project @ 2001-02-12 13:30:15 by sewardj]
sewardj [Mon, 12 Feb 2001 13:30:15 +0000 (13:30 +0000)]
[project @ 2001-02-12 13:30:15 by sewardj]
ocGetNames_ELF: don't load symbols in "special" (bogus!) sections >=
SHN_LORESERVE, since they don't exist.

23 years ago[project @ 2001-02-12 13:15:59 by sewardj]
sewardj [Mon, 12 Feb 2001 13:15:59 +0000 (13:15 +0000)]
[project @ 2001-02-12 13:15:59 by sewardj]
Make lang depend on data (since it does, really.)

23 years ago[project @ 2001-02-12 13:14:13 by simonmar]
simonmar [Mon, 12 Feb 2001 13:14:13 +0000 (13:14 +0000)]
[project @ 2001-02-12 13:14:13 by simonmar]
check for ThreadRelocated when unblocking a thread blocked on
delivering an async exception.

23 years ago[project @ 2001-02-12 13:13:29 by sebc]
sebc [Mon, 12 Feb 2001 13:13:29 +0000 (13:13 +0000)]
[project @ 2001-02-12 13:13:29 by sebc]
Add support for MacOS X.

23 years ago[project @ 2001-02-12 13:03:17 by sewardj]
sewardj [Mon, 12 Feb 2001 13:03:17 +0000 (13:03 +0000)]
[project @ 2001-02-12 13:03:17 by sewardj]
include Hash.h

23 years ago[project @ 2001-02-12 12:46:23 by sewardj]
sewardj [Mon, 12 Feb 2001 12:46:23 +0000 (12:46 +0000)]
[project @ 2001-02-12 12:46:23 by sewardj]
Teach the runtime linker about local symbols, so that we don't have to
rely on batch linkers to resolve local symbols in libraries at
library-build-time.

23 years ago[project @ 2001-02-12 12:44:11 by sewardj]
sewardj [Mon, 12 Feb 2001 12:44:11 +0000 (12:44 +0000)]
[project @ 2001-02-12 12:44:11 by sewardj]
debug print wibble

23 years ago[project @ 2001-02-12 12:25:50 by simonmar]
simonmar [Mon, 12 Feb 2001 12:25:50 +0000 (12:25 +0000)]
[project @ 2001-02-12 12:25:50 by simonmar]
#include "Linker.h"

23 years ago[project @ 2001-02-12 12:22:01 by simonmar]
simonmar [Mon, 12 Feb 2001 12:22:01 +0000 (12:22 +0000)]
[project @ 2001-02-12 12:22:01 by simonmar]
add some assertions

23 years ago[project @ 2001-02-12 12:08:44 by sewardj]
sewardj [Mon, 12 Feb 2001 12:08:44 +0000 (12:08 +0000)]
[project @ 2001-02-12 12:08:44 by sewardj]
GNU ld 2.9.1 on sparc can't handle object files lacking a symbol table.
Give it a bogus symbol to keep it happy (a.k.a a workaround.)

23 years ago[project @ 2001-02-12 11:39:48 by sewardj]
sewardj [Mon, 12 Feb 2001 11:39:48 +0000 (11:39 +0000)]
[project @ 2001-02-12 11:39:48 by sewardj]
Check for unboxed tuples and barf, rather than silently generate bogus
code.  (There will be a proper user-level check higher up, too; this is
just for our sanity.)

23 years ago[project @ 2001-02-12 11:38:49 by sewardj]
sewardj [Mon, 12 Feb 2001 11:38:49 +0000 (11:38 +0000)]
[project @ 2001-02-12 11:38:49 by sewardj]
The linker is initialised from the Haskell world now.

23 years ago[project @ 2001-02-12 10:15:19 by simonmar]
simonmar [Mon, 12 Feb 2001 10:15:19 +0000 (10:15 +0000)]
[project @ 2001-02-12 10:15:19 by simonmar]
- Don't need -optc-DGHCI now
- a couple of wibbles