ghc-hetmet.git
16 years agoFirst cut at reviving the External Core tools
Tim Chevalier [Mon, 10 Mar 2008 02:58:21 +0000 (02:58 +0000)]
First cut at reviving the External Core tools

I updated the External Core AST to be somewhat closer to reality (where reality is defined by the HEAD), and got all the code to compile under GHC 6.8.1. (That means it works, right?)

Major changes:

- Added a Makefile.

- Core AST:
    - Represented package names and qualified module names.
    - Added type annotation on Case exps.
    - Changed Coerce to Cast.
    - Cleaned up representation of qualified/unqualified names.
    - Fixed up wired-in module names (no more "PrelGHC", etc.)

- Updated parser/interpreter/typechecker/prep for the new AST.

- Typechecker:
    - Used a Reader monad to pass around the global environment and top module name.
    - Added an entry point to check a single expression.

- Prep:
    - Got rid of typeofExp; it's now defined in terms of the typechecker.

16 years agoRemove ndpFlatten
Roman Leshchinskiy [Sun, 9 Mar 2008 22:59:14 +0000 (22:59 +0000)]
Remove ndpFlatten

This patch removes the ndpFlatten directory and the -fflatten static flag.
This code has never worked and has now been superceded by vectorisation.

16 years agodocumentation fix: change flag -frules-off to -fno-rewrite-rules
iavor.diatchki@gmail.com [Sun, 9 Mar 2008 19:19:11 +0000 (19:19 +0000)]
documentation fix: change flag -frules-off to -fno-rewrite-rules

16 years agoDon't expose the unfolding of dictionary selectors without -O
simonpj@microsoft.com [Thu, 6 Mar 2008 13:50:26 +0000 (13:50 +0000)]
Don't expose the unfolding of dictionary selectors without -O

When compiling without -O we were getting code like this

f x = case GHC.Base.$f20 of
  :DEq eq neq -> eq x x

But because of the -O the $f20 dictionary is not available, so exposing
the dictionary selector was useless.  Yet it makes the code bigger!
Better to get
f x = GHC.Base.== GHC.Bsae.$f20 x x

This patch suppresses the implicit unfolding for dictionary selectors
when compiling without -O.  We could do the same for other implicit
Ids, but this will do for now.

There should be no effect when compiling with -O.  Programs should
be smaller without -O and may run a tiny bit slower.

16 years agoFix Trac #783: improve short-cutting literals in the type checker
simonpj@microsoft.com [Thu, 6 Mar 2008 13:47:34 +0000 (13:47 +0000)]
Fix Trac #783: improve short-cutting literals in the type checker

The Inst.shortCutIntLit mechanism in the type checker was missing cases
where a floating-point literal was given without an explicit decimal point.

As a result, programs with lots of floating-point literals (without decimals)
ended up with massive Static Reference Tables.  This is not cool.  See
comments with Trac #783 for details.

16 years agoFix Trac #2138: print the 'stupid theta' of a data type
simonpj@microsoft.com [Thu, 6 Mar 2008 13:46:51 +0000 (13:46 +0000)]
Fix Trac #2138: print the 'stupid theta' of a data type

16 years agoFix vectorisation monad
Roman Leshchinskiy [Fri, 7 Mar 2008 05:08:59 +0000 (05:08 +0000)]
Fix vectorisation monad

16 years agoImprove SpecConstr for local bindings: seed specialisation from the calls
simonpj@microsoft.com [Thu, 6 Mar 2008 12:00:04 +0000 (12:00 +0000)]
Improve SpecConstr for local bindings: seed specialisation from the calls

This patch makes a significant improvement to SpecConstr, based on
Roman's experience with using it for stream fusion.  The main change is
this:

  * For local (not-top-level) declarations, seed the specialisation
    loop from the calls in the body of the 'let'.

See Note [Local recursive groups] for discussion and example.  Top-level
declarations are treated just as before.

Other changes in this patch:

  * New flag -fspec-constr-count=N sets the maximum number of specialisations
    for any single function to N.  -fno-spec-constr-count removes the limit.

  * Refactoring in specLoop and friends; new algebraic data types
    OneSpec and SpecInfo instead of the tuples that were there before

  * Be less keen to specialise on variables that are simply in scope.
    Example
      f p q = letrec g a y = ...g....  in g q p
    We probably do not want to specialise 'g' for calls with exactly
    the arguments 'q' and 'p', since we know nothing about them.

16 years agoRefactor OccAnal; and improve dead-code elimination
simonpj@microsoft.com [Wed, 5 Mar 2008 15:57:08 +0000 (15:57 +0000)]
Refactor OccAnal; and improve dead-code elimination

The occurrence analyer is now really rather subtle when dealing
with recursive groups; see Note [Loop breaking and RULES] especially.

This patch refactors this code a bit, notably
  * Introduces a new data type Details instead of a tuple

  * More clearly breaks up a recursive group into its SCCs
before processing it in a separate function occAnalRec

  * As a result, does better dead-code elimination, becuause it's
    done per SCC rather than for the whole Rec

16 years agoCopy the right ghc-pkg.bin into bindists
Ian Lynagh [Wed, 5 Mar 2008 22:40:20 +0000 (22:40 +0000)]
Copy the right ghc-pkg.bin into bindists

16 years agoAdd a missing endif to the bindist Makefile
Ian Lynagh [Wed, 5 Mar 2008 22:11:36 +0000 (22:11 +0000)]
Add a missing endif to the bindist Makefile

16 years agoFix bashisms; patch from Bernie Pope
Ian Lynagh [Wed, 5 Mar 2008 13:45:56 +0000 (13:45 +0000)]
Fix bashisms; patch from Bernie Pope

16 years agoImprove no-type-signature warning
Ian Lynagh [Wed, 5 Mar 2008 01:12:42 +0000 (01:12 +0000)]
Improve no-type-signature warning
Instead of
   Warning: Definition but no type signature for `.+.'
            Inferred type: .+. :: forall a. a
we now say
    Warning: Definition but no type signature for `.+.'
             Inferred type: (.+.) :: forall a. a

16 years agoFix typo
Ian Lynagh [Sun, 2 Mar 2008 15:13:39 +0000 (15:13 +0000)]
Fix typo

16 years agoIn bindists, look in the right place to see if we have provided docs
Ian Lynagh [Sun, 2 Mar 2008 14:04:08 +0000 (14:04 +0000)]
In bindists, look in the right place to see if we have provided docs
Fixes trac #1971: unjustified warning about documentation

16 years agoRemove GADT refinements, part 3
Manuel M T Chakravarty [Fri, 29 Feb 2008 03:57:40 +0000 (03:57 +0000)]
Remove GADT refinements, part 3

16 years agoMacOS installer: Uninstaller must be able to deal with ATiger receipts
Manuel M T Chakravarty [Thu, 28 Feb 2008 05:07:07 +0000 (05:07 +0000)]
MacOS installer: Uninstaller must be able to deal with ATiger receipts

16 years agoAdd and use seqBitmap when constructing SRTs
Ian Lynagh [Wed, 27 Feb 2008 14:45:05 +0000 (14:45 +0000)]
Add and use seqBitmap when constructing SRTs
This roughly halves memory usage when compiling
    module Foo where

    foo :: Double -> Int
    foo x | x == 1 = 1
    ...
    foo x | x == 500 = 500
without optimisation.

16 years agoWhitespace
Ian Lynagh [Wed, 20 Feb 2008 19:12:30 +0000 (19:12 +0000)]
Whitespace

16 years agoRemove GADT refinements, part 2
Manuel M T Chakravarty [Thu, 28 Feb 2008 05:53:26 +0000 (05:53 +0000)]
Remove GADT refinements, part 2

16 years agoFix Trac #2130: improve derived Ord for primmitive types
simonpj@microsoft.com [Thu, 28 Feb 2008 12:11:06 +0000 (12:11 +0000)]
Fix Trac #2130: improve derived Ord for primmitive types

This patch does two things:

* (Minor): in TcGenDeriv.careful_compare_Case, test for less-than before
  equality. This should reduce the number of dynamic tests, and also gives
  more scope for optimisation, since less-than tells us more than equality.

* (More important): add special-case derived code for data types that are
  simple wrappers of primitive types. See
Note [Comparision of primitive types]
  This fixes Trac 2130.

However see also Trac #2132, which is not addressed here.

16 years agoComments only
simonpj@microsoft.com [Thu, 28 Feb 2008 11:13:01 +0000 (11:13 +0000)]
Comments only

16 years agoadd a note about SMP execution not being supported with profiling
Simon Marlow [Thu, 28 Feb 2008 11:22:09 +0000 (11:22 +0000)]
add a note about SMP execution not being supported with profiling

16 years agoEnable -prof -threaded (#886)
Simon Marlow [Thu, 28 Feb 2008 11:16:31 +0000 (11:16 +0000)]
Enable -prof -threaded (#886)
It turns out that -prof -threaded works (modulo some small changes),
because all the data structures used in profiling are only accessed by
one thread at a time, at long as we don't use +RTS -N2 or higher.  So
this patch enables the use of -prof -threaded, but an error is given
if you ask for more than one CPU with +RTS -N.

16 years agoWibble to error message (stmt of do block or comprehension)
simonpj@microsoft.com [Thu, 28 Feb 2008 08:31:04 +0000 (08:31 +0000)]
Wibble to error message (stmt of do block or comprehension)

16 years agoMake explicit lists more fusable
Max Bolingbroke [Thu, 28 Feb 2008 08:30:50 +0000 (08:30 +0000)]
Make explicit lists more fusable

16 years agoAdd comments explaining flags
simonpj@microsoft.com [Thu, 28 Feb 2008 08:29:35 +0000 (08:29 +0000)]
Add comments explaining flags

16 years agoRemove GADT refinements, part 1
Manuel M T Chakravarty [Thu, 28 Feb 2008 04:53:51 +0000 (04:53 +0000)]
Remove GADT refinements, part 1
- A while ago, I changed the type checker to use equality constraints together
  with implication constraints to track local type refinement due to GADT
  pattern matching.  This patch is the first of a number of surgical strikes
  to remove the resulting dead code of the previous GADT refinement machinery.

  Hurray to code simplification!

16 years agoEliminate SkolemOccurs skolems only after checkLoop reached a fixed point
Manuel M T Chakravarty [Thu, 28 Feb 2008 00:19:57 +0000 (00:19 +0000)]
Eliminate SkolemOccurs skolems only after checkLoop reached a fixed point
- See test case indexed-types/should_fail/SkolemOccursLoop, which sends the
  type checker into an endless loop without this fix

16 years agoFix Trac #2126: re-order tests (easy)
simonpj@microsoft.com [Wed, 27 Feb 2008 16:32:02 +0000 (16:32 +0000)]
Fix Trac #2126: re-order tests (easy)

16 years agoFix Trac #2111: improve error handling for 'rec' in do-notation
simonpj@microsoft.com [Tue, 26 Feb 2008 17:56:35 +0000 (17:56 +0000)]
Fix Trac #2111: improve error handling for 'rec' in do-notation

We were not dealing correctly with all the combinations of
do notation
mdo notation
arrow notation
in combination with 'rec' Stmts.

I think this patch sorts it out.

16 years agoRemove gaw comment
simonpj@microsoft.com [Tue, 26 Feb 2008 17:53:05 +0000 (17:53 +0000)]
Remove gaw comment

16 years agoFix Trac #1899; missing equality check in typechecker's constraint simplifier
simonpj@microsoft.com [Tue, 26 Feb 2008 17:47:43 +0000 (17:47 +0000)]
Fix Trac #1899; missing equality check in typechecker's constraint simplifier

This patch fixes a missing equality check (uifying type variable b=b) in
the new constraint simplifier in TcTyFuns.  As it stands, we were making
'b' point to itself, which subsequently led to an infinite loop when
zonking.  Test is T1899.hs

16 years agoFIX #2122: file locking bug
Simon Marlow [Tue, 26 Feb 2008 10:46:50 +0000 (10:46 +0000)]
FIX #2122: file locking bug
Second and subsequent readers weren't being inserted into the
fd->lock hash table, which meant that the file wasn't correctly
unlocked when the Handles were closed.

16 years agodocumentation improvements from Frederik Eaton
Simon Marlow [Tue, 26 Feb 2008 10:26:12 +0000 (10:26 +0000)]
documentation improvements from Frederik Eaton

16 years agomarkup fix
Simon Marlow [Tue, 26 Feb 2008 10:25:58 +0000 (10:25 +0000)]
markup fix

16 years agoMac installer: cross-compile for 10.4
Manuel M T Chakravarty [Mon, 25 Feb 2008 09:37:34 +0000 (09:37 +0000)]
Mac installer: cross-compile for 10.4

16 years agoMake UniqFM non-strict again while we work out what we're doing.
Ian Lynagh [Mon, 25 Feb 2008 17:13:05 +0000 (17:13 +0000)]
Make UniqFM non-strict again while we work out what we're doing.
This "fixes" the very-slow problem we have when compiling dictionaries.

16 years agoFix Trac #2082
simonpj@microsoft.com [Tue, 19 Feb 2008 17:34:10 +0000 (17:34 +0000)]
Fix Trac #2082

16 years agoFix Trac #2114: error reporting for 'forall' without appropriate flags
simonpj@microsoft.com [Fri, 22 Feb 2008 18:26:46 +0000 (18:26 +0000)]
Fix Trac #2114: error reporting for 'forall' without appropriate flags

16 years agoImprove error messages from type-checking data constructors
simonpj@microsoft.com [Fri, 22 Feb 2008 18:25:14 +0000 (18:25 +0000)]
Improve error messages from type-checking data constructors

This addresses Trac #2112

16 years agoAdd type sigs and minor refactoring
simonpj@microsoft.com [Fri, 22 Feb 2008 18:23:05 +0000 (18:23 +0000)]
Add type sigs and minor refactoring

16 years agoFIX #2073: Don't add empty lines to GHCI's history
Ian Lynagh [Sun, 24 Feb 2008 14:32:56 +0000 (14:32 +0000)]
FIX #2073: Don't add empty lines to GHCI's history

16 years agoFIX #1977: Check to see if $(bindir) is in the path
Ian Lynagh [Sun, 24 Feb 2008 13:43:34 +0000 (13:43 +0000)]
FIX #1977: Check to see if $(bindir) is in the path
Before telling the user to add it, when installing a bindist, check to
see if $(bindir) is already in the path.

16 years agoFix warnings in Simplify
Ian Lynagh [Fri, 22 Feb 2008 15:03:18 +0000 (15:03 +0000)]
Fix warnings in Simplify

16 years agoWhitespace
Ian Lynagh [Fri, 22 Feb 2008 14:07:55 +0000 (14:07 +0000)]
Whitespace

16 years agoAdd a comment
Ian Lynagh [Wed, 20 Feb 2008 20:58:44 +0000 (20:58 +0000)]
Add a comment

16 years agoFix most of the warnings in StgLint
Ian Lynagh [Wed, 20 Feb 2008 17:18:58 +0000 (17:18 +0000)]
Fix most of the warnings in StgLint

16 years agoWhitespace
Ian Lynagh [Wed, 20 Feb 2008 17:11:40 +0000 (17:11 +0000)]
Whitespace

16 years agoCprAnalyse is warning-free
Ian Lynagh [Wed, 20 Feb 2008 17:08:43 +0000 (17:08 +0000)]
CprAnalyse is warning-free

16 years agoWhitespace
Ian Lynagh [Wed, 20 Feb 2008 17:06:50 +0000 (17:06 +0000)]
Whitespace

16 years agoFix #1984: missing context switches
Simon Marlow [Tue, 19 Feb 2008 10:22:12 +0000 (10:22 +0000)]
Fix #1984: missing context switches

16 years agofix unregisterised stage 2 build
Simon Marlow [Tue, 19 Feb 2008 09:34:07 +0000 (09:34 +0000)]
fix unregisterised stage 2 build

16 years agoMac OS X deployment target: piping opts through Makefiles
Manuel M T Chakravarty [Thu, 21 Feb 2008 22:44:49 +0000 (22:44 +0000)]
Mac OS X deployment target: piping opts through Makefiles

16 years agoRewrite fixTvSubstEnv so it iteratively applies its substition
Ian Lynagh [Wed, 20 Feb 2008 15:37:52 +0000 (15:37 +0000)]
Rewrite fixTvSubstEnv so it iteratively applies its substition
This fixes a stack overflow when using strict UniqFMs. It might be
possible to rewrite it more efficiently, or to avoid needing it in the
first place.

16 years agoTypo
Ian Lynagh [Tue, 19 Feb 2008 20:41:17 +0000 (20:41 +0000)]
Typo

16 years agoMake some more modules use LazyUniqFM instead of UniqFM
Ian Lynagh [Thu, 7 Feb 2008 01:57:14 +0000 (01:57 +0000)]
Make some more modules use LazyUniqFM instead of UniqFM
If these modules use UniqFM then we get a stack overflow when compiling
modules that use fundeps. I haven't tracked down the actual cause.

16 years agoAdd configure option --with-macos-deployment-target
Manuel M T Chakravarty [Tue, 19 Feb 2008 03:17:55 +0000 (03:17 +0000)]
Add configure option --with-macos-deployment-target

16 years agoFix warning in SCCfinal
Ian Lynagh [Tue, 19 Feb 2008 02:04:29 +0000 (02:04 +0000)]
Fix warning in SCCfinal

16 years agoWhitespace only
Ian Lynagh [Tue, 19 Feb 2008 01:52:59 +0000 (01:52 +0000)]
Whitespace only

16 years agoFix warnings in UniqSupply
Ian Lynagh [Tue, 19 Feb 2008 01:32:33 +0000 (01:32 +0000)]
Fix warnings in UniqSupply

16 years agoWhitespace only
Ian Lynagh [Tue, 19 Feb 2008 01:24:17 +0000 (01:24 +0000)]
Whitespace only

16 years agoFix non-missing-signature warnings in MkId
Ian Lynagh [Tue, 19 Feb 2008 01:09:17 +0000 (01:09 +0000)]
Fix non-missing-signature warnings in MkId

16 years agoWhitespace only
Ian Lynagh [Tue, 19 Feb 2008 00:50:42 +0000 (00:50 +0000)]
Whitespace only

16 years agoWhitespace only
Ian Lynagh [Mon, 18 Feb 2008 23:45:59 +0000 (23:45 +0000)]
Whitespace only

16 years agoMake literals in the syntax tree strict
Ian Lynagh [Mon, 18 Feb 2008 18:34:24 +0000 (18:34 +0000)]
Make literals in the syntax tree strict

16 years agoMake the parser a bit stricter
Ian Lynagh [Mon, 18 Feb 2008 17:55:14 +0000 (17:55 +0000)]
Make the parser a bit stricter

16 years agoseq what we actually want to seq, not the seq'ing function
Ian Lynagh [Wed, 13 Feb 2008 13:18:57 +0000 (13:18 +0000)]
seq what we actually want to seq, not the seq'ing function

16 years agoattempt to fix #2098 (PPC pepple please test & fix)
Simon Marlow [Mon, 18 Feb 2008 11:57:48 +0000 (11:57 +0000)]
attempt to fix #2098 (PPC pepple please test & fix)

16 years agoFIX #2023: substitute for $topdir in haddockInterfaces and haddockHTMLs
Simon Marlow [Sat, 9 Feb 2008 14:36:48 +0000 (14:36 +0000)]
FIX #2023: substitute for $topdir in haddockInterfaces and haddockHTMLs

16 years agoAll installed Haskell prgms have an inplace and an installed version
Manuel M T Chakravarty [Mon, 18 Feb 2008 06:18:09 +0000 (06:18 +0000)]
All installed Haskell prgms have an inplace and an installed version
- GHC installs a range of compiled Haskell programs in addition to the actual
  compiler.  To ensure that they all run on the platform targeted by the build
  (which may have different libraries installed than the build host), we need
  to make sure that all compiled Haskell code going into an install is build
  with the stage 1 compiler, not the bootstrap compiler.  Getting this right
  is especially important on the Mac to enable builds that work on Mac OS X
  versions that are older than the one performing the build.
- For all installed utils implemented in Haskell (i.e., ghc-pkg, hasktags,
  hsc2hs, runghc, hpc, and pwd) we compile two versions, an inplace version
  and a version for installation.  The former is build by the bootstrap
  compiler during the stage 1 build and the latter is build by the stage 1
  compiler during the stage 2 build.
- This is really very much as the setup for ghc itself, only that we don't use
  separate stage1/ and stage2/ build directories.  Instead, we clean before
  each build.  CAVEAT: This only works properly if invoked from the
  toplevel Makefile.
- Instead of UseStage1=YES (as used by the previous binary-dist-specific
  recompilation), we now use the same $(stage) variables as used for the
  compiler proper - to increase uniformity and to avoid extra conditionals for
  the install target.

16 years agoFix warnings in Pretty
Ian Lynagh [Mon, 18 Feb 2008 21:41:51 +0000 (21:41 +0000)]
Fix warnings in Pretty

16 years agoFix warnings in FiniteMap
Ian Lynagh [Mon, 18 Feb 2008 20:04:08 +0000 (20:04 +0000)]
Fix warnings in FiniteMap

16 years agoFix warnings in Binary
Ian Lynagh [Mon, 18 Feb 2008 19:36:45 +0000 (19:36 +0000)]
Fix warnings in Binary

16 years agoFix warnings in StringBuffer
Ian Lynagh [Mon, 18 Feb 2008 19:18:46 +0000 (19:18 +0000)]
Fix warnings in StringBuffer

16 years agoFix warnings in IOEnv
Ian Lynagh [Mon, 18 Feb 2008 19:08:49 +0000 (19:08 +0000)]
Fix warnings in IOEnv

16 years agoFix warnings in FastString, and check for empty case in head/tail
Ian Lynagh [Mon, 18 Feb 2008 14:47:07 +0000 (14:47 +0000)]
Fix warnings in FastString, and check for empty case in head/tail

16 years agoWhitespace only
Ian Lynagh [Mon, 18 Feb 2008 11:22:32 +0000 (11:22 +0000)]
Whitespace only

16 years agoWhitespace only
Ian Lynagh [Mon, 18 Feb 2008 11:21:01 +0000 (11:21 +0000)]
Whitespace only

16 years agoWhitespace only
Ian Lynagh [Mon, 18 Feb 2008 11:19:41 +0000 (11:19 +0000)]
Whitespace only

16 years agoWhitespace only
Ian Lynagh [Mon, 18 Feb 2008 11:02:41 +0000 (11:02 +0000)]
Whitespace only

16 years agoWhitespace only
Ian Lynagh [Mon, 18 Feb 2008 10:59:09 +0000 (10:59 +0000)]
Whitespace only

16 years agoWhitespace only
Ian Lynagh [Mon, 18 Feb 2008 10:53:43 +0000 (10:53 +0000)]
Whitespace only

16 years agoTweak whitespace
Ian Lynagh [Sun, 17 Feb 2008 17:51:33 +0000 (17:51 +0000)]
Tweak whitespace

16 years agoFix typo
Ian Lynagh [Sun, 17 Feb 2008 17:50:21 +0000 (17:50 +0000)]
Fix typo

16 years agoPrint better error message for reading External Core
Tim Chevalier [Sun, 17 Feb 2008 22:38:44 +0000 (22:38 +0000)]
Print better error message for reading External Core

GHC panicked with a "Prelude.undefined" error message if you tried to
compile a .hcr file. Since support for reading ExternalCore simply does
not exist, I added an error message to say that.

Please merge to 6.8. Thanks.

16 years agoDocumentation only: update External Core section of user guide
Tim Chevalier [Sun, 17 Feb 2008 21:32:06 +0000 (21:32 +0000)]
Documentation only: update External Core section of user guide

I updated the External Core section of the user guide, mostly to reflect
that the input path is broken and there are no firm plans to fix it.

16 years agoGenerate foo(void) rather than foo() in FFI stub files
Ian Lynagh [Sat, 16 Feb 2008 14:10:31 +0000 (14:10 +0000)]
Generate foo(void) rather than foo() in FFI stub files
-Wstrict-prototypes warns about the latter.
Patch from pcc in trac #2100.

16 years agoMake hasktags -Wall clean
Ian Lynagh [Fri, 15 Feb 2008 16:03:09 +0000 (16:03 +0000)]
Make hasktags -Wall clean

16 years agoWhitespace only
Ian Lynagh [Fri, 15 Feb 2008 15:51:22 +0000 (15:51 +0000)]
Whitespace only

16 years agoFix building hasktags
Ian Lynagh [Fri, 15 Feb 2008 15:44:15 +0000 (15:44 +0000)]
Fix building hasktags

16 years agoRevert an accidental comment change
Ian Lynagh [Fri, 15 Feb 2008 15:35:58 +0000 (15:35 +0000)]
Revert an accidental comment change

16 years agofind module names, fix for get constructor names, find class names as well, sort...
marco-oweber@gmx.de [Tue, 12 Feb 2008 23:21:57 +0000 (23:21 +0000)]
find module names, fix for get constructor names, find class names as well, sort ctag files

16 years agoadded TODO item and link to alternatives on wiki
marco-oweber@gmx.de [Tue, 12 Feb 2008 23:18:53 +0000 (23:18 +0000)]
added TODO item and link to alternatives on wiki

16 years agoMake more arch-specific #if's exclusive with #else #error cases
Duncan Coutts [Thu, 7 Feb 2008 17:00:20 +0000 (17:00 +0000)]
Make more arch-specific #if's exclusive with #else #error cases
So when the next person compiles the Sparc NCG it should fail more
obviously at compile time rather than panicing at runtime.
Plus one obvious fix for LocalReg gaining an extra param
Missing bits of Sparc NCG:
  * genSwitch for generating jump tables. This is the most tricky one.
  * ALLOCATABLE_REGS_INTEGER and ALLOCATABLE_REGS_DOUBLE just requires
    finding and verifying the values. The nearby comment describes how.
  * isRegRegMove and mkRegRegMoveInstr. Sparc uses Or for int move, check
    what this is supposed to do for single and double float types.
  * regDotColor. Probably just copy the ppc impl.

16 years agoDocument code a bit better
Ian Lynagh [Wed, 13 Feb 2008 16:11:06 +0000 (16:11 +0000)]
Document code a bit better

16 years agoAdd a necessary [] error case
Ian Lynagh [Wed, 13 Feb 2008 15:42:32 +0000 (15:42 +0000)]
Add a necessary [] error case

16 years ago\e -> f e ===> f
Ian Lynagh [Wed, 13 Feb 2008 15:38:35 +0000 (15:38 +0000)]
\e -> f e   ===>    f

16 years agoFixed warnings in parser/Lexer.x
Twan van Laarhoven [Mon, 4 Feb 2008 02:11:31 +0000 (02:11 +0000)]
Fixed warnings in parser/Lexer.x

The -w flag can not be removed, because alex also generates code with lots of warnings.

16 years agoMonadification and Fixed warnings in parser/RdrHsSyn, except for incomplete pattern...
Twan van Laarhoven [Mon, 4 Feb 2008 01:50:53 +0000 (01:50 +0000)]
Monadification and Fixed warnings in parser/RdrHsSyn, except for incomplete pattern matches