Skip to content
Snippets Groups Projects
  1. Aug 25, 2023
  2. Aug 24, 2023
    • Finley McIlwaine's avatar
      Add a test checking overhead of -finfo-table-map · d3e0124c
      Finley McIlwaine authored and Marge Bot's avatar Marge Bot committed
      We want to make sure we don't end up with poor codegen performance resulting from
      -finfo-table-map again as in #23103. This test adds a performance test tracking
      total allocations while compiling ExactPrint with -finfo-table-map.
      d3e0124c
    • Finley McIlwaine's avatar
      Refactor estimation of stack info table provenance · d99c816f
      Finley McIlwaine authored and Marge Bot's avatar Marge Bot committed
      This commit greatly refactors the way we compute estimated provenance for stack
      info tables. Previously, this process was done using an entirely separate traversal
      of the whole Cmm code stream to build the map from info tables to source locations.
      The separate traversal is now fused with the Cmm code generation pipeline in
      GHC.Driver.Main.
      
      This results in very significant code generation speed ups when -finfo-table-map is
      enabled. In testing, this patch reduces code generation times by almost 30% with
      -finfo-table-map and -O0, and 60% with -finfo-table-map and -O1 or -O2 .
      
      Fixes #23103
      d99c816f
    • Antoine Leblanc's avatar
      Be more eager in TyCon boot validity checking · 1420b8cb
      Antoine Leblanc authored and Marge Bot's avatar Marge Bot committed
      This commit performs boot-file consistency checking for TyCons into
      checkValidTyCl. This ensures that we eagerly catch any mismatches,
      which prevents the compiler from seeing these inconsistencies and
      panicking as a result.
      
      See Note [TyCon boot consistency checking] in GHC.Tc.TyCl.
      
      Fixes #16127
      1420b8cb
  3. Aug 23, 2023
  4. Aug 22, 2023
    • Alan Zimmerman's avatar
      EPA: Use Introduce [DeclTag] in AnnSortKey · ab40aa52
      Alan Zimmerman authored and Marge Bot's avatar Marge Bot committed
      The AnnSortKey is used to keep track of the order of declarations for
      printing when the container has split them apart.
      
      This applies to HsValBinds and ClassDecl, ClsInstDecl.
      
      When making modifications to the list of declarations, the new order
      must be captured for when it must be printed. For each list of
      declarations (binds and sigs for a HsValBind) we can just store the
      list in order.
      
      To recreate the list when printing, we must merge them, and this is
      what the AnnSortKey records. It used to be indexed by SrcSpan, we now
      simply index by a marker as to which list to take the next item from.
      ab40aa52
    • Krzysztof Gogolewski's avatar
      Testsuite cleanup · 52a6d868
      Krzysztof Gogolewski authored and Marge Bot's avatar Marge Bot committed
      - Remove misleading help text in perf_notes, ways are not metrics
      - Remove no_print_summary - this was used for Phabricator
      - In linters tests, run 'git ls-files' just once.
        Previously, it was called on each has_ls_files()
      - Add ghc-prim.cabal to gitignore, noticed in #23726
      - Remove ghc-prim.cabal, it was accidentally committed in 524c60c8
      52a6d868
    • ARATA Mizuki's avatar
      Support 128-bit SIMD on AArch64 via LLVM backend · 015886ec
      ARATA Mizuki authored and Marge Bot's avatar Marge Bot committed
      015886ec
    • konsumlamm's avatar
      Update `Control.Concurrent.*` documentation · 4ba088d1
      konsumlamm authored and Marge Bot's avatar Marge Bot committed
      4ba088d1
    • Krzysztof Gogolewski's avatar
      Fix MultiWayIf linearity checking (#23814) · edd8bc43
      Krzysztof Gogolewski authored and Marge Bot's avatar Marge Bot committed
      
      Co-authored-by: default avatarThomas BAGREL <thomas.bagrel@tweag.io>
      edd8bc43
    • runeks's avatar
      dump-decls: fix "Ambiguous module name"-error · f861423b
      runeks authored and Marge Bot's avatar Marge Bot committed
      Fixes errors of the following kind, which happen when dump-decls is run on a package that contains a module name that clashes with that of another package.
      
      ```
      dump-decls: <no location info>: error:
          Ambiguous module name `System.Console.ANSI.Types':
            it was found in multiple packages:
            ansi-terminal-0.11.4 ansi-terminal-types-0.11.5
      ```
      f861423b
Loading