simonpj [Tue, 21 Dec 2004 08:50:27 +0000 (08:50 +0000)]
[project @ 2004-12-21 08:50:27 by simonpj]
Another wibble to the Panic change; this time on Windows
simonpj [Mon, 20 Dec 2004 17:17:10 +0000 (17:17 +0000)]
[project @ 2004-12-20 17:16:24 by simonpj]
--------------------------------
Deal properly with dual-renaming
--------------------------------
When comparing types and terms, and during matching, we are faced
with
\x.e1 ~ \y.e2
There are many pitfalls here, and GHC has never done the job properly.
Now, at last it does, using a new abstraction VarEnv.RnEnv2. See
comments there for how it works.
There are lots of consequential changes to use the new stuff, especially
in
types/Type (type comparison),
types/Unify (matching on types)
coreSyn/CoreUtils (equality on expressions),
specialise/Rules (matching).
I'm not 100% certain of that I've covered all the bases, so let me
know if something unexpected happens after you update. Maybe wait until
a nightly build has worked ok first!
panne [Sat, 18 Dec 2004 15:45:56 +0000 (15:45 +0000)]
[project @ 2004-12-18 15:45:56 by panne]
The documentation breakage continues... >:-( Fixed DocBook. Again: "make html"
(or the faster "make validate" in the case of DocBook XML) is your friend! >:-(
simonpj [Fri, 17 Dec 2004 17:43:24 +0000 (17:43 +0000)]
[project @ 2004-12-17 17:43:24 by simonpj]
Restore a test; fixes rnfail042
simonpj [Fri, 17 Dec 2004 16:13:27 +0000 (16:13 +0000)]
[project @ 2004-12-17 16:13:27 by simonpj]
Fix breakage in previous commit re signal handling
simonmar [Fri, 17 Dec 2004 15:26:07 +0000 (15:26 +0000)]
[project @ 2004-12-17 15:26:07 by simonmar]
Add entry about Ctrl-C on Windows
simonmar [Fri, 17 Dec 2004 15:19:53 +0000 (15:19 +0000)]
[project @ 2004-12-17 15:19:53 by simonmar]
Add comment about Ctrl-C/Ctrl-Break issue
simonmar [Fri, 17 Dec 2004 15:14:47 +0000 (15:14 +0000)]
[project @ 2004-12-17 15:14:47 by simonmar]
Support for Ctrl-C on Windows.
This works fine in a cmd.exe shell, but in a Cygwin bash shell you
have to press Ctrl-Break to get an interrupt. There appears to be a
long thread on the cygwin mailing list back in 2002 about this, but
life is probably too short to investigate further.
http://www.cygwin.com/ml/cygwin/2002-01/msg00163.html
simonmar [Thu, 16 Dec 2004 10:36:59 +0000 (10:36 +0000)]
[project @ 2004-12-16 10:36:57 by simonmar]
Sanity check when configuring for mingw32: make sure that $CC is a
mingw gcc before proceeding.
simonmar [Thu, 16 Dec 2004 10:23:44 +0000 (10:23 +0000)]
[project @ 2004-12-16 10:23:44 by simonmar]
--with-gcc: export the CC environment variable, so the setting gets
picked up by sub-configures. Perhaps we should be advising people to use
CC=c:/mingw/bin/gcc ./configure
because that works for all configure scripts, not just the top level one.
Background:
- We want --with-gcc to do the right thing, because we don't want
to require Cygwin users to put c:/mingw/bin first on their
path: that would break their Cygwin environment.
- The build system should work with *no* gcc on your PATH, as long
as you use --with-gcc (equivalently, CC=... ./configure).
simonpj [Thu, 16 Dec 2004 08:56:15 +0000 (08:56 +0000)]
[project @ 2004-12-16 08:56:15 by simonpj]
Darn! Forgot this commit, which killed the nightly build
simonpj [Wed, 15 Dec 2004 15:28:39 +0000 (15:28 +0000)]
[project @ 2004-12-15 15:28:39 by simonpj]
Comments only
simonpj [Wed, 15 Dec 2004 12:51:16 +0000 (12:51 +0000)]
[project @ 2004-12-15 12:51:15 by simonpj]
Make ghc/lib/compat/Compat/Directory.hs use the C function
__compat_long_path_size, rather than
__hscore_long_path_size, as the libraries/ version does
And make ghc/lib/compat/cbits/directory.c define it.
In this way we avoid spurious duplicate-symbol errors when we
compile GHC with ghc6.2.1 etc.
simonpj [Wed, 15 Dec 2004 12:15:16 +0000 (12:15 +0000)]
[project @ 2004-12-15 12:15:16 by simonpj]
Tidy the type of an interactively-bound Id before adding
it to the environment. Generally speaking, top level
environments are assumed to be in tidied form, so we
don't tidy the types before printing.
simonpj [Wed, 15 Dec 2004 12:14:06 +0000 (12:14 +0000)]
[project @ 2004-12-15 12:14:06 by simonpj]
comment
simonpj [Mon, 13 Dec 2004 12:09:25 +0000 (12:09 +0000)]
[project @ 2004-12-13 12:09:25 by simonpj]
Comments only
simonmar [Fri, 10 Dec 2004 13:34:38 +0000 (13:34 +0000)]
[project @ 2004-12-10 13:34:38 by simonmar]
stg_sel_##offset##_upd_entry: the ENTER() here is unnecessary, because
we know the closure in R1 will evaluate to a constructor, so we can
save some time by just entering it directly.
simonpj [Wed, 8 Dec 2004 15:09:14 +0000 (15:09 +0000)]
[project @ 2004-12-08 15:09:14 by simonpj]
Undo bogus 1.4 commit
simonpj [Wed, 8 Dec 2004 15:03:50 +0000 (15:03 +0000)]
[project @ 2004-12-08 15:03:50 by simonpj]
First commit for new Cmm code generation (branch)
simonpj [Wed, 8 Dec 2004 14:32:34 +0000 (14:32 +0000)]
[project @ 2004-12-08 14:32:28 by simonpj]
Comments and asserts only
simonmar [Wed, 8 Dec 2004 12:05:51 +0000 (12:05 +0000)]
[project @ 2004-12-08 12:05:51 by simonmar]
Fix bug #1073501: checkProddableBlock: invalid fixup in runtime linker
The bug manifested when trying to load an object with debugging info
(compiled with gcc -g) into GHCi.
The problem was that the object loader was ignoring the sections
containing debugging info, but then it was later trying to do
relocations for those sections, and its own sanity checking code
correctly detected that the relocations were in unknown parts of the
object file.
The fix is to ignore relocations whose target section isn't one of the
sections that we're interested in, using the same test in both cases
(the code to test section kind has been extracted). The code could
probably benefit from more refactoring: it looks like the list of
sections we build up in the first phase isn't even used in the second
phase, instead we traverse the section table in the image again. This
looks like cruft leftover from when the GC used to check whether an
address was in text or data space.
simonmar [Wed, 8 Dec 2004 10:29:01 +0000 (10:29 +0000)]
[project @ 2004-12-08 10:29:01 by simonmar]
deleteThread: don't attempt to delete threads blocked in foreign calls.
simonmar [Wed, 8 Dec 2004 09:28:57 +0000 (09:28 +0000)]
[project @ 2004-12-08 09:28:57 by simonmar]
Prevent any intermediate file deletion using
.SECONDARY:
and remove now-unnecessary .PRECIOUS and .SECONDARY targets.
Suggestion from Ashley Yakeley.
simonpj [Mon, 6 Dec 2004 10:58:06 +0000 (10:58 +0000)]
[project @ 2004-12-06 10:58:06 by simonpj]
---------------------
Bug in specialisation
---------------------
Laszlo managed to get a function like this:
foo :: Enum a => (# a, Int #)
The specialiser specialised it, resulting in an unboxed tuple
binding, which Lint objected to.
This commit adds a dummy argument to the specialised function,
very like the case for strictness analysis. For example, at
type Char we'd get
foo_char :: State# RealWorld -> (# Char, Int #)
foo_char = \_ -> ...
We use a State# type because it generates no argument-passing code
at runtime. (We should really have some other void type for this
purpose, because State# is misleading, but this way avoids extra
types.)
simonpj [Mon, 6 Dec 2004 10:51:36 +0000 (10:51 +0000)]
[project @ 2004-12-06 10:51:36 by simonpj]
------------------------------------
Bug in loop detection in TcSimplify
------------------------------------
The type-class context simplifier has been able to
build recursive dictionaries for some time: co-induction.
That is, you can build a proof for constraint C by assuming
that C holds when proving the preconditions of C.
You need to be in -fallow-undecidable-instances land to
make use of this: see comments with [RECURSIVE DICTIONARIES]
in TcSimplify.lhs.
Anyway, this is all fine, but I'd implemented it wrong! You need
to be very careful with superclasses, or you can make a bogus
loop by mistake. This commit fixes it; tests LoopOfTheDay{1,2,3}
will test it (thanks Ralf Laemmel).
simonmar [Mon, 6 Dec 2004 10:47:22 +0000 (10:47 +0000)]
[project @ 2004-12-06 10:47:22 by simonmar]
Error message fixup
panne [Sat, 4 Dec 2004 14:07:27 +0000 (14:07 +0000)]
[project @ 2004-12-04 14:07:25 by panne]
Moved GTK_CONFIG detection to ghc subdirectory (untested).
panne [Sat, 4 Dec 2004 13:48:06 +0000 (13:48 +0000)]
[project @ 2004-12-04 13:48:05 by panne]
Nuked some outdated stuff
panne [Sat, 4 Dec 2004 12:57:57 +0000 (12:57 +0000)]
[project @ 2004-12-04 12:57:57 by panne]
No need for --enable-hopengl anymore
simonpj [Fri, 3 Dec 2004 16:59:43 +0000 (16:59 +0000)]
[project @ 2004-12-03 16:59:43 by simonpj]
Make Core Lint check for 1-tuples
simonmar [Fri, 3 Dec 2004 16:25:58 +0000 (16:25 +0000)]
[project @ 2004-12-03 16:25:58 by simonmar]
Get rid of some `...' style quotes
simonpj [Fri, 3 Dec 2004 16:02:44 +0000 (16:02 +0000)]
[project @ 2004-12-03 16:02:44 by simonpj]
Update TH import
simonmar [Fri, 3 Dec 2004 15:35:59 +0000 (15:35 +0000)]
[project @ 2004-12-03 15:35:56 by simonmar]
distclean: clean config.mk only *after* doing the recursive cleaning.
Otherwise we don't clean properly in the subdirectories or sub-ways.
simonmar [Fri, 3 Dec 2004 13:57:19 +0000 (13:57 +0000)]
[project @ 2004-12-03 13:57:19 by simonmar]
- Implement expose/hide
- fix parsing of package identifiers (forgot to commit this the other day)
simonpj [Fri, 3 Dec 2004 13:49:05 +0000 (13:49 +0000)]
[project @ 2004-12-03 13:49:00 by simonpj]
A fix to kind signatures for GADT data type decls
simonpj [Fri, 3 Dec 2004 13:47:22 +0000 (13:47 +0000)]
[project @ 2004-12-03 13:47:22 by simonpj]
TH refication for primitive TyCons
simonmar [Fri, 3 Dec 2004 13:01:28 +0000 (13:01 +0000)]
[project @ 2004-12-03 13:01:28 by simonmar]
Support the --auto-ghci-libs option in conjuction with 'register'.
wolfgang [Thu, 2 Dec 2004 23:39:13 +0000 (23:39 +0000)]
[project @ 2004-12-02 23:39:13 by wolfgang]
Mac OS X/Darwin/Mach-O:
Improve handling of object files without dynamic symbol tables.
simonpj [Thu, 2 Dec 2004 17:18:32 +0000 (17:18 +0000)]
[project @ 2004-12-02 17:18:15 by simonpj]
Sorry for the fact that there are overlapping three commits in here...
1. Make -fno-monomorphism-restriction
and -fno-implicit-prelude reversible, like other flags
2. Fix a wibble in the new ImportAvails story, in RnNames.mkExportAvails
3. Fix a Template Haskell bug that meant that top-level names created
with newName were not made properly unique.
simonpj [Thu, 2 Dec 2004 17:17:28 +0000 (17:17 +0000)]
[project @ 2004-12-02 17:17:28 by simonpj]
Trim imports
simonpj [Thu, 2 Dec 2004 16:55:02 +0000 (16:55 +0000)]
[project @ 2004-12-02 16:55:02 by simonpj]
Missing include
simonpj [Thu, 2 Dec 2004 16:33:16 +0000 (16:33 +0000)]
[project @ 2004-12-02 16:33:16 by simonpj]
Missing import on Windows
simonmar [Wed, 1 Dec 2004 09:52:14 +0000 (09:52 +0000)]
[project @ 2004-12-01 09:51:50 by simonmar]
Update the excluded modules for libghccompat
simonmar [Tue, 30 Nov 2004 16:07:01 +0000 (16:07 +0000)]
[project @ 2004-11-30 16:07:01 by simonmar]
Data.Version --> Distribution.Version
simonmar [Tue, 30 Nov 2004 16:05:15 +0000 (16:05 +0000)]
[project @ 2004-11-30 16:05:15 by simonmar]
Data.Version -> Distribution.Version
simonmar [Tue, 30 Nov 2004 15:51:35 +0000 (15:51 +0000)]
[project @ 2004-11-30 15:51:35 by simonmar]
Data.Version isn't necessary any more, the Version type is exported by
Distribution.Version.
simonmar [Tue, 30 Nov 2004 15:31:56 +0000 (15:31 +0000)]
[project @ 2004-11-30 15:31:56 by simonmar]
Allow -ignore-package P when P doesn't exist (thanks to George Russell
for the report).
simonpj [Tue, 30 Nov 2004 14:55:10 +0000 (14:55 +0000)]
[project @ 2004-11-30 14:55:10 by simonpj]
Docmunent -fmonomorphism-restriction and -fimplicit-prelude
simonpj [Tue, 30 Nov 2004 14:28:19 +0000 (14:28 +0000)]
[project @ 2004-11-30 14:28:02 by simonpj]
Import trimming
simonpj [Tue, 30 Nov 2004 13:59:25 +0000 (13:59 +0000)]
[project @ 2004-11-30 13:59:25 by simonpj]
Wibbles for new ImportAvails story
simonmar [Tue, 30 Nov 2004 10:46:58 +0000 (10:46 +0000)]
[project @ 2004-11-30 10:46:58 by simonmar]
Add space to error message
wolfgang [Mon, 29 Nov 2004 23:28:58 +0000 (23:28 +0000)]
[project @ 2004-11-29 23:28:58 by wolfgang]
Revert part of the previous commit.
Something unrelated slipped in :-(.
wolfgang [Mon, 29 Nov 2004 23:21:43 +0000 (23:21 +0000)]
[project @ 2004-11-29 23:21:43 by wolfgang]
Fix -dynamic compilation - don't use nameModule on names that might be
local.
simonpj [Mon, 29 Nov 2004 16:25:12 +0000 (16:25 +0000)]
[project @ 2004-11-29 16:25:03 by simonpj]
---------------------
Simplify ImportAvails
---------------------
Every Name has, for some while, contained its "parent";
the type or class inside which it is defined. But the rest
of the renamer wasn't using this information as much as it
could do. In particular, the ImportAvails type was more elaborate
than necessary.
This commit combines these two fields of ImportAvails:
imp_env :: AvailEnv
imp_qual :: ModuleEnv AvailEnv
into one
imp_env :: ModuleEnv NameSet
This is quite a bit simpler. Less redundancy and, I think, less
code.
simonpj [Mon, 29 Nov 2004 16:24:21 +0000 (16:24 +0000)]
[project @ 2004-11-29 16:24:16 by simonpj]
Trim imports
simonpj [Mon, 29 Nov 2004 16:16:57 +0000 (16:16 +0000)]
[project @ 2004-11-29 16:16:57 by simonpj]
Update ambiguity errors
simonmar [Mon, 29 Nov 2004 11:35:43 +0000 (11:35 +0000)]
[project @ 2004-11-29 11:35:43 by simonmar]
Don't quote package names
simonmar [Mon, 29 Nov 2004 11:32:38 +0000 (11:32 +0000)]
[project @ 2004-11-29 11:32:38 by simonmar]
Look for package modules before home modules. This fixes the build in
ghc/lib when bootstrapping with the HEAD.
simonmar [Fri, 26 Nov 2004 16:50:56 +0000 (16:50 +0000)]
[project @ 2004-11-26 16:50:56 by simonmar]
unregister/describe: allow the package name to be given without the
version, as long as it is unambiguous.
Strange, I was sure I'd implemented expose/hide in here, but they're
stubbed out. Oh well.
simonmar [Fri, 26 Nov 2004 16:34:56 +0000 (16:34 +0000)]
[project @ 2004-11-26 16:34:56 by simonmar]
Undo
simonmar [Fri, 26 Nov 2004 16:32:44 +0000 (16:32 +0000)]
[project @ 2004-11-26 16:32:44 by simonmar]
Further integration with the new package story. GHC now supports
pretty much everything in the package proposal.
- GHC now works in terms of PackageIds (<pkg>-<version>) rather than
just package names. You can still specify package names without
versions on the command line, as long as the name is unambiguous.
- GHC understands hidden/exposed modules in a package, and will refuse
to import a hidden module. Also, the hidden/eposed status of packages
is taken into account.
- I had to remove the old package syntax from ghc-pkg, backwards
compatibility isn't really practical.
- All the package.conf.in files have been rewritten in the new syntax,
and contain a complete list of modules in the package. I've set all
the versions to 1.0 for now - please check your package(s) and fix the
version number & other info appropriately.
- New options:
-hide-package P sets the expose flag on package P to False
-ignore-package P unregisters P for this compilation
For comparison, -package P sets the expose flag on package P
to True, and also causes P to be linked in eagerly.
-package-name is no longer officially supported. Unofficially, it's
a synonym for -ignore-package, which has more or less the same effect
as -package-name used to.
Note that a package may be hidden and yet still be linked into
the program, by virtue of being a dependency of some other package.
To completely remove a package from the compiler's internal database,
use -ignore-package.
The compiler will complain if any two packages in the
transitive closure of exposed packages contain the same
module.
You *must* use -ignore-package P when compiling modules for
package P, if package P (or an older version of P) is already
registered. The compiler will helpfully complain if you don't.
The fptools build system does this.
- Note: the Cabal library won't work yet. It still thinks GHC uses
the old package config syntax.
Internal changes/cleanups:
- The ModuleName type has gone away. Modules are now just (a
newtype of) FastStrings, and don't contain any package information.
All the package-related knowledge is in DynFlags, which is passed
down to where it is needed.
- DynFlags manipulation has been cleaned up somewhat: there are no
global variables holding DynFlags any more, instead the DynFlags
are passed around properly.
- There are a few less global variables in GHC. Lots more are
scheduled for removal.
- -i is now a dynamic flag, as are all the package-related flags (but
using them in {-# OPTIONS #-} is Officially Not Recommended).
- make -j now appears to work under fptools/libraries/. Probably
wouldn't take much to get it working for a whole build.
simonmar [Fri, 26 Nov 2004 16:30:12 +0000 (16:30 +0000)]
[project @ 2004-11-26 16:30:12 by simonmar]
Add missing .hi-boot files
simonmar [Fri, 26 Nov 2004 16:22:13 +0000 (16:22 +0000)]
[project @ 2004-11-26 16:19:45 by simonmar]
Further integration with the new package story. GHC now supports
pretty much everything in the package proposal.
- GHC now works in terms of PackageIds (<pkg>-<version>) rather than
just package names. You can still specify package names without
versions on the command line, as long as the name is unambiguous.
- GHC understands hidden/exposed modules in a package, and will refuse
to import a hidden module. Also, the hidden/eposed status of packages
is taken into account.
- I had to remove the old package syntax from ghc-pkg, backwards
compatibility isn't really practical.
- All the package.conf.in files have been rewritten in the new syntax,
and contain a complete list of modules in the package. I've set all
the versions to 1.0 for now - please check your package(s) and fix the
version number & other info appropriately.
- New options:
-hide-package P sets the expose flag on package P to False
-ignore-package P unregisters P for this compilation
For comparison, -package P sets the expose flag on package P
to True, and also causes P to be linked in eagerly.
-package-name is no longer officially supported. Unofficially, it's
a synonym for -ignore-package, which has more or less the same effect
as -package-name used to.
Note that a package may be hidden and yet still be linked into
the program, by virtue of being a dependency of some other package.
To completely remove a package from the compiler's internal database,
use -ignore-package.
The compiler will complain if any two packages in the
transitive closure of exposed packages contain the same
module.
You *must* use -ignore-package P when compiling modules for
package P, if package P (or an older version of P) is already
registered. The compiler will helpfully complain if you don't.
The fptools build system does this.
- Note: the Cabal library won't work yet. It still thinks GHC uses
the old package config syntax.
Internal changes/cleanups:
- The ModuleName type has gone away. Modules are now just (a
newtype of) FastStrings, and don't contain any package information.
All the package-related knowledge is in DynFlags, which is passed
down to where it is needed.
- DynFlags manipulation has been cleaned up somewhat: there are no
global variables holding DynFlags any more, instead the DynFlags
are passed around properly.
- There are a few less global variables in GHC. Lots more are
scheduled for removal.
- -i is now a dynamic flag, as are all the package-related flags (but
using them in {-# OPTIONS #-} is Officially Not Recommended).
- make -j now appears to work under fptools/libraries/. Probably
wouldn't take much to get it working for a whole build.
simonpj [Fri, 26 Nov 2004 13:42:39 +0000 (13:42 +0000)]
[project @ 2004-11-26 13:42:37 by simonpj]
Document overlapping instances
simonpj [Fri, 26 Nov 2004 13:42:21 +0000 (13:42 +0000)]
[project @ 2004-11-26 13:42:21 by simonpj]
More about hi-boot files
simonpj [Thu, 25 Nov 2004 11:37:19 +0000 (11:37 +0000)]
[project @ 2004-11-25 11:36:34 by simonpj]
------------------------------------------
Keep-alive set and Template Haskell quotes
------------------------------------------
a) Template Haskell quotes should be able to mention top-leve
things without resorting to lifting. Example
module Foo( foo ) where
f x = x
foo = [| f 4 |]
Here the reference to 'f' is ok; no need to 'lift' it.
The relevant changes are in TcExpr.tcId
b) However, we must take care not to discard the binding for f,
so we add it to the 'keep-alive' set for the module. I've
now made this into (another) mutable bucket, tcg_keep,
in the TcGblEnv
c) That in turn led me to look at the handling of orphan rules;
as a result I made IdCoreRule into its own data type, which
has simle but non-local ramifications
simonmar [Wed, 24 Nov 2004 13:03:26 +0000 (13:03 +0000)]
[project @ 2004-11-24 13:03:26 by simonmar]
Update s/r conflict total after Ross added four more. The total
according to the comment is currently one more than the real number,
so one of them must have gone away. At some point we should track
down which one.
simonpj [Tue, 23 Nov 2004 15:24:02 +0000 (15:24 +0000)]
[project @ 2004-11-23 15:24:02 by simonpj]
White space only
simonmar [Tue, 23 Nov 2004 14:24:53 +0000 (14:24 +0000)]
[project @ 2004-11-23 14:24:53 by simonmar]
This should fix the build for GHC 6.3+
ross [Tue, 23 Nov 2004 12:35:19 +0000 (12:35 +0000)]
[project @ 2004-11-23 12:35:06 by ross]
Make the X11 and HGL packages more independent, and pass configuration
parameters to package.conf.in via header files.
Also removed residual traces of OpenGL/GLUT/OpenAL from mk/config.mk.in
simonmar [Mon, 22 Nov 2004 17:00:54 +0000 (17:00 +0000)]
[project @ 2004-11-22 17:00:54 by simonmar]
Fix mkdependHS behaviour
simonmar [Mon, 22 Nov 2004 16:42:21 +0000 (16:42 +0000)]
[project @ 2004-11-22 16:42:21 by simonmar]
\r is whitespace
simonmar [Mon, 22 Nov 2004 16:39:37 +0000 (16:39 +0000)]
[project @ 2004-11-22 16:39:37 by simonmar]
Add readline/GHCi/Windows entry
simonmar [Mon, 22 Nov 2004 14:18:40 +0000 (14:18 +0000)]
[project @ 2004-11-22 14:18:40 by simonmar]
Check the result of System.Cmd.system
simonmar [Mon, 22 Nov 2004 12:41:20 +0000 (12:41 +0000)]
[project @ 2004-11-22 12:41:20 by simonmar]
threadRunnable: Fix (probably harmless) buglet
desrt [Mon, 22 Nov 2004 09:18:03 +0000 (09:18 +0000)]
[project @ 2004-11-22 09:18:03 by desrt]
#ifdef powerpc64:
fixed errors in run/return code revealed by testing
wolfgang [Mon, 22 Nov 2004 04:34:01 +0000 (04:34 +0000)]
[project @ 2004-11-22 04:34:01 by wolfgang]
Fix memory transaction primops for 64bit:
The proper way to write (StgBool) true and false in Cmm is 1 :: CInt and
0 :: CInt, respectively.
This is because StgBool is defined as int,
which is often 32bit on 64bit platforms, while Cmm integer literals without
type annotations are 64bit words on 64bit platforms.
So everyone please remember: int and StgBool are not always the same size as
StgInt, StgWord and W_.
panne [Sun, 21 Nov 2004 22:53:37 +0000 (22:53 +0000)]
[project @ 2004-11-21 22:53:31 by panne]
Pushed down OpenGL/GLUT/OpenAL autoconf stuff to the respective directories.
All packages are now built automatically if possible and if they are not
explicitly disabled. NOTE: The "--enable-hopengl" option is now split into
"--enable-opengl" and "--enable-glut".
desrt [Sun, 21 Nov 2004 22:25:24 +0000 (22:25 +0000)]
[project @ 2004-11-21 22:25:23 by desrt]
rtsconfig, smrep: fixes to not put info next to code (like ia64)
machregs: define registers for powerpc64 - same as ppc32
tailcalls: for now do tailcalls as normal calls. (ok on powerpc since
calls don't grow the stack and we don't care about LR anyway)
desrt [Sun, 21 Nov 2004 22:18:46 +0000 (22:18 +0000)]
[project @ 2004-11-21 22:18:46 by desrt]
Added an StgRun for powerpc64/Linux
Fixed a typo in the code for powerpc32 Linux and Darwin
panne [Sun, 21 Nov 2004 12:13:23 +0000 (12:13 +0000)]
[project @ 2004-11-21 12:13:23 by panne]
Fixed include paths. Thinking about the convoluted dependencies between ghc,
ghc-pkg and libraries really makes me dizzy... Some cleanup and simplification
is needed here *urgently*, this stuff is currently beyond my grasp.
panne [Sat, 20 Nov 2004 16:02:44 +0000 (16:02 +0000)]
[project @ 2004-11-20 16:02:41 by panne]
Pushed -fomit-frame-pointer test down to ghc subdir + cleanup
panne [Sat, 20 Nov 2004 15:12:30 +0000 (15:12 +0000)]
[project @ 2004-11-20 15:12:26 by panne]
Pushed "ghc has readline" check down to ghc subdir
simonpj [Fri, 19 Nov 2004 18:00:29 +0000 (18:00 +0000)]
[project @ 2004-11-19 18:00:29 by simonpj]
Add missing symbol for InstallConsoleEvent
tharris [Fri, 19 Nov 2004 17:24:49 +0000 (17:24 +0000)]
[project @ 2004-11-19 17:24:48 by tharris]
Fix build error during unregistered builds, remove warning building GCCompact
stolz [Thu, 18 Nov 2004 16:39:54 +0000 (16:39 +0000)]
[project @ 2004-11-18 16:39:53 by stolz]
Push down more feature-tests
tharris [Thu, 18 Nov 2004 09:57:01 +0000 (09:57 +0000)]
[project @ 2004-11-18 09:56:07 by tharris]
Support for atomic memory transactions and associated regression tests conc041-048
igloo [Thu, 18 Nov 2004 00:56:25 +0000 (00:56 +0000)]
[project @ 2004-11-18 00:56:18 by igloo]
Implement FunDeps for TH.
sof [Wed, 17 Nov 2004 19:07:40 +0000 (19:07 +0000)]
[project @ 2004-11-17 19:07:38 by sof]
Expose Win32 console event handling to the user.
Added RTS support for registering and delivering console events quite
a while ago (rts/win32/ConsoleHandler.c), but got bored with it before
completing the job. Here's the concluding commit; it does the following:
- new module, base/GHC/ConsoleHandler.hs which supports registering of
console event handlers (the null module on plats other than mingw).
- special handling of aborted async read()s on 'standard input' in
rts/win32/IOManager.c (together with GHC.Conc.asyncRead). See comments
in that IOManager.c as to why this is needed.
[ Any other code that performs blocking I/O on 'standard input' will
need to be tweaked too to be console event handler/signal friendly.]
- for now, disable the delivery of 'close' events (see
rts/win32/ConsoleHandler.c:generic_handler() for reasons why)
Feel free to hoik GHC/ConsoleHandler.hs around the lib hierarchy to wherever
is considered more fitting. Unifying functionality between System.Posix.Signals
and GHC.ConsoleHandler is one (obvious) thing to do.
-- Demonstrating GHC.ConsoleHandler use; win32 only
module Main(main) where
import GHC.ConsoleHandler
import System.IO (hFlush, stdout)
import GHC.Conc (threadDelay)
main :: IO ()
main = do
installHandler (Catch (\ _ -> putStrLn "Caught console event; ignoring" >> hFlush stdout))
loop
where
loop = do
threadDelay 100000
ls <- getLine
putStrLn ls
loop
--
josefs [Wed, 17 Nov 2004 18:31:08 +0000 (18:31 +0000)]
[project @ 2004-11-17 18:31:08 by josefs]
Needed to include a header file in Compat/Directory on windows
simonmar [Tue, 16 Nov 2004 10:00:10 +0000 (10:00 +0000)]
[project @ 2004-11-16 10:00:10 by simonmar]
Fix build with GHC 6.2.x
simonmar [Tue, 16 Nov 2004 09:50:13 +0000 (09:50 +0000)]
[project @ 2004-11-16 09:50:13 by simonmar]
Quick Start section: add disclaimer for Windows builders
simonmar [Mon, 15 Nov 2004 12:15:13 +0000 (12:15 +0000)]
[project @ 2004-11-15 12:15:13 by simonmar]
Need to add System to ALL_DIRS
krasimir [Sun, 14 Nov 2004 09:59:48 +0000 (09:59 +0000)]
[project @ 2004-11-14 09:59:48 by krasimir]
Use findExecutable from Compat.Directory instead of its own findBinary.
Now the tool works under Windows as well as under Linux.
With cygwin we can use #!runghc ...
krasimir [Sun, 14 Nov 2004 09:50:34 +0000 (09:50 +0000)]
[project @ 2004-11-14 09:50:33 by krasimir]
* Add stub for System.FilePath
* Add findExecutable & copyFile to Compat.Directory
wolfgang [Sun, 14 Nov 2004 02:16:49 +0000 (02:16 +0000)]
[project @ 2004-11-14 02:16:49 by wolfgang]
Mac OS X: Track Cabal-related changes (extra_frameworks -> extraFrameworks)
panne [Sat, 13 Nov 2004 13:53:32 +0000 (13:53 +0000)]
[project @ 2004-11-13 13:53:32 by panne]
Fixed DocBook XML once again. Perhaps I should add a "make validate"
CVS hook, hmmm... >:-)
simonmar [Fri, 12 Nov 2004 15:57:00 +0000 (15:57 +0000)]
[project @ 2004-11-12 15:57:00 by simonmar]
we need -package Cabal for stage2
simonmar [Fri, 12 Nov 2004 15:51:37 +0000 (15:51 +0000)]
[project @ 2004-11-12 15:51:37 by simonmar]
Fix build
simonmar [Fri, 12 Nov 2004 15:17:42 +0000 (15:17 +0000)]
[project @ 2004-11-12 15:17:42 by simonmar]
Add Haskell 98 isAlpha divergence