1. 09 Nov, 2002 2 commits
  2. 08 Nov, 2002 4 commits
    • simonpj's avatar
      [project @ 2002-11-08 15:21:27 by simonpj] · 410e4850
      simonpj authored
      --------------------------------
      	Expression simplification for TH
      	--------------------------------
      
      Simplify expressions without any inlining in SimplCore.simplifyExpr.
      
      simplifyExpr is used to simplify a TH splice before running the code,
      and simplifyExpr was using (SimplPhase 0) which allows inlining.
      Unfortunately, when -O is on (which can happen when compiling a program
      with some splices with -O) some inlining can happen which then confuses
      the byte-code generator.  (Unboxed tuples.)
      410e4850
    • simonpj's avatar
      [project @ 2002-11-08 15:16:50 by simonpj] · e0b20971
      simonpj authored
      Wibbles
      e0b20971
    • simonmar's avatar
      [project @ 2002-11-08 12:52:51 by simonmar] · f7490897
      simonmar authored
      oops, should really check for .hi-boot-<version> before .hi-boot
      f7490897
    • simonpj's avatar
      [project @ 2002-11-08 09:01:06 by simonpj] · 73641e01
      simonpj authored
      ------------------
        	   More TH stuff (thanks to Ian L)
      		------------------
      
      * Make TH Literals have an Integer not an Int
      * Desguar TH 'foreign import' a bit better
      * Minor documentation changes
      73641e01
  3. 07 Nov, 2002 2 commits
    • simonmar's avatar
      [project @ 2002-11-07 14:42:25 by simonmar] · 9c383315
      simonmar authored
      Put a "warning:" prefix on a DEBUG belch msg to make it clearer that
      this isn't an error.
      9c383315
    • simonpj's avatar
      [project @ 2002-11-07 11:42:48 by simonpj] · 06fa575f
      simonpj authored
      ------------------
      	Fix an obscure bug in implicit parameters,
      	interacting with lazy pattern matching
      		------------------
      
      		MERGE TO STABLE BRANCH
      
      The problem was this:
      
        data UniqueSupply = US Integer
      
        newUnique :: (?uniqueSupply :: UniqueSupply) => Integer
        newUnique = r
                  where US r = ?uniqueSupply
      
      The lazy pattern match in the where clause killed GHC 5.04 because the
      SourceType {?uniqueSupply::UniqueSupply} of the RHS of the 'where' didn't
      look like a UniqueSupply.
      
      The fix is simple: in DsUtils.mkSelectorBinds, use the pattern, not
      the rhs, to get the type reqd.  More efficient too.
      
      Test is typecheck/should_compile/tc164.hs
      06fa575f
  4. 06 Nov, 2002 3 commits
  5. 05 Nov, 2002 7 commits
  6. 04 Nov, 2002 1 commit
  7. 01 Nov, 2002 3 commits
    • simonmar's avatar
      [project @ 2002-11-01 11:17:29 by simonmar] · 9bffc64e
      simonmar authored
      warning police: #include <string.h> to get proto for strlen()
      9bffc64e
    • simonmar's avatar
      [project @ 2002-11-01 11:16:33 by simonmar] · cbe4e8ae
      simonmar authored
      total_alloc should be a 64-bit couunter.
      
      MERGE TO STABLE
      cbe4e8ae
    • simonmar's avatar
      [project @ 2002-11-01 11:05:46 by simonmar] · 6226441f
      simonmar authored
      Fix the heapCensus crash.
      
      It turned out that after a GC, the small_alloc_list might be non-empty
      if a new finalizer thread had been started.  The last block on
      small_alloc_list doesn't have the free pointer set correctly (as a
      small optimisation, we don't normally set the free pointer after each
      allocation, only when the block is full).  The result was that the
      free pointer contains the wrong value, and the heap census traverses
      garbage.  The fix is to set the free pointer correctly before
      traversing small_alloc_list.
      
      The bug doesn't show up when DEBUG is on, because extra DEBUG checks
      cause the free pointer to be initialised to a sensible(-ish) value.
      Hence my difficulty in reproducing the bug.
      
      To reproduce: compile ghc-regress/lib/should_run/memo002 with
      profiling and run it with a sufficiently small sample interval (-i0.02
      did it for me).
      
      Thanks to the kind folks at ARM for helping out with the debugging of
      this one.
      
      MERGE TO STABLE
      6226441f
  8. 31 Oct, 2002 2 commits
  9. 30 Oct, 2002 4 commits
  10. 29 Oct, 2002 9 commits
  11. 28 Oct, 2002 3 commits