This project is mirrored from 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. 18 Aug, 2016 1 commit
  2. 17 Aug, 2016 4 commits
  3. 16 Aug, 2016 4 commits
  4. 15 Aug, 2016 3 commits
  5. 14 Aug, 2016 4 commits
    • kgardas's avatar
      fix compilation failure on OpenBSD with system supplied GNU C 4.2.1 · ffd4029c
      kgardas authored
      This patch fixes compilation failure on OpenBSD. The OpenBSD's
      GNU C compiler is of 4.2.1 version and problematic __builtin_unreachable
      was added in GNU C 4.5 release. Let's use pure abort() call
      on OpenBSD instead of __builtin_unreachable
      Reviewers: bgamari, austin, erikd, simonmar
      Subscribers: thomie
      Differential Revision:
    • Tamar Christina's avatar
      Fix configure detection. · 18f06878
      Tamar Christina authored
      GHC's configure script seems to normalize the values returned from config.guess.
      So for Windows it turns x86_64-pc-mingw64 into x86_64-unknown-mingw32.
      These mangled names are stored in the values $BuildPlatform, $HostPlatform
      and $TargetPlatform.
      However further down the file when the comparison is done between the stage0
      compiler and the host the normalized versions are not used.
      So when normalization actually changes the triple this check will fail.
      Not sure why it's worked for all this time.. Nor if this is the right fix?
      Does it still work for cross compiling correctly?
      Test Plan: ./configure
      Reviewers: hvr, austin, thomie, bgamari, erikd
      Reviewed By: erikd
      Subscribers: erikd, #ghc_windows_task_force
      Differential Revision:
      GHC Trac Issues: #12487
    • Gabor Greif's avatar
      Misspellings in comments [skip ci] · 7ad3b491
      Gabor Greif authored
    • Gabor Greif's avatar
      Update `nofib` submodule to newest commit · 37a7bcbc
      Gabor Greif authored
  6. 13 Aug, 2016 1 commit
    • Erik de Castro Lopo's avatar
      Fix GHCi perf-llvm build on x86_64 · bd0c3106
      Erik de Castro Lopo authored
      With BuildFlavour set to `perf-llvm`, GHCi would fail as soon as it
      was run with:
        ghc-stage2: .../ghc-prim/dist-install/build/HSghc-prim-
        unknown symbol `__udivti3'
        ghc-stage2: unable to load package `ghc-prim-'
      Fix this by adding `__udivti3` and `__umodti3` to RtsSymbols.c.
      Test Plan: Validate
      Reviewers: simonmar, austin, bgamari, Phyx, trofi
      Reviewed By: Phyx, trofi
      Subscribers: thomie
      Differential Revision:
      GHC Trac Issues: #11981
  7. 12 Aug, 2016 1 commit
  8. 10 Aug, 2016 1 commit
    • Ömer Sinan Ağacan's avatar
      Remove StgRubbishArg and CmmArg · 9684dbb1
      Ömer Sinan Ağacan authored
      The idea behind adding special "rubbish" arguments was in unboxed sum types
      depending on the tag some arguments are not used and we don't want to move some
      special values (like 0 for literals and some special pointer for boxed slots)
      for those arguments (to stack locations or registers). "StgRubbishArg" was an
      indicator to the code generator that the value won't be used. During Stg-to-Cmm
      we were then not generating any move or store instructions at all.
      This caused problems in the register allocator because some variables were only
      initialized in some code paths. As an example, suppose we have this STG: (after
          Lib.$WT =
              \r [dt_sit]
                      case dt_sit of {
                        Lib.F dt_siv [Occ=Once] ->
                            (#,,#) [1# dt_siv StgRubbishArg::GHC.Prim.Int#];
                        Lib.I dt_siw [Occ=Once] ->
                            (#,,#) [2# StgRubbishArg::GHC.Types.Any dt_siw];
                  { (#,,#) us_giC us_giD us_giE -> Lib.T [us_giC us_giD us_giE];
      This basically unpacks a sum type to an unboxed sum with 3 fields, and then
      moves the unboxed sum to a constructor (`Lib.T`).
      This is the Cmm for the inner case expression (case expression in the scrutinee
      position of the outer case):
              -- look at dt_sit's tag
              if (_ciT::P64 != 1) goto ciS; else goto ciR;
          ciS: -- Tag is 2, i.e. Lib.F
              _siw::I64 = I64[_siu::P64 + 6];
              _giE::I64 = _siw::I64;
              _giD::P64 = stg_RUBBISH_ENTRY_info;
              _giC::I64 = 2;
              goto ciU;
          ciR: -- Tag is 1, i.e. Lib.I
              _siv::P64 = P64[_siu::P64 + 7];
              _giD::P64 = _siv::P64;
              _giC::I64 = 1;
              goto ciU;
      Here one of the blocks `ciS` and `ciR` is executed and then the execution
      continues to `ciR`, but only `ciS` initializes `_giE`, in the other branch
      `_giE` is not initialized, because it's "rubbish" in the STG and so we don't
      generate an assignment during code generator. The code generator then panics
      during the register allocations:
          ghc-stage1: panic! (the 'impossible' happened)
            (GHC version 8.1.20160722 for x86_64-unknown-linux):
                  LocalReg's live-in to graph ciY {_giE::I64}
      (`_giD` is also "rubbish" in `ciS`, but it's still initialized because it's a
      pointer slot, we have to initialize it otherwise garbage collector follows the
      pointer to some random place. So we only remove assignment if the "rubbish" arg
      has unboxed type.)
      This patch removes `StgRubbishArg` and `CmmArg`. We now always initialize
      rubbish slots. If the slot is for boxed types we use the existing `absentError`,
      otherwise we initialize the slot with literal 0.
      Reviewers: simonpj, erikd, austin, simonmar, bgamari
      Reviewed By: erikd
      Subscribers: thomie
      Differential Revision:
  9. 09 Aug, 2016 1 commit
  10. 08 Aug, 2016 3 commits
  11. 07 Aug, 2016 1 commit
  12. 06 Aug, 2016 7 commits
  13. 05 Aug, 2016 9 commits
    • Ömer Sinan Ağacan's avatar
    • Ömer Sinan Ağacan's avatar
    • Ömer Sinan Ağacan's avatar
    • Gabor Greif's avatar
      Bump `hoopl` submodule, mostly cosmetics · 8fe1672a
      Gabor Greif authored
    • Simon Marlow's avatar
      Another try to get thread migration right · 89fa4e96
      Simon Marlow authored
      This is surprisingly tricky.  There were linked list bugs in the
      previous version (D2430) that showed up as a test failure in
      setnumcapabilities001 (that's a great stress test!).
      This new version uses a different strategy that doesn't suffer from
      the problem that @ezyang pointed out in D2430.  We now pre-calculate
      how many threads to keep for this capability, and then migrate any
      surplus threads off the front of the queue, taking care to account for
      threads that can't be migrated.
      Test Plan:
      1. setnumcapabilities001 stress test with sanity checking (+RTS -DS) turned on:
      cd testsuite/tests/concurrent/should_run
      make TEST=setnumcapabilities001 WAY=threaded1 EXTRA_HC_OPTS=-with-rtsopts=-DS CLEANUP=0
      while true; do ./ 4 9 2000 || break; done
      2. The test case from #12419
      Reviewers: niteria, ezyang, rwbarton, austin, bgamari, erikd
      Subscribers: thomie, ezyang
      Differential Revision:
      GHC Trac Issues: #12419
    • Simon Marlow's avatar
      Fix an assertion that could randomly fail · ce13a9a9
      Simon Marlow authored
      ASSERT_THREADED_CAPABILITY_INVARIANTS was testing properties of the
      returning_tasks queue, but that requires cap->lock to access safely.
      This assertion would randomly fail if stressed enough.
      Instead I've removed it from the catch-all
      ASSERT_PARTIAL_CAPABILITIY_INVARIANTS and made it a separate assertion
      only called under cap->lock.
      Test Plan:
      cd testsuite/tests/concurrent/should_run
      make TEST=setnumcapabilities001 WAY=threaded1 EXTRA_HC_OPTS=-with-rtsopts=-DS CLEANUP=0
      while true; do ./ 4 9 2000 || break; done
      Reviewers: niteria, bgamari, ezyang, austin, erikd
      Subscribers: thomie
      Differential Revision:
      GHC Trac Issues: #10860
    • Ben Gamari's avatar
      Expanded abbreviations in Haddock documentation · ca7e1ad3
      Ben Gamari authored
      This adds notes to the Haddock documentation for various core datatypes
      expanding abbreviations.
      Reviewers: bgamari, thomie
      Differential Revision:
      GHC Trac Issues: #12405
    • avd's avatar
      codeGen: Remove binutils<2.17 hack, fixes T11758 · e3e2e49a
      avd authored
      There was a complication on the x86_64 platform, where pointers were 64
      bits, but the tools didn't support 64-bit relative relocations.  This
      was true before binutils 2.17, which nowadays is quite standart (even
      CentOs 5 is shipped with 2.17).
      Hacks were removed from x86 genSwitch and asm pretty printer. Also
      [x86-64-relative] note was dropped from
      includes/rts/storage/InfoTables.h as it's not referenced anywhere now.
      Reviewers: austin, simonmar, rwbarton, erikd, bgamari
      Reviewed By: simonmar, erikd, bgamari
      Subscribers: thomie
      Differential Revision:
    • petercommand's avatar
      check that the number of parallel build is greater than 0 · f09d6547
      petercommand authored
      Fixes #12062.
      Reviewers: bgamari, thomie, austin, simonmar
      Reviewed By: bgamari, thomie, simonmar
      Subscribers: simonmar, thomie
      Differential Revision:
      GHC Trac Issues: #12062