1. 13 Apr, 2009 1 commit
    • donnie@darthik.com's avatar
      Fixed ThreadID to be defined as StgThreadID, not StgWord64. Changed... · 543823a1
      donnie@darthik.com authored
      Fixed ThreadID to be defined as StgThreadID, not StgWord64.  Changed CapabilityNum to CapNo.  Added helper functions postCapNo() and postThreadID().
      ThreadID was StgWord64, but should have been StgThreadID, which is
      currently StgWord32.  Changed name from CapabilityNum to CapNo to better
      reflect naming in Capability struct where "no" is the capability number.
      Modified EventLog.c to use the helper functions postCapNo() and
      postThreadID () for CapNo and ThreadID.
  2. 03 Apr, 2009 2 commits
  3. 07 Apr, 2009 1 commit
  4. 09 Apr, 2009 2 commits
    • simonpj@microsoft.com's avatar
      Fix Trac #3155: better error message when -XRankNTypes is omitted · 6c06fdc7
      simonpj@microsoft.com authored
      This patch sligtly re-adjusts the way in which the syntax of types 
      is handled:
       * In the lexer, '.' and '*' are always accepted in types
         (previously it was conditional).  This things can't mean
         anything else in H98, which is the only reason for doing things
         conditionally in the lexer.
       * As a result '.' in types is never treated as an operator.
         Instead, lacking a 'forall' keyword, it turns into a plain parse error.
       * Test for -XKindSignatures in the renamer when processing
           a) type variable bindings
           b) types with sigs (ty :: kind-sig)
       * Make -XKindSignatures be implied by -XTypeFamilies 
         Previously this was buried in the conditonal lexing of '*'
    • simonpj@microsoft.com's avatar
  5. 04 Apr, 2009 1 commit
  6. 31 Mar, 2009 2 commits
  7. 03 Apr, 2009 2 commits
    • dias@eecs.tufts.edu's avatar
      eliminate warnings · 82ebc04b
      dias@eecs.tufts.edu authored
    • dias@eecs.tufts.edu's avatar
      Debugging by Sesame Street: · dc9db2a8
      dias@eecs.tufts.edu authored
      One of these things is not like the others:
      stdPattern :: [LRep] -> Maybe StgHalfWord
      stdPattern reps
        = case reps of
              []  -> Just ARG_NONE    -- just void args, probably
              [N] -> Just ARG_N
              [P] -> Just ARG_N
              [F] -> Just ARG_F
              [D] -> Just ARG_D
              [L] -> Just ARG_L
      Today's debugging session was brought to you by the letter P.
  8. 31 Mar, 2009 1 commit
  9. 25 Mar, 2009 1 commit
  10. 23 Mar, 2009 6 commits
  11. 03 Apr, 2009 3 commits
  12. 02 Apr, 2009 2 commits
  13. 03 Apr, 2009 3 commits
    • simonpj@microsoft.com's avatar
      Adjust inlining heursitics · b71760aa
      simonpj@microsoft.com authored
      This patch is the result of a long series of nofib-based experiments
      to improve GHC's inlining heuristics.
      In the end, I'm not sure how worthwhile it all was: I only got a 
         1% decrease in code size
         1% decrease in allocation
      and I don't trust the runtime statistics enough to quote.
      Still, in doing all this I tidied up the code quite a bit, and 
      I understand it much better now, so I'm going to commit it.
      The main changes are in CoreUnfold, which has lots of new comments.
      Other changes:
        - litSize moves from Literal to CoreUnfold
        - interestingArg moves from SimplUtils to CoreUnfold
        - the default unfolding threshold (in StaticFlags) 
            reduces from 8 to 6 (since the size calculation 
            has changed a bit)
    • simonpj@microsoft.com's avatar
      Worker/wrapper should make INLINE if it doesn't w/w · 9060e51e
      simonpj@microsoft.com authored
      If worker/wrapper decides not to w/w something on the grounds that
      it's too small, it should add an INLINE pragma.  Otherwise, later
      in the day that small thing might now be big, and we'd wish we'd
      done the w/w after all.  This only made a difference in one nofib 
      program (bspt), but it's an easy change.
      See Note [Don't w/w inline things (a) and (b)]
    • simonpj@microsoft.com's avatar
      Rewrite a good chunk of CoreArity · ea84860e
      simonpj@microsoft.com authored
      I found a couple of shortcomings in arity computation, and did
      quite a bit of refactoring as a result.  Regrettably, I have
      forgotten the details, but I do remember that one part was to
      do with the infamous "state hack".  If we're going to use the
      state-hack at all, we'd better do it right.
      Anyway I think this is an improvement. The comments are more
      up to date too, and more voluminous.
  14. 02 Apr, 2009 7 commits
  15. 01 Apr, 2009 2 commits
    • Simon Marlow's avatar
      update the intro section · 4f3c0ed5
      Simon Marlow authored
    • Simon Marlow's avatar
      Remove the "Installing GHC" section · 0390f0a7
      Simon Marlow authored
       1. it was out of date in various ways
       2. this is not the place people look for installation instructions
       3. we have installation instructions elsewhere (e.g. the INSTALL
          file in a binary distribution)
       4. the section "layout of installed files" is now on the wiki under
  16. 31 Mar, 2009 1 commit
  17. 30 Mar, 2009 2 commits
  18. 31 Mar, 2009 1 commit
    • Ben.Lippmeier@anu.edu.au's avatar
      SPARC NCG: HpLim is now always stored on the stack, not in a register · 456dc6d6
      Ben.Lippmeier@anu.edu.au authored
         This fixes the out of memory errors we were getting on sparc
         after the following patch:
           Fri Mar 13 03:45:16 PDT 2009  Simon Marlow <marlowsd@gmail.com>
           * Instead of a separate context-switch flag, set HpLim to zero
           Ignore-this: 6c5bbe1ce2c5ef551efe98f288483b0
           This reduces the latency between a context-switch being triggered and
           the thread returning to the scheduler, which in turn should reduce the
           cost of the GC barrier when there are many cores.