1. 18 Sep, 2005 2 commits
    • wolfgang's avatar
      [project @ 2005-09-18 07:12:44 by wolfgang] · ed3035ea
      wolfgang authored
      PIC version for genSwitch on i386
      ed3035ea
    • wolfgang's avatar
      [project @ 2005-09-18 07:09:50 by wolfgang] · 43a54051
      wolfgang authored
      A hack to make -dynamic work again:
      when a library listed in extraLibraries ends with "_cbits", append "_dyn"
      when -dynamic is passed, i.e. extraLibraries = ["foo", "HSbase_cbits"]
      loads -lfoo and -lHSbase_cbits in the static case, but -lfoo and
      -lHSbase_cbits_dyn in the -dynamic case.
      
      It's an ugly hack, but it affects only the case when -dynamic is passed,
      which would not work otherwise right now, so let's
      
      MERGE TO STABLE
      43a54051
  2. 16 Sep, 2005 6 commits
  3. 15 Sep, 2005 2 commits
  4. 14 Sep, 2005 2 commits
  5. 13 Sep, 2005 3 commits
  6. 12 Sep, 2005 5 commits
  7. 11 Sep, 2005 2 commits
  8. 05 Sep, 2005 2 commits
    • simonpj's avatar
      [project @ 2005-09-05 15:28:07 by simonpj] · 6ac7eb25
      simonpj authored
      GHC claims to lift the H98 restriction that a class method must not
      add a constraint on the class type variable (manual 7.4.2.1 "Class
      method types").  But the validity check was incorrect in the case
      where the class method had a forall.  E.g.
      	class C a where
      	  op :: forall b. (Show b, Show a) => ...
      
      This commit fixes the bug.
      
      tcrun037, and tcfail149, test with and without -fglasgow-exts.
      
      	MERGE TO STABLE
      6ac7eb25
    • ross's avatar
      [project @ 2005-09-05 08:22:23 by ross] · 478f7aa5
      ross authored
      add a newline after error messages
      
      MERGE to STABLE
      478f7aa5
  9. 02 Sep, 2005 1 commit
  10. 24 Aug, 2005 1 commit
  11. 22 Aug, 2005 1 commit
  12. 19 Aug, 2005 1 commit
  13. 18 Aug, 2005 3 commits
    • krasimir's avatar
      [project @ 2005-08-18 20:32:46 by krasimir] · e0963b10
      krasimir authored
      add pprInstanceHdr function. It is analogous to pprTyThingHdr and prints the
      instance but without the "-- Defined at ...." comment. The function is used in
      VStudio to populate the ClassView tree.
      e0963b10
    • simonpj's avatar
      [project @ 2005-08-18 10:25:46 by simonpj] · 70a2631a
      simonpj authored
      1. Remove redundant coerces.  Something that started life as
      	coerce a b <expr>
         might change to
      	coerct Int Int <expr>
         after the types a,b are instantiated.
      
      2. Get rid of the "bad eta expand" message. It can happen entirely legitimately.
         See comments in CoreUtils with eta_expand.
      
      	MERGE TO STABLE
      70a2631a
    • simonpj's avatar
      [project @ 2005-08-18 10:02:54 by simonpj] · 67e7de3d
      simonpj authored
      Make the forkM failure fail more tidily.  Interface-file inconsistencies
      give rise to failures in the IfM monad.  An error message is printed, but
      up to now we've also said "The impossible happened, must be a GHC bug".
      That's not true, though, it could just be messed up interface files.
      
      So this commit still makes the compiler halt, but in a tidier, less
      self-accusatory way.
      
      Still to come: when original names in interface files mention the
      package Id too, the error will become clearer still.
      
      	MERGE to STABLE
      67e7de3d
  14. 12 Aug, 2005 6 commits
    • simonpj's avatar
      [project @ 2005-08-12 14:43:04 by simonpj] · fc0c93a9
      simonpj authored
      Fix typos
      fc0c93a9
    • simonmar's avatar
      [project @ 2005-08-12 12:36:59 by simonmar] · 0066307c
      simonmar authored
      Use a better string hash: the previous one only took into account 3
      characters from the string (0, N/2, N), leading to some bad collisions
      with lots of similar strings (eg. local names generated by the
      compiler).  Worse, it had a bug in the N==2 case, which meant that it
      ignored one of the characters in the string completely.
      
      We now traverse the whole string, using the algorithm from Data.Hash
      which seems to work reasonably well.
      
      For good measure, I quadrupled the size of the hash table too, from
      1000 to 4000 entries.
      0066307c
    • simonmar's avatar
      [project @ 2005-08-12 10:47:48 by simonmar] · 3f123464
      simonmar authored
      inline unsafePerformIO for eqStrPrefix/eqStrPrefixBA.  These functions
      are fairly time-critical pieces of the FastString system, and using
      unsafePerformIO here was causing unnecessary allocation.
      3f123464
    • simonmar's avatar
      [project @ 2005-08-12 10:45:36 by simonmar] · 196ccd21
      simonmar authored
      More inlining changes from SimonPJ & me: The Plan is to avoid relying
      on knowledge of OneOcc occurrences after postInlineUnconditionally, so
      we now attempt to make use of OneOcc as far as possible in in
      pre/postInlineUnconditionally rather than the call site.  Plenty of
      comments in the code with more details.
      
      This change almost always improves performance on nofib; we have one
      program that goes slower, which we'll investigate in due course.
      196ccd21
    • simonpj's avatar
      [project @ 2005-08-12 08:32:16 by simonpj] · 22df1e2a
      simonpj authored
      Grr: another wibble to duplicate signature detection
      22df1e2a
    • simonmar's avatar
      [project @ 2005-08-12 08:10:50 by simonmar] · 2c88170c
      simonmar authored
      exprIsCheap: fix a bug whereby an over-applied ClassOp or RecordSel
      would be considered cheap.
      2c88170c
  15. 11 Aug, 2005 3 commits