Skip to content
Snippets Groups Projects
  1. Feb 13, 2024
  2. Feb 12, 2024
    • Teo Camarasu's avatar
      doc: Add requires prof annotation to options that require it · d0d5acb5
      Teo Camarasu authored and Marge Bot's avatar Marge Bot committed
      Resolves #24421
      d0d5acb5
    • Teo Camarasu's avatar
      nonmoving: Add support for heap profiling · bedb4f0d
      Teo Camarasu authored and Marge Bot's avatar Marge Bot committed
      Add support for heap profiling while using the nonmoving collector.
      
      We greatly simply the implementation by disabling concurrent collection for
      GCs when heap profiling is enabled. This entails that the marked objects on
      the nonmoving heap are exactly the live objects.
      
      Note that we match the behaviour for live bytes accounting by taking the size
      of objects on the nonmoving heap to be that of the segment's block
      rather than the object itself.
      
      Resolves #22221
      bedb4f0d
    • Simon Peyton Jones's avatar
      Remove a dead comment · ff2c0cc9
      Simon Peyton Jones authored and Marge Bot's avatar Marge Bot committed
      Just remove an out of date block of commented-out code, and tidy up
      the relevant Notes.  See #8317.
      ff2c0cc9
    • Sylvain Henry's avatar
      JS: avoid EMCC logging spurious failure · b71b392f
      Sylvain Henry authored and Marge Bot's avatar Marge Bot committed
      emcc would sometime output messages like:
      
        cache:INFO: generating system asset: symbol_lists/424b44514e43d789148e69e4e7d1c7fdc0350b79.json... (this will be cached in "/emsdk/upstream/emscripten/cache/symbol_lists/424b44514e43d789148e69e4e7d1c7fdc0350b79.json" for subsequent builds)
        cache:INFO:  - ok
      
      Cf https://github.com/emscripten-core/emscripten/issues/18607
      
      This breaks our tests matching the stderr output. We avoid this by setting EMCC_LOGGING=0
      b71b392f
    • Sylvain Henry's avatar
      JS: add support for linking C sources · aef587f6
      Sylvain Henry authored and Marge Bot's avatar Marge Bot committed
      Support linking C sources with JS output of the JavaScript backend.
      See the added documentation in the users guide.
      
      The implementation simply extends the JS linker to use the objects (.o)
      that were already produced by the emcc compiler and which were filtered
      out previously. I've also added some options to control the link with C
      functions (see the documentation about pragmas).
      
      With this change I've successfully compiled the direct-sqlite package
      which embeds the sqlite.c database code. Some wrappers are still
      required (see the documentation about wrappers) but everything generic
      enough to be reused for other libraries have been integrated into
      rts/js/mem.js.
      aef587f6
    • Sylvain Henry's avatar
      JS: disable MergeObjsMode test · 55346ede
      Sylvain Henry authored and Marge Bot's avatar Marge Bot committed
      This isn't implemented for JS backend objects.
      55346ede
    • Sylvain Henry's avatar
      JS: handle stored null StablePtr · df9fd9f7
      Sylvain Henry authored and Marge Bot's avatar Marge Bot committed
      Some Haskell codes unsafely cast StablePtr into ptr to compare against
      NULL. E.g. in direct-sqlite:
      
        if castStablePtrToPtr aggStPtr /= nullPtr then
      
      where `aggStPtr` is read (`peek`) from zeroed memory initially.
      
      We fix this by giving these StablePtr the same representation as other
      null pointers. It's safe because StablePtr at offset 0 is unused (for
      this exact reason).
      df9fd9f7
  3. Feb 10, 2024
  4. Feb 08, 2024
    • Jade's avatar
      Improve Monad, Functor & Applicative docs · 762b2120
      Jade authored and Matthew Pickering's avatar Matthew Pickering committed
      This patch aims to improve the documentation of Functor, Applicative,
      Monad and related symbols. The main goal is to make it more consistent
      and make accessible. See also: !10979 (closed) and !10985 (closed)
      
      Ticket #17929
      
      Updates haddock submodule
      762b2120
    • Apoorv Ingle's avatar
      Enable mdo statements to use HsExpansions · 9f987235
      Apoorv Ingle authored and Marge Bot's avatar Marge Bot committed
      Fixes: #24411
      Added test T24411 for regression
      9f987235
    • John Ericson's avatar
      Generate LLVM min/max bound policy via Hadrian · c37931b3
      John Ericson authored and Marge Bot's avatar Marge Bot committed
      Per #23966, I want the top-level configure to only generate
      configuration data for Hadrian, not do any "real" tasks on its own.
      This is part of that effort --- one less file generated by it.
      
      (It is still done with a `.in` file, so in a future world non-Hadrian
      also can easily create this file.)
      
      Split modules:
      
      - GHC.CmmToLlvm.Config
      - GHC.CmmToLlvm.Version
      - GHC.CmmToLlvm.Version.Bounds
      - GHC.CmmToLlvm.Version.Type
      
      This also means we can get rid of the silly `unused.h` introduced in
      !6803 / 7dfcab2f as temporary kludge.
      
      Part of #23966
      c37931b3
    • Matthew Pickering's avatar
      Add alpine 3_18 release job · 707a32f5
      Matthew Pickering authored and Marge Bot's avatar Marge Bot committed
      This is mainly experimental and future proofing to enable a smooth
      transition to newer alpine releases once 3_12 is too old.
      707a32f5
    • Matthew Pickering's avatar
      Update bootstrap plans for 9.4.8 and 9.6.4 · 5fcd58be
      Matthew Pickering authored and Marge Bot's avatar Marge Bot committed
      5fcd58be
    • Matthew Pickering's avatar
      c32b6426
    • Matthew Pickering's avatar
      Use specific clang assembler when compiling with -fllvm · ab533e71
      Matthew Pickering authored and Marge Bot's avatar Marge Bot committed
      There are situations where LLVM will produce assembly which older gcc
      toolchains can't handle. For example on Deb10, it seems that LLVM >= 13
      produces assembly which the default gcc doesn't support.
      
      A more robust solution in the long term is to require a specific LLVM
      compatible assembler when using -fllvm.
      
      Fixes #16354
      ab533e71
    • Ben Gamari's avatar
      Bump filepath to 1.5.0.0 · f2dffd2e
      Ben Gamari authored and Marge Bot's avatar Marge Bot committed
      Required bumps of the following submodules:
      
       * `directory`
       * `filepath`
       * `haskeline`
       * `process`
       * `unix`
       * `hsc2hs`
       * `Win32`
       * `semaphore-compat`
      
      and the addition of `os-string` as a boot package.
      f2dffd2e
    • Ben Gamari's avatar
      hadrian: Set -this-package-name · d7ee12ea
      Ben Gamari authored and Marge Bot's avatar Marge Bot committed
      When constructing the GHC flags for a package Hadrian must take care to
      set `-this-package-name` in addition to `-this-unit-id`. This hasn't
      broken until now as we have not had any uses of qualified package
      imports. However, this will change with `filepath-1.5` and the
      corresponding `unix` bump, breaking `hadrian/multi-ghci`.
      d7ee12ea
Loading