ghc-hetmet.git
23 years ago[project @ 2000-07-13 15:45:55 by simonmar]
simonmar [Thu, 13 Jul 2000 15:45:55 +0000 (15:45 +0000)]
[project @ 2000-07-13 15:45:55 by simonmar]
Take the README for a binary dist from the project directory, not fptools.

23 years ago[project @ 2000-07-13 15:44:40 by simonmar]
simonmar [Thu, 13 Jul 2000 15:44:40 +0000 (15:44 +0000)]
[project @ 2000-07-13 15:44:40 by simonmar]
update, and make less GHC-specific

23 years ago[project @ 2000-07-13 14:45:13 by simonmar]
simonmar [Thu, 13 Jul 2000 14:45:13 +0000 (14:45 +0000)]
[project @ 2000-07-13 14:45:13 by simonmar]
update to match reality; try to be a bit more helpful

23 years ago[project @ 2000-07-13 09:22:26 by sewardj]
sewardj [Thu, 13 Jul 2000 09:22:26 +0000 (09:22 +0000)]
[project @ 2000-07-13 09:22:26 by sewardj]
Zap yet another bogon in x86 floating args to ccalls.

23 years ago[project @ 2000-07-13 09:17:57 by michaelw]
michaelw [Thu, 13 Jul 2000 09:17:57 +0000 (09:17 +0000)]
[project @ 2000-07-13 09:17:57 by michaelw]
more changes to FPTOOLS_GHC_VERSION:
* fixed bug in too-many-args case
* reworked regexp for versions

23 years ago[project @ 2000-07-13 08:56:42 by sewardj]
sewardj [Thu, 13 Jul 2000 08:56:42 +0000 (08:56 +0000)]
[project @ 2000-07-13 08:56:42 by sewardj]
sparc NCG is now enabled by default for non-opt compilation.

23 years ago[project @ 2000-07-13 08:49:24 by sewardj]
sewardj [Thu, 13 Jul 2000 08:49:24 +0000 (08:49 +0000)]
[project @ 2000-07-13 08:49:24 by sewardj]
Reg needs to be imported non-abstractly for sparc.

23 years ago[project @ 2000-07-12 13:04:31 by sewardj]
sewardj [Wed, 12 Jul 2000 13:04:31 +0000 (13:04 +0000)]
[project @ 2000-07-12 13:04:31 by sewardj]
Make the x86 NCG work again following recent sparc hackage.

Also, fix the x86 bits pertaining to the floats-promoted-to-doubles-
in-ccalls problem.  So this problem should no longer exist on x86
or sparc via NCG.

23 years ago[project @ 2000-07-12 09:58:49 by simonmar]
simonmar [Wed, 12 Jul 2000 09:58:49 +0000 (09:58 +0000)]
[project @ 2000-07-12 09:58:49 by simonmar]
use Maybe.isJust instead of proprietary verison.

23 years ago[project @ 2000-07-11 23:02:39 by michaelw]
michaelw [Tue, 11 Jul 2000 23:02:39 +0000 (23:02 +0000)]
[project @ 2000-07-11 23:02:39 by michaelw]
added Debian location to DocBook catalog test

23 years ago[project @ 2000-07-11 21:29:46 by michaelw]
michaelw [Tue, 11 Jul 2000 21:29:46 +0000 (21:29 +0000)]
[project @ 2000-07-11 21:29:46 by michaelw]
typo

23 years ago[project @ 2000-07-11 21:25:37 by michaelw]
michaelw [Tue, 11 Jul 2000 21:25:37 +0000 (21:25 +0000)]
[project @ 2000-07-11 21:25:37 by michaelw]
updated comments

23 years ago[project @ 2000-07-11 20:45:29 by panne]
panne [Tue, 11 Jul 2000 20:45:29 +0000 (20:45 +0000)]
[project @ 2000-07-11 20:45:29 by panne]
Hash MachLabel, too

23 years ago[project @ 2000-07-11 19:28:34 by panne]
panne [Tue, 11 Jul 2000 19:28:34 +0000 (19:28 +0000)]
[project @ 2000-07-11 19:28:34 by panne]
Replace RcFloating with RcFloat/RcDouble. I'm not exactly sure what
I'm doing here, so somebody else should better have a look.

23 years ago[project @ 2000-07-11 19:17:20 by panne]
panne [Tue, 11 Jul 2000 19:17:20 +0000 (19:17 +0000)]
[project @ 2000-07-11 19:17:20 by panne]
* linux_TARGET_ARCH => i386_TARGET_ARCH
* move callClobberedRegs into safety in front of the register
  #define-orgy (what the ... is this cpp-ery for? %-]

23 years ago[project @ 2000-07-11 16:41:19 by simonmar]
simonmar [Tue, 11 Jul 2000 16:41:19 +0000 (16:41 +0000)]
[project @ 2000-07-11 16:41:19 by simonmar]
reinstate used import

23 years ago[project @ 2000-07-11 16:24:57 by simonmar]
simonmar [Tue, 11 Jul 2000 16:38:50 +0000 (16:38 +0000)]
[project @ 2000-07-11 16:24:57 by simonmar]
remove unused imports

23 years ago[project @ 2000-07-11 16:12:11 by simonmar]
simonmar [Tue, 11 Jul 2000 16:12:59 +0000 (16:12 +0000)]
[project @ 2000-07-11 16:12:11 by simonmar]
remove unused imports

23 years ago[project @ 2000-07-11 16:04:38 by simonmar]
simonmar [Tue, 11 Jul 2000 16:04:38 +0000 (16:04 +0000)]
[project @ 2000-07-11 16:04:38 by simonmar]
remove unused imports

23 years ago[project @ 2000-07-11 16:03:37 by simonmar]
simonmar [Tue, 11 Jul 2000 16:03:37 +0000 (16:03 +0000)]
[project @ 2000-07-11 16:03:37 by simonmar]
remove unused imports; misc cleanup

23 years ago[project @ 2000-07-11 15:58:26 by simonmar]
simonmar [Tue, 11 Jul 2000 15:58:26 +0000 (15:58 +0000)]
[project @ 2000-07-11 15:58:26 by simonmar]
remove unused imports; misc cleanup

23 years ago[project @ 2000-07-11 15:57:45 by simonmar]
simonmar [Tue, 11 Jul 2000 15:57:45 +0000 (15:57 +0000)]
[project @ 2000-07-11 15:57:45 by simonmar]
remove unused imports

23 years ago[project @ 2000-07-11 15:57:11 by simonmar]
simonmar [Tue, 11 Jul 2000 15:57:11 +0000 (15:57 +0000)]
[project @ 2000-07-11 15:57:11 by simonmar]
use MachLabel rather than MachLitLit for compiling foreign label and
foreign export dynamic.

23 years ago[project @ 2000-07-11 15:44:04 by simonmar]
simonmar [Tue, 11 Jul 2000 15:44:04 +0000 (15:44 +0000)]
[project @ 2000-07-11 15:44:04 by simonmar]
fix typo

23 years ago[project @ 2000-07-11 15:30:30 by simonmar]
simonmar [Tue, 11 Jul 2000 15:30:30 +0000 (15:30 +0000)]
[project @ 2000-07-11 15:30:30 by simonmar]
undo what appears to be an accidental commit

23 years ago[project @ 2000-07-11 15:26:33 by sewardj]
sewardj [Tue, 11 Jul 2000 15:26:33 +0000 (15:26 +0000)]
[project @ 2000-07-11 15:26:33 by sewardj]
Fix up the sparc native code generator.  Mostly dull stuff.  Notable
changes:

* Cleaned up ccall mechanism for sparc somewhat.

* Rearranged assignment of sparc floating point registers (includes/MachRegs.h)
  so the NCG's register allocator can handle the double-single pairing
  issue without modification.  Split VirtualRegF into VirtualRegF and
  VirtualRegD, and split RcFloating into RcFloat and RcDouble.  Net effect
  is that there are now three register classes -- int, float and double,
  and we pretend that sparc has some float and some double real regs.

* (A fix for all platforms): propagate MachFloats through as StFloats,
  not StDoubles.  Amazingly, until now literal floats had been converted
  to and treated as doubles, including in ccalls.

23 years ago[project @ 2000-07-11 12:17:02 by rrt]
rrt [Tue, 11 Jul 2000 12:17:02 +0000 (12:17 +0000)]
[project @ 2000-07-11 12:17:02 by rrt]
Test completed, file deleted.

23 years ago[project @ 2000-07-11 10:47:06 by simonmar]
simonmar [Tue, 11 Jul 2000 10:47:06 +0000 (10:47 +0000)]
[project @ 2000-07-11 10:47:06 by simonmar]
New autoconf tests for ghc version from Michael Weber, with minor
modifications by me.

23 years ago[project @ 2000-07-11 08:43:35 by simonmar]
simonmar [Tue, 11 Jul 2000 08:43:35 +0000 (08:43 +0000)]
[project @ 2000-07-11 08:43:35 by simonmar]
workaround for strange gcc-ism: elide 'popl %edx' in the epilogue.

23 years ago[project @ 2000-07-10 16:56:56 by rrt]
rrt [Mon, 10 Jul 2000 16:56:56 +0000 (16:56 +0000)]
[project @ 2000-07-10 16:56:56 by rrt]
Test file; will shortly be removed.

23 years ago[project @ 2000-07-10 16:15:33 by rrt]
rrt [Mon, 10 Jul 2000 16:15:36 +0000 (16:15 +0000)]
[project @ 2000-07-10 16:15:33 by rrt]
Removed carriage returns (\r) from source files. Please don't check in such
things; they can cause problems on Cygwin (funnily enough). I'm looking into
how to avoid commiting carriage returns when working under Windows.

23 years ago[project @ 2000-07-09 16:17:10 by panne]
panne [Sun, 9 Jul 2000 16:17:10 +0000 (16:17 +0000)]
[project @ 2000-07-09 16:17:10 by panne]
Third attempt by two people trying to get a simple fprintf right
again...   :-}

23 years ago[project @ 2000-07-09 16:06:28 by panne]
panne [Sun, 9 Jul 2000 16:06:28 +0000 (16:06 +0000)]
[project @ 2000-07-09 16:06:28 by panne]
Install HsStd.h, stgio.h, stgerror.h, and fileObject.h, too. Hmmm,
this looks not particularly nice, perhaps we should merge those into a
single HsStd.h some day.

23 years ago[project @ 2000-07-09 16:00:55 by panne]
panne [Sun, 9 Jul 2000 16:00:55 +0000 (16:00 +0000)]
[project @ 2000-07-09 16:00:55 by panne]
By definition (sec. 7.3 in the H98 report), userError raises an
IOError, so Prelude.catch should catch UserError exceptions, too.
Apart from not conforming to the report, without this patch GHC's
typechecker falls straight on its face.

23 years ago[project @ 2000-07-08 23:08:02 by panne]
panne [Sat, 8 Jul 2000 23:08:02 +0000 (23:08 +0000)]
[project @ 2000-07-08 23:08:02 by panne]
Synched section on packages with new generalized package file format

23 years ago[project @ 2000-07-08 23:06:46 by panne]
panne [Sat, 8 Jul 2000 23:06:46 +0000 (23:06 +0000)]
[project @ 2000-07-08 23:06:46 by panne]
Generalized the package file format a little bit: include directories,
include files, and options are now lists of Strings.

23 years ago[project @ 2000-07-08 19:35:42 by panne]
panne [Sat, 8 Jul 2000 19:35:42 +0000 (19:35 +0000)]
[project @ 2000-07-08 19:35:42 by panne]
After the last fix in PprAbs.ppr_amode, we now need a cast from
StgClosure* to P_ in UPD_FRAME_UPDATEE. I'm not sure if this is the
nicest way to fix this, CgCon.cgReturnDataCon is another candidate. It
looks a little bit like PrimRep distinguishes not enough between the
different kind of pointers (there's no alternative for L_).

23 years ago[project @ 2000-07-08 18:17:40 by panne]
panne [Sat, 8 Jul 2000 18:17:40 +0000 (18:17 +0000)]
[project @ 2000-07-08 18:17:40 by panne]
Fixed Show instance for Exception

23 years ago[project @ 2000-07-08 17:04:17 by panne]
panne [Sat, 8 Jul 2000 17:04:17 +0000 (17:04 +0000)]
[project @ 2000-07-08 17:04:17 by panne]
Synch format string with actual args

23 years ago[project @ 2000-07-07 12:13:43 by simonpj]
simonpj [Fri, 7 Jul 2000 12:13:44 +0000 (12:13 +0000)]
[project @ 2000-07-07 12:13:43 by simonpj]
This commit moves the instance environment out of the Class data
structure, where it was immutable, to part of the type-checker
environment.  This change is absolutely essential as part of
our move to GHCi, and I think it's also going to be necessary
for Andrei's work on generic functions.

As part of this change, we can remove

  a) types/InstEnv.* (thereby also removing a hi-boot loop)
  b) a tc-fixpoint-loop in TcModule

Both of these are worthwhile simplifications.

23 years ago[project @ 2000-07-07 12:13:22 by simonpj]
simonpj [Fri, 7 Jul 2000 12:13:22 +0000 (12:13 +0000)]
[project @ 2000-07-07 12:13:22 by simonpj]
Improve comments

23 years ago[project @ 2000-07-07 12:12:48 by simonpj]
simonpj [Fri, 7 Jul 2000 12:12:48 +0000 (12:12 +0000)]
[project @ 2000-07-07 12:12:48 by simonpj]
Fix duplicate class assertion error msg

23 years ago[project @ 2000-07-07 11:03:57 by simonmar]
simonmar [Fri, 7 Jul 2000 11:03:59 +0000 (11:03 +0000)]
[project @ 2000-07-07 11:03:57 by simonmar]
Rearrange exception stuff, as per my message on glasgow-haskell-users
recently.

The main change is the IOError type is now a synonym for Exception.
IO.ioError can therefore be used for throwing exceptions.  IO.catch
still catches only IO exceptions, for backwards compatibility.

The interface exported by Exception has changed somewhat:

try       :: IO a -> IO (Either Exception a)
tryJust   :: (Exception -> Maybe b) -> a    -> IO (Either b a)

catch     :: IO a -> (Exception -> IO a) -> IO a
catchJust :: (Exception -> Maybe b) -> IO a -> (b -> IO a) -> IO a

ioErrors :: Exception -> Maybe IOError
arithExceptions  :: Exception -> Maybe ArithException
errorCalls :: Exception -> Maybe String
dynExceptions :: Exception -> Maybe Dynamic
assertions :: Exception -> Maybe String
asyncExceptions  :: Exception -> Maybe AsyncException

raiseInThread is now called throwTo.

Where possible, the old functions have been left around, but marked
deprecated.

23 years ago[project @ 2000-07-07 10:35:32 by simonmar]
simonmar [Fri, 7 Jul 2000 10:35:32 +0000 (10:35 +0000)]
[project @ 2000-07-07 10:35:32 by simonmar]
Remove the cast from CMacroExprs - it doesn't appear to be needed.
This fixes the recently introduced bug when compiling CCS_HDR macros
in profiling code.

23 years ago[project @ 2000-07-07 09:44:31 by simonmar]
simonmar [Fri, 7 Jul 2000 09:44:31 +0000 (09:44 +0000)]
[project @ 2000-07-07 09:44:31 by simonmar]
fix -keep-hc-file-too

23 years ago[project @ 2000-07-07 09:37:39 by simonmar]
simonmar [Fri, 7 Jul 2000 09:37:39 +0000 (09:37 +0000)]
[project @ 2000-07-07 09:37:39 by simonmar]
revert rev. 1.81

23 years ago[project @ 2000-07-06 20:50:37 by panne]
panne [Thu, 6 Jul 2000 20:51:30 +0000 (20:51 +0000)]
[project @ 2000-07-06 20:50:37 by panne]
Typo

23 years ago[project @ 2000-07-06 17:22:40 by keithw]
keithw [Thu, 6 Jul 2000 17:22:40 +0000 (17:22 +0000)]
[project @ 2000-07-06 17:22:40 by keithw]
Fix obvious typo (pprStgARg for pprStgArg).  Clearly not a frequently-
tickled part of the compiler!

23 years ago[project @ 2000-07-06 16:31:45 by simonpj]
simonpj [Thu, 6 Jul 2000 16:31:46 +0000 (16:31 +0000)]
[project @ 2000-07-06 16:31:45 by simonpj]
* Improve the warning "M is imported but nothing from it is used"
  In particular, don't warn if some instances from it are imported.

  It's pretty much impossible to do the Right Thing always.
  A comment in Rename.lhs says
-- NOTE: Consider
--       module This
-- import M ()
--
--  The import M() is not *necessarily* redundant, even if
--   we suck in no instance decls from M (e.g. it contains
--  no instance decls, or This contains no code).  It may be
--  that we import M solely to ensure that M's orphan instance
--  decls (or those in its imports) are visible to people who
--  import This.  Sigh.
--  There's really no good way to detect this, so the error message
--  in RnEnv.warnUnusedModules is weakened instead

* Minor comment changes to RnIfaces.lhs

* Use NameEnv instead of UFM in TcEnv (tidy up only)

23 years ago[project @ 2000-07-06 16:28:40 by simonmar]
simonmar [Thu, 6 Jul 2000 16:28:40 +0000 (16:28 +0000)]
[project @ 2000-07-06 16:28:40 by simonmar]
Add Marcin Kowalczyk and Michael Weber to the "Additional
Contributors" section.

23 years ago[project @ 2000-07-06 15:43:28 by simonmar]
simonmar [Thu, 6 Jul 2000 15:43:28 +0000 (15:43 +0000)]
[project @ 2000-07-06 15:43:28 by simonmar]
A string constant block can consist of multiple .string/.ascii
directives.  The sparc-specific code in this file already handled this
properly, but the x86 code was wrong.

23 years ago[project @ 2000-07-06 15:24:57 by simonmar]
simonmar [Thu, 6 Jul 2000 15:24:57 +0000 (15:24 +0000)]
[project @ 2000-07-06 15:24:57 by simonmar]
no need to set hsc_lang = HscC when -split-objs is on.

23 years ago[project @ 2000-07-06 14:08:31 by simonmar]
simonmar [Thu, 6 Jul 2000 14:08:32 +0000 (14:08 +0000)]
[project @ 2000-07-06 14:08:31 by simonmar]
New form of literal: MachLabel, for addresses of labels.  Used by
foreign label instead of MachLitLit now.

Real lit-lits now cause the NCG to panic.

Also: removed CLitLit from AbsCSyn; it was only used in one place for
a purpose it shouldn't have been used for in the first place.

23 years ago[project @ 2000-07-06 13:42:35 by rrt]
rrt [Thu, 6 Jul 2000 13:42:35 +0000 (13:42 +0000)]
[project @ 2000-07-06 13:42:35 by rrt]
Corrected URLs.

23 years ago[project @ 2000-07-06 13:32:35 by simonmar]
simonmar [Thu, 6 Jul 2000 13:32:35 +0000 (13:32 +0000)]
[project @ 2000-07-06 13:32:35 by simonmar]
New section on Packages, collecting together the various
package-related documentation and adding some new stuff about the package
management features.

23 years ago[project @ 2000-07-06 11:43:24 by rrt]
rrt [Thu, 6 Jul 2000 11:43:24 +0000 (11:43 +0000)]
[project @ 2000-07-06 11:43:24 by rrt]
Bump the version no.

23 years ago[project @ 2000-07-06 09:35:37 by simonmar]
simonmar [Thu, 6 Jul 2000 09:35:37 +0000 (09:35 +0000)]
[project @ 2000-07-06 09:35:37 by simonmar]
ghc 4.06 didn't have -package, so use it only for 4.07+.

23 years ago[project @ 2000-07-05 17:16:02 by simonmar]
simonmar [Wed, 5 Jul 2000 17:16:02 +0000 (17:16 +0000)]
[project @ 2000-07-05 17:16:02 by simonmar]
bullet-proof the package code a bit more; check for write access to the
configuration file before doing anything, check whether we're adding a
package that's already there, etc.

23 years ago[project @ 2000-07-05 17:01:59 by simonmar]
simonmar [Wed, 5 Jul 2000 17:01:59 +0000 (17:01 +0000)]
[project @ 2000-07-05 17:01:59 by simonmar]
Packages can now be added/removed from an installed GHC as follows:

    $ ./ghc-inplace --list-packages
    gmp, rts, std, lang, concurrent, data, net, posix, text, util,
    hssource, win32, com, std2
    $ ./ghc-inplace --add-package <newpkg
    Reading package info from stdin... done.
    Saving old package config file... done.
    Writing new package config file... done.
    $ ./ghc-inplace --list-packages
    gmp, rts, std, lang, concurrent, data, net, posix, text, util,
    hssource, win32, com, std2, mypkg
    $ ./ghc-inplace --delete-package mypkg
    Saving old package config file... done.
    Writing new package config file... done.
    $ ./ghc-inplace --list-packages
    gmp, rts, std, lang, concurrent, data, net, posix, text, util,
    hssource, win32, com, std2

This is a first stab at the kind of functionality we need for
installing Haskell libraries via RPMs: the RPM script would install
the libraries, and then do a "ghc --add-package" passing the
appropriate paths.  You'd then have "ghc -package" at your disposal to
use the newly installed package.  Similarly on de-install, the RPM
script would run "ghc --delete-package".

Also in this commit: prettify the package dumping.

23 years ago[project @ 2000-07-05 15:42:19 by keithw]
keithw [Wed, 5 Jul 2000 15:42:19 +0000 (15:42 +0000)]
[project @ 2000-07-05 15:42:19 by keithw]
Add -t flag to specify title of report.

23 years ago[project @ 2000-07-05 14:28:49 by sewardj]
sewardj [Wed, 5 Jul 2000 14:28:50 +0000 (14:28 +0000)]
[project @ 2000-07-05 14:28:49 by sewardj]
Rename the marker used by Diff_Gcc_Nat.hs to ___ncg_debug_marker, to make
it clear it has nothing to do with the usual object-splitting machinery.

Improve Diff_Gcc_Nat:
* Emit a warning, and stop, if there are no debug markers in the NCG code.
* Handle .uahalf and .uaword, which appear in sparc assembly, but not x86.

23 years ago[project @ 2000-07-05 09:46:35 by sewardj]
sewardj [Wed, 5 Jul 2000 09:46:35 +0000 (09:46 +0000)]
[project @ 2000-07-05 09:46:35 by sewardj]
Make -S work when going via the NCG.

23 years ago[project @ 2000-07-04 20:01:00 by panne]
panne [Tue, 4 Jul 2000 20:01:00 +0000 (20:01 +0000)]
[project @ 2000-07-04 20:01:00 by panne]
From the Ancient Book of Infinite CS Wisdom:
   "Thou shalt remove unused imports after dead code removal..."
;-)

23 years ago[project @ 2000-07-04 11:34:23 by rrt]
rrt [Tue, 4 Jul 2000 11:34:23 +0000 (11:34 +0000)]
[project @ 2000-07-04 11:34:23 by rrt]
Remove info target for install (we can no longer make info from SGML).

23 years ago[project @ 2000-07-04 09:33:43 by simonmar]
simonmar [Tue, 4 Jul 2000 09:33:43 +0000 (09:33 +0000)]
[project @ 2000-07-04 09:33:43 by simonmar]
Don't need to install HsStd.h in ghc/includes anymore.  The driver
looks for it here.

23 years ago[project @ 2000-07-03 21:31:28 by panne]
panne [Mon, 3 Jul 2000 21:31:28 +0000 (21:31 +0000)]
[project @ 2000-07-03 21:31:28 by panne]
Print
   "Interface file unchanged"
and
   "Module version unchanged, but usages differ; hence need new hi file"
only when -ddump-rn-trace flag has been given. This is more consistent
with the rest of GHC and the *nix world, and messes up less tests.

23 years ago[project @ 2000-07-03 21:17:21 by panne]
panne [Mon, 3 Jul 2000 21:17:21 +0000 (21:17 +0000)]
[project @ 2000-07-03 21:17:21 by panne]
Added semicolon to synch with current interface file syntax.
Note: The `class' line contains a kind bug, but this is not
checked. Bug or feature?

23 years ago[project @ 2000-07-03 21:04:44 by panne]
panne [Mon, 3 Jul 2000 21:04:44 +0000 (21:04 +0000)]
[project @ 2000-07-03 21:04:44 by panne]
Removed foralls in expected output

23 years ago[project @ 2000-07-03 20:34:35 by panne]
panne [Mon, 3 Jul 2000 20:34:35 +0000 (20:34 +0000)]
[project @ 2000-07-03 20:34:35 by panne]
Synched expected output with reality

23 years ago[project @ 2000-07-03 20:32:19 by panne]
panne [Mon, 3 Jul 2000 20:32:19 +0000 (20:32 +0000)]
[project @ 2000-07-03 20:32:19 by panne]
Litlits don't really make much sense for the NCG (i.e. are a hack), so
compile via C.

23 years ago[project @ 2000-07-03 20:31:07 by panne]
panne [Mon, 3 Jul 2000 20:31:07 +0000 (20:31 +0000)]
[project @ 2000-07-03 20:31:07 by panne]
Reverted my last change to this file: Constant folding should really
yield *excatly* the same result as runtime computation.

23 years ago[project @ 2000-07-03 20:28:43 by panne]
panne [Mon, 3 Jul 2000 20:28:43 +0000 (20:28 +0000)]
[project @ 2000-07-03 20:28:43 by panne]
Synched with reality again. The expected output is a extremely fragile...

23 years ago[project @ 2000-07-03 19:48:07 by panne]
panne [Mon, 3 Jul 2000 19:48:07 +0000 (19:48 +0000)]
[project @ 2000-07-03 19:48:07 by panne]
Putting parentheses around expressions involving a mixture of
multiplicative and additive operators might sometimes be a cunning
idea...   :-}   Otherwise
   (591125662431::Int) `div` (517::Int)
is correctly converted into
   (567659506 + (275 * 2147483647)) `div`  517
but
    591125662431       `div` (517::Int)
turns into the messed up
    567659506 + ((275 * 2147483647) `div`  517)

23 years ago[project @ 2000-07-03 16:45:04 by keithw]
keithw [Mon, 3 Jul 2000 16:45:04 +0000 (16:45 +0000)]
[project @ 2000-07-03 16:45:04 by keithw]
Add note that `gmake clean' should *not* destroy the work of `gmake boot'.
In all cases, the sequence autoconf, ./configure, gmake boot, gmake clean,
gmake all should work correctly.

** Please verify that this is indeed the case! **

23 years ago[project @ 2000-07-03 16:07:20 by simonmar]
simonmar [Mon, 3 Jul 2000 16:07:20 +0000 (16:07 +0000)]
[project @ 2000-07-03 16:07:20 by simonmar]
DEBUG ==> NCG_DEBUG

23 years ago[project @ 2000-07-03 16:06:17 by simonmar]
simonmar [Mon, 3 Jul 2000 16:06:17 +0000 (16:06 +0000)]
[project @ 2000-07-03 16:06:17 by simonmar]
D'oh!  Only generate split markers when actually splitting

23 years ago[project @ 2000-07-03 15:12:41 by simonmar]
simonmar [Mon, 3 Jul 2000 15:12:41 +0000 (15:12 +0000)]
[project @ 2000-07-03 15:12:41 by simonmar]
DEBUG ==> NCG_DEBUG

23 years ago[project @ 2000-07-03 15:03:13 by simonmar]
simonmar [Mon, 3 Jul 2000 15:03:13 +0000 (15:03 +0000)]
[project @ 2000-07-03 15:03:13 by simonmar]
fix phase ordering for NCG + -split-objs.

23 years ago[project @ 2000-07-03 14:59:25 by simonmar]
simonmar [Mon, 3 Jul 2000 14:59:25 +0000 (14:59 +0000)]
[project @ 2000-07-03 14:59:25 by simonmar]
Insert split markers properly in the NCG.  -split-objs is on its way
to working with the NCG.

23 years ago[project @ 2000-07-03 14:32:58 by simonmar]
simonmar [Mon, 3 Jul 2000 14:32:58 +0000 (14:32 +0000)]
[project @ 2000-07-03 14:32:58 by simonmar]
dead code removal

23 years ago[project @ 2000-07-02 19:23:21 by panne]
panne [Sun, 2 Jul 2000 19:23:22 +0000 (19:23 +0000)]
[project @ 2000-07-02 19:23:21 by panne]
Removed -noC flag, which has vanished from the driver

23 years ago[project @ 2000-07-02 18:59:10 by panne]
panne [Sun, 2 Jul 2000 18:59:10 +0000 (18:59 +0000)]
[project @ 2000-07-02 18:59:10 by panne]
Don't use addr2Integer for large integral literals anymore, use a
Horner schema with numbers in the Int range instead. This improves
constant folding, so e.g.  (0x87654321 :: Word32) is evaluated at
compile time now. In theory we can completely say Good-bye to
addr2Integer, but for the time being it's still there. Feel free to
nuke it...  >:-)

23 years ago[project @ 2000-07-02 18:50:24 by panne]
panne [Sun, 2 Jul 2000 18:50:24 +0000 (18:50 +0000)]
[project @ 2000-07-02 18:50:24 by panne]
Don't warn the user about integer overflow during constant folding
anymore. It's not done at runtime either, and compilation of
completely harmless things like

   ((124076834 :: Word32) + (2147483647 :: Word32))

yielded a warning.

23 years ago[project @ 2000-06-30 19:12:21 by panne]
panne [Fri, 30 Jun 2000 19:12:21 +0000 (19:12 +0000)]
[project @ 2000-06-30 19:12:21 by panne]
Hackily quote -#include options before passing them to mkdependHS

23 years ago[project @ 2000-06-30 18:38:03 by panne]
panne [Fri, 30 Jun 2000 18:38:03 +0000 (18:38 +0000)]
[project @ 2000-06-30 18:38:03 by panne]
Remove parentheses around C function/macros names. This is necessary
because cpp does *not* replace e.g.

   (eqForeignObj)(f1,f2)

with

  ((f1)==(f2))

(see PrimOps.h), heaven (or K&R) knows why. OK foreign importing
macros is a hack, but GHC seems to depend on it.

23 years ago[project @ 2000-06-30 13:39:35 by simonmar]
simonmar [Fri, 30 Jun 2000 13:39:36 +0000 (13:39 +0000)]
[project @ 2000-06-30 13:39:35 by simonmar]
- fix copyrights
- remove some unused imports
- comment formatting fixes

23 years ago[project @ 2000-06-30 13:11:07 by simonpj]
simonpj [Fri, 30 Jun 2000 13:11:08 +0000 (13:11 +0000)]
[project @ 2000-06-30 13:11:07 by simonpj]
In a CCall, a DynamicTarget has a unique that is
used only to generate a uniquely-named typedef.
It should not be used when comparing CCalls (e.g.
when seeing if interface files have changed).
So the main change in this commit is to fix the Eq
instance for PrimOp.CCallTarget, but I took the
opportunity to clean up the CCallTarget interface
a little.

23 years ago[project @ 2000-06-30 13:10:38 by simonpj]
simonpj [Fri, 30 Jun 2000 13:10:38 +0000 (13:10 +0000)]
[project @ 2000-06-30 13:10:38 by simonpj]
Improve error message

23 years ago[project @ 2000-06-30 09:46:04 by simonmar]
simonmar [Fri, 30 Jun 2000 09:46:04 +0000 (09:46 +0000)]
[project @ 2000-06-30 09:46:04 by simonmar]
wibble

23 years ago[project @ 2000-06-30 09:45:16 by simonmar]
simonmar [Fri, 30 Jun 2000 09:45:16 +0000 (09:45 +0000)]
[project @ 2000-06-30 09:45:16 by simonmar]
Use GhcMinVersion to pick the correct cmdline args to build the driver.

23 years ago[project @ 2000-06-30 09:34:09 by simonmar]
simonmar [Fri, 30 Jun 2000 09:34:09 +0000 (09:34 +0000)]
[project @ 2000-06-30 09:34:09 by simonmar]
Check the version of the installed ghc, and set GhcVersion,
GhcMajVersion, GhcMinVersion and GhcPatchLevel make variables.

23 years ago[project @ 2000-06-30 08:48:38 by simonmar]
simonmar [Fri, 30 Jun 2000 08:48:38 +0000 (08:48 +0000)]
[project @ 2000-06-30 08:48:38 by simonmar]
_Haskell1Version ==> cHaskell1Version

23 years ago[project @ 2000-06-29 21:08:02 by panne]
panne [Thu, 29 Jun 2000 21:08:02 +0000 (21:08 +0000)]
[project @ 2000-06-29 21:08:02 by panne]
Added test for Typeable instance

23 years ago[project @ 2000-06-29 20:20:18 by panne]
panne [Thu, 29 Jun 2000 20:20:18 +0000 (20:20 +0000)]
[project @ 2000-06-29 20:20:18 by panne]
Fixed buglet in search for ghc-usage.txt

23 years ago[project @ 2000-06-29 19:47:50 by panne]
panne [Thu, 29 Jun 2000 19:47:50 +0000 (19:47 +0000)]
[project @ 2000-06-29 19:47:50 by panne]
There is not much point in memoising Integers, so we should better use
unary "numbers" (i.e. lists of units) instead

23 years ago[project @ 2000-06-29 15:08:02 by sewardj]
sewardj [Thu, 29 Jun 2000 15:08:02 +0000 (15:08 +0000)]
[project @ 2000-06-29 15:08:02 by sewardj]
Add my wizardly assembly-code basic-block matching program, which is
very useful for debugging the native code generator.  This is not
built by default, because it's totally useless to anyone except the
GHC developers.  The README file describes how to use and maintain it.

23 years ago[project @ 2000-06-29 14:25:36 by keithw]
keithw [Thu, 29 Jun 2000 14:25:36 +0000 (14:25 +0000)]
[project @ 2000-06-29 14:25:36 by keithw]
Add missing implicit occs relating to list comprehensions in
deriving (Ix,Read).

23 years ago[project @ 2000-06-29 13:40:17 by simonmar]
simonmar [Thu, 29 Jun 2000 13:40:17 +0000 (13:40 +0000)]
[project @ 2000-06-29 13:40:17 by simonmar]
Add test for GNU regex in libc, which we'll use to decide whether to
compile our own copy of the library in package text.

23 years ago[project @ 2000-06-29 13:18:38 by simonmar]
simonmar [Thu, 29 Jun 2000 13:18:38 +0000 (13:18 +0000)]
[project @ 2000-06-29 13:18:38 by simonmar]
sparc needs the TMOVEDIRVS hack too

23 years ago[project @ 2000-06-29 13:08:59 by simonmar]
simonmar [Thu, 29 Jun 2000 13:08:59 +0000 (13:08 +0000)]
[project @ 2000-06-29 13:08:59 by simonmar]
hi files are now named after the module being compiled, not the
original filename (unless of course the user has specified -ohi <blah>).