1. 22 Apr, 2008 9 commits
  2. 21 Apr, 2008 1 commit
  3. 22 Apr, 2008 4 commits
    • chevalier@alum.wellesley.edu's avatar
      Improve External Core syntax for newtypes · e4417dcd
      chevalier@alum.wellesley.edu authored
      I was confused by the newtype eta-contraction trick before.
      Newtype declarations are much less redundant now.
      e4417dcd
    • chevalier@alum.wellesley.edu's avatar
      Update External Core docs · 9f565a39
      chevalier@alum.wellesley.edu authored
      Update documentation to reflect GHC HEAD.
      9f565a39
    • chevalier@alum.wellesley.edu's avatar
      External Core typechecker - improve handling of coercions · 10704b34
      chevalier@alum.wellesley.edu authored
      Reorganized coercion-related code in the typechecker (this was
      brought about by typechecking the Core versions of the optimized GHC
      libraries.) A few miscellaneous changes (fixed a bug in Prep involving
      eta-expanding partial applications that had additional type
      arguments.)
      10704b34
    • chevalier@alum.wellesley.edu's avatar
      Naming changes in External Core · b0045fdd
      chevalier@alum.wellesley.edu authored
      Two changes:
      - Top-level bindings in a given module are now printed as a 
        single %rec group. I found that in External Core generated from
        optimized code, nonrec bindings weren't being printed in
        dependency order. Rather than fixing that, I decided to not
        even pretend to preserve dependency order (since there's
        recursion between modules anyway.)
      
      - Internal names are now printed with their uniques attached
        (otherwise, GHC was printing out code with shadowed bindings,
        and this isn't supposed to happen in External Core.)
      b0045fdd
  4. 21 Apr, 2008 1 commit
  5. 20 Apr, 2008 1 commit
  6. 16 Apr, 2008 1 commit
  7. 17 Apr, 2008 1 commit
  8. 12 Apr, 2008 1 commit
  9. 08 Apr, 2008 1 commit
    • Ian Lynagh's avatar
      Fix lndir · 5357e3c6
      Ian Lynagh authored
      It would copy when it should symlink, and vice-versa.
      5357e3c6
  10. 16 Apr, 2008 1 commit
    • chevalier@alum.wellesley.edu's avatar
      Improve External Core syntax · 2ad4df60
      chevalier@alum.wellesley.edu authored
      Got rid of the silly '^' characters before qualified names (plus:
      reverts to the original syntax; minus: makes the parser a little
      hairier.)
      
      Also, added warning in the typechecker for coercion kind mismatches
      rather than considering that a type error. (see the added comment in
      Check.hs for details.)
      2ad4df60
  11. 14 Apr, 2008 1 commit
  12. 11 Apr, 2008 2 commits
    • simonpj@microsoft.com's avatar
      Revive the static argument transformation · 31478ab9
      simonpj@microsoft.com authored
      This patch revives the Static Argument Transformation, thanks to
      Max Bolingbroke.  It is enabled with 
      	-fstatic-argument-transformation
      or	-O2
      
      Headline nofib results
      
                        Size    Allocs   Runtime
      Min             +0.0%    -13.7%    -21.4%
      Max             +0.1%     +0.0%     +5.4%
      Geometric Mean  +0.0%     -0.2%     -6.9%
      
      31478ab9
    • simonpj@microsoft.com's avatar
      Transfer strictness and arity info when abstracting over type variables · 27061b5b
      simonpj@microsoft.com authored
      See Note [transferPolyIdInfo] in Id.lhs, and test 
      	eyeball/demand-on-polymorphic-floatouts.hs
      
      Max Bolingbroke discovered that we were gratuitiously losing strictness
      info.  This simple patch fixes it.  But see the above note for things
      that are still discarded: worker info and rules.
      27061b5b
  13. 14 Apr, 2008 3 commits
  14. 11 Apr, 2008 4 commits
  15. 10 Apr, 2008 6 commits
  16. 11 Apr, 2008 1 commit
  17. 10 Apr, 2008 1 commit
    • chevalier@alum.wellesley.edu's avatar
      Extend genprimopcode to print primop types for ext-core · 07d1b116
      chevalier@alum.wellesley.edu authored
      I added a new flag, --make-ext-core-source, to genprimopcode. It prints out the
      type information for primops that the External Core typechecker needs. This
      replaces the old mechanism where the ext-core tools had a hard-wired Prims
      module that could get out of sync with the old primops.txt. Now, that won't happen.
      07d1b116
  18. 09 Apr, 2008 1 commit