This project is mirrored from https://gitlab.haskell.org/ghc/ghc.git. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
Last successful update .
  1. 12 Jul, 2005 5 commits
  2. 11 Jul, 2005 15 commits
    • panne's avatar
      [project @ 2005-07-11 20:33:45 by panne] · 239c42e0
      panne authored
      After some experiments, it seems like we're stealing too many registers from
      newer GCCs on SPARC, leading to
      
         "unable to find a register to spill in class `GENERAL_REGS'"
      
      errors. The fix is to leave l6 and l7 to GCC. Tested with a full 2-stage
      bootstrap (including OpenGL/GLUT packages) on SPARC Solaris 8 with GCC 3.4.4.
      
      A test case for this (which I'm too lazy/tired to commit) is:
      
         module Blah ( foo ) where
         import Foreign.Ptr ( FunPtr )
         type Bar = Int -> Double -> Double -> Double -> IO ()
         foreign import ccall unsafe "dynamic" foo :: FunPtr Bar -> Bar
      
      SimonM: MERGE TO STABLE (if nobody yells)
      239c42e0
    • simonmar's avatar
      [project @ 2005-07-11 15:57:38 by simonmar] · c7720145
      simonmar authored
      Avoid calling threadPaused() on exit from STG land if we're just
      switching to the interpreter, and conversely call threadPaused() in
      the interpreter if we're returing to the scheduler for anything other
      than switching to STG.
      
      This will probably fix the recent slowdown in GHCi (ioref001 test, for
      example).  It was broken when we moved the threadPaused() call into
      STG from the scheduler, so it only affects the HEAD.
      c7720145
    • simonmar's avatar
      [project @ 2005-07-11 15:34:07 by simonmar] · 86024676
      simonmar authored
      make_constr_itbls: 64-bit fix (size of info table was hardcoded)
      86024676
    • simonmar's avatar
      [project @ 2005-07-11 14:21:54 by simonmar] · cab13f0f
      simonmar authored
      byte code info tables for x86_64 (same as i386)
      cab13f0f
    • simonmar's avatar
      [project @ 2005-07-11 14:08:07 by simonmar] · 10878260
      simonmar authored
      Turn on GHCi for x86_64
      10878260
    • simonmar's avatar
      [project @ 2005-07-11 13:53:24 by simonmar] · 0af6ff59
      simonmar authored
      GHCi staggers to its feet on x86_64.
      
      The problem is that in the small code model on x86_64, all symbol
      relocations are 32-bit, because the program is assumed to fit into
      2Gb.  However, shared libraries are linked outside the 2Gb range, and
      the linker arranges that references to shared library symbols either
      go via a jump table (for code references) or are copied into the 2Gb
      area (for data references).
      
      In GHCi's linker, We can use a jump table for the function symbols,
      but we can't copy the data symbols because they've already been
      relocated to point to the shared library.  What's more, we can't tell
      whether a symbol reference is to code or data - this information is
      only available from the shared library itself.
      
      Fortunately, at least HSbase.o doesn't have any data references to
      shared libraries (at least on the Linux distro I'm using), so I can at
      least get GHCi up and limping.
      0af6ff59
    • simonmar's avatar
      [project @ 2005-07-11 12:29:28 by simonmar] · b8105b2b
      simonmar authored
      awakenBlockedQueue(): check for NULL.  This is a hack to workaround a
      bug that occurs when async exceptions, unsafePerformIO, and
      interruptible operations are used together.  See the comment in
      Exceptions.cmm and bug #1235728 for more details.
      b8105b2b
    • simonpj's avatar
      [project @ 2005-07-11 10:47:20 by simonpj] · 65785a09
      simonpj authored
      Wibbles to unifyFunTy error messages
      65785a09
    • simonpj's avatar
      [project @ 2005-07-11 10:46:42 by simonpj] · 1360bef3
      simonpj authored
      Improvements to speakN, define speakNOf, move plural from TcSimplify
      1360bef3
    • simonmar's avatar
      [project @ 2005-07-11 10:25:43 by simonmar] · b4ab2c41
      simonmar authored
      mingw32: ignore isDoesNotExistError failure from
      GHC.ConsoleHandler.flushConsole
      
      Submitted-by: Brian Smith <brianlsmith at gmail.com>
      b4ab2c41
    • simonpj's avatar
      [project @ 2005-07-11 09:54:43 by simonpj] · 9fe510d1
      simonpj authored
      Improve the error message from unifyFunTys.  Previously we got a really
      horrible message from this:
      	  t = ((\Just x -> x) :: Maybe a -> a) (Just 1)
          
      Try.hs:1:6:
          Couldn't match the rigid variable `a' against `t -> t1'
            Expected type: a
            Inferred type: t -> t1
      
      Now it's much better:
      
      Try.hs:14:6:
          The lambda expression `\ Just x -> ...' has two arguments,
          but its type `Maybe a -> a' has only one
          In the expression: (\ Just x -> x) :: Maybe a -> a
      
      
      tcfail140 tests some cases
      9fe510d1
    • simonpj's avatar
      [project @ 2005-07-11 09:48:57 by simonpj] · a6f3a1f8
      simonpj authored
      Fix a bug in the renamer for parallel list comprehensions
      	MERGE TO STABLE
      
      It's surprinsingly tricky to combine 
        a) The parallel scopes for par-list-comps
      with
        b) The general form of the renamer types, whereby
           scoped constructs work like
      	 rnPat :: Pat -> RnM (thing,FreeVars)
      	       -> RnM ((Pat,thing), FreeVars)
           This general shape neatly allows rnPat to
           extend the envt, report unused variables from
           the 'thing' inside, and return the correct set
           of free variables
      
      But combining (a) and (b) is tricky, and was plain wrong before.
      a6f3a1f8
    • simonpj's avatar
      [project @ 2005-07-11 09:48:19 by simonpj] · 0aaa6c3b
      simonpj authored
      Add speakN, and the ability to set printing depth
      0aaa6c3b
    • simonmar's avatar
      [project @ 2005-07-11 09:17:41 by simonmar] · 90a2c9cb
      simonmar authored
      enable splitting on x86_64
      90a2c9cb
    • simonmar's avatar
      [project @ 2005-07-11 09:10:58 by simonmar] · 6869e00c
      simonmar authored
      x86_64: Pass -fno-asynchronous-unwind-tables to gcc, which eliminates
      some unnecessary junk from the via-C generated code and allows
      -split-objs to work.
      6869e00c
  3. 09 Jul, 2005 4 commits
  4. 08 Jul, 2005 5 commits
  5. 07 Jul, 2005 1 commit
    • simonmar's avatar
      [project @ 2005-07-07 13:50:40 by simonmar] · cca5f22b
      simonmar authored
      small performance fix: in via-C mode we previously always created a
      switch instead of an conditional-tree for a multi-branch case.  Refine
      this slightly so that 2-branch switches turn into conditionals again,
      since gcc doesn't do a good job of optimising the equivalent switch.
      cca5f22b
  6. 06 Jul, 2005 2 commits
  7. 05 Jul, 2005 1 commit
    • dons's avatar
      [project @ 2005-07-05 04:55:30 by dons] · 76f8c7b8
      dons authored
      Fix ffi on OpenBSD by dynamically allocating the obscure_ccall_ret_code.
      Also merge in SimonM's wrapper over inline asm patch.
      76f8c7b8
  8. 01 Jul, 2005 1 commit
  9. 29 Jun, 2005 3 commits
  10. 28 Jun, 2005 2 commits
    • simonmar's avatar
      [project @ 2005-06-28 13:44:28 by simonmar] · 9c1b774a
      simonmar authored
      Add a comment that grabbing all the capabilities before GC causes the
      thread->capability hash table to acquire multiple entries for the
      current thread, which seems to be harmless.
      9c1b774a
    • simonmar's avatar
      [project @ 2005-06-28 13:43:41 by simonmar] · 9e9dfae0
      simonmar authored
      Disable the assertion that checks for multiple entries with the same
      key in the hash table.  It's useful to be able to do this sometimes.
      9e9dfae0
  11. 27 Jun, 2005 1 commit
    • simonpj's avatar
      [project @ 2005-06-27 12:59:52 by simonpj] · a9ae952e
      simonpj authored
      MERGE TO STABLE
      
      Fix a typechecker bug, which made the typechecker loop under certain
      circumstances, notably when we have
      	type Foo a = a
      and try to unify
      	b :=: Foo b
      
      typecheck/should_compile/tc195 tests this case now.
      a9ae952e