clash-compiler
clash-compiler copied to clipboard
Haskell to VHDL/Verilog/SystemVerilog compiler
Add support for GHC 9.10 Currently, when building the Clash compiler against GHC 9.10 it will only work reliably on 64-bit platforms, and not so on 32-bit platforms. That's because...
It was reporting: > The configuration uses the deprecated update_method attribute of the queue action in one or more pull_request_rules. It must now be used under the queue_rules configuration. >...
If one writes `nameHint (SSym @"hi") ...` there is a good chance that GHC's `unpack` rewrite rule will rewrite the `String` in the term-level evidence carried by `SSym` (which is...
[This reproducer](https://github.com/gergoerdi/clash-issue-2802/tree/clash-issue-2802) steadily uses more and more memory when run with `stack run`. Compiling `clash-prelude` with `super-strict: true` seems to be an effective workaround.
The below program runs fine in GHCi, but when compiled and run, fails after the first invocation of `sim`: ``` module Main where import Clash.Prelude import Control.Arrow.Transformer.Automaton circuit :: (HiddenClockResetEnable...
See https://github.com/clash-lang/clash-compiler/pull/2720#issuecomment-2118747176
Hard-coded stringy names are problematic, especially in GHC 9.10.1 due to the `ghc-internal` rewrite. Some occurrences were handled in https://github.com/clash-lang/clash-compiler/commit/e565d26e4db898c4a6cb0abb98276535a1b0058b, but there are quite a few more in `Clash.GHC.Evaluator.Primitive` (c.f....
First discovered by @leonschoorl in the GHC 9.10 upgrade PR: https://github.com/clash-lang/clash-compiler/pull/2758#discussion_r1693661419 it turns out that every since the GHC 9.2 series, the `PatError` tests is desugared to: ``` topEntity =...
How about something like this? ``` data Endian = BigEndian | LittleEndian newtype Counters (endianness :: Endian) n a = Counters{ getCounters :: Vec n a } deriving (Generic, NFDataX,...