1. 26 Jan, 2011 4 commits
  2. 24 Jan, 2011 2 commits
  3. 25 Jan, 2011 5 commits
    • simonpj@microsoft.com's avatar
      Split main/GHC into GHC and GhcMake · a79a5319
      simonpj@microsoft.com authored
      There are two things going on in main/GHC.hs.
        * It's the root module of the GHC package
        * It contains lots of stuff for --make
      It is also gigantic (2.7k lines)
      This patch splits it into two
        * GHC.hs is the root module for the GHC package
            (1.3k lines)
        * GhcMake.hs contains the stuff for --make
            (1.4k lines)
      Happily the functional split divided it almost
      exactly in half.
      This is a pure refactoring.  There should be no 
      behavioural change.
    • simonpj@microsoft.com's avatar
      Comments only · 45bc009d
      simonpj@microsoft.com authored
    • simonpj@microsoft.com's avatar
      Fix Trac #3717 by making exprOkForSpeculation a bit cleverer · d056dfed
      simonpj@microsoft.com authored
      The main change here is to do with dropping redundant seqs.
      See Note [exprOkForSpeculation: case expressions] in CoreUtils.
    • simonpj@microsoft.com's avatar
      Improve dataToTag# magic · 5cdc2f1d
      simonpj@microsoft.com authored
      dataToTag# is a bit unsatisfactory because it requires
      its argument to be evaluated, and we don't have a good
      way to enforce that. This patch adds some comments, and
      makes exprOkForSpeculation a bit less picky in the case
      of dataToTag# (since the argument may, in fact, not be
    • simonpj@microsoft.com's avatar
      Fix Trac #4917: try a bit harder to unify on-the-fly · 1add108e
      simonpj@microsoft.com authored
      This is generally a modest improvement but, more important,
      it fixes a "unify-under-forall" problem.  See Note [Avoid deferring].
      There's still a lurking unsatisfactory-ness in that we can't
      defer arbitrary constraints that are trapped under a forall.
  4. 24 Jan, 2011 1 commit
    • chak@cse.unsw.edu.au.'s avatar
      DPH options updated · 9e6e96bd
      chak@cse.unsw.edu.au. authored
      - '-Odph' is now '-O2 -fsimplifier-phases=3 -fsimplifier-iterations=20'
      - The new option '-fdph-none' is the default; it indicates that no DPH
        backend is selected and is the only valid option if the DPH libraries
        are not installed.  If vectorisation is attempted with -fdph-none a
        suitable error message is generated.
      - Hence, '-fdph-par' (or '-fdph-seq') needs to be explicitly selected
        when using vectorisation and when linking vectorised code.  (There
        seems to be no elegant way to avoid that.)
  5. 23 Jan, 2011 5 commits
  6. 22 Jan, 2011 2 commits
    • Ian Lynagh's avatar
      Use := when assigning the result of $(wildcard ...) · b36b42fd
      Ian Lynagh authored
      Avoids repeated evaluations of things that need system calls etc
    • Ian Lynagh's avatar
      Simplify the build system, and remove 2 phases · 295016c3
      Ian Lynagh authored
      Phase 0:
          Includes: package-data.mk files for things built by the
                    bootstrapping compiler.
          Builds:   the dependency files for hsc2hs and genprimopcode. We need
                    to do this now, as hsc2hs needs to be buildable in phase 1's
                    includes (so that we can make the hpc library's .hs source
                    files, which in turn is necessary for making its dependency
                    files), and genprimopcode needs to be buildable in phase 1's
                    includes (so that we can make the primop-*.hs-incl files,
                    which are sources for the stage1 compiler library, and thus
                    necessary for making its dependency files).
      Phase 1:
          Includes: dependency files for things built by the bootstrapping
          Builds:   package-data.mk files for everything else. Note that this
                    requires configuring the packages, which means telling cabal
                    which ghc to use, and thus the stage1 compiler gets built
                    during this phase. 
      Phase "":
          Includes: dependency files for everything else.
          Builds:   Everything else. 
  7. 21 Jan, 2011 2 commits
  8. 19 Jan, 2011 1 commit
  9. 20 Jan, 2011 1 commit
  10. 19 Jan, 2011 1 commit
  11. 13 Jan, 2011 1 commit
  12. 19 Jan, 2011 6 commits
  13. 18 Jan, 2011 3 commits
  14. 17 Jan, 2011 6 commits