Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save martijnbastiaan/dee0b7455097265b2c43c077092b38ea to your computer and use it in GitHub Desktop.
Save martijnbastiaan/dee0b7455097265b2c43c077092b38ea to your computer and use it in GitHub Desktop.
martijn@deskei ~/code/clash-compiler-qbl master $ cabal new-run clash -- scratch/Mac.hs --vhdl -fclash-nocache -fclash-debug DebugFinal
Up to date
Loading dependencies took 0.754814242s
Parsing and compiling primitives took 0.068400107s
Compiling: MAC.topEntity
Ignoring .manifest files
MAC.topEntity8214565720323808422 before normalization:
λ(clk :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom A 5000)
Clash.Signal.Internal.Source) ->
λ(rst :: Clash.Signal.Internal.Reset
(Clash.Signal.Internal.Dom A 5000)
Clash.Signal.Internal.Asynchronous) ->
letrec
ds :: GHC.Tuple.(,,)
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source)
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source)
(Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom B 10000)
GHC.Types.Bool)
= Clash.Intel.ClockGen.alteraPll
@(GHC.Tuple.(,,)
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source)
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source)
(Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom B 10000)
GHC.Types.Bool))
@altpll50to100
@(Clash.Signal.Internal.Dom A 5000)
(Clash.Clocks.$fClocks(,,)_$cclocks8214565720323824704
@(Clash.Signal.Internal.Dom B 10000)
@(Clash.Signal.Internal.Dom C 15000)
@(Clash.Signal.Internal.Dom B 10000))
(Clash.Promoted.Symbol.SSymbol @altpll50to100
MAC.topEntity18214565720323825945)
clk
rst
in letrec
pllOut :: Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom B 10000)
GHC.Types.Bool
= case ds of
GHC.Tuple.(,,)
(clk1 :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source)
(clk2 :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source)
(pllOut1 :: Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom B 10000)
GHC.Types.Bool) ->
pllOut1
in letrec
clk1 :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source
= case ds of
GHC.Tuple.(,,)
(clk2 :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source)
(clk3 :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source)
(pllOut1 :: Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom B 10000)
GHC.Types.Bool) ->
clk2
in GHC.Tuple.(,)
@(Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom B 10000)
GHC.Types.Int)
@(Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom C 15000)
GHC.Types.Int)
(MAC.mac8214565720323808421
@(Clash.Signal.Internal.Dom B 10000)
@Clash.Signal.Internal.Source
@Clash.Signal.Internal.Asynchronous
@(GHC.Types.Any
(GHC.Prim.TYPE GHC.Types.LiftedRep))
(GHC.Classes.C:(%,%)
@(GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source))
@(GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Asynchronous))
clk1
(Clash.Signal.Internal.unsafeToAsyncReset
@(Clash.Signal.Internal.Dom B 10000)
pllOut))
(GHC.Tuple.(,) @GHC.Types.Int @GHC.Types.Int
(GHC.Types.I#
3)
(GHC.Types.I#
3)))
(letrec
clk2 :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source
= case ds of
GHC.Tuple.(,,)
(clk4 :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source)
(clk5 :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source)
(pllOut1 :: Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom B 10000)
GHC.Types.Bool) ->
clk5
in MAC.mac8214565720323808421
@(Clash.Signal.Internal.Dom C 15000)
@Clash.Signal.Internal.Source
@Clash.Signal.Internal.Asynchronous
@(GHC.Types.Any
(GHC.Prim.TYPE GHC.Types.LiftedRep))
(GHC.Classes.C:(%,%)
@(GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source))
@(GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Asynchronous))
clk2
(Clash.Signal.Internal.unsafeToAsyncReset
@(Clash.Signal.Internal.Dom C 15000)
(Clash.Explicit.Signal.unsafeSynchronizer
@(Clash.Signal.Internal.Dom B 10000)
@Clash.Signal.Internal.Source
@(Clash.Signal.Internal.Dom C 15000)
@Clash.Signal.Internal.Source
@GHC.Types.Bool
clk1
clk2
pllOut)))
(GHC.Tuple.(,) @GHC.Types.Int @GHC.Types.Int
(GHC.Types.I#
8)
(GHC.Types.I#
8)))
MAC.topEntity8214565720323808422 after normalization:
λ(clk :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom A 5000)
Clash.Signal.Internal.Source) ->
λ(rst :: Clash.Signal.Internal.Reset
(Clash.Signal.Internal.Dom A 5000)
Clash.Signal.Internal.Asynchronous) ->
letrec
result1 :: GHC.Tuple.(,)
(Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom B 10000)
GHC.Types.Int)
(Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom C 15000)
GHC.Types.Int)
= GHC.Tuple.(,)
@(Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom B 10000)
GHC.Types.Int)
@(Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom C 15000)
GHC.Types.Int)
#app_arg2
result
#app_arg2 :: GHC.Types.Int
= MAC.mac13
(GHC.Classes.C:(%,%)
@(GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source))
@(GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Asynchronous))
clk2
#app_arg1)
result :: GHC.Types.Int
= MAC.mac15
(GHC.Classes.C:(%,%)
@(GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source))
@(GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Asynchronous))
clk5
#app_arg)
#app_arg1 :: Clash.Signal.Internal.Reset
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Asynchronous
= Clash.Signal.Internal.unsafeToAsyncReset
@(Clash.Signal.Internal.Dom B 10000)
pllOut1
#app_arg :: Clash.Signal.Internal.Reset
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Asynchronous
= Clash.Signal.Internal.unsafeToAsyncReset
@(Clash.Signal.Internal.Dom C 15000)
(Clash.Explicit.Signal.unsafeSynchronizer
@(Clash.Signal.Internal.Dom B 10000)
@Clash.Signal.Internal.Source
@(Clash.Signal.Internal.Dom C 15000)
@Clash.Signal.Internal.Source
@GHC.Types.Bool
(Clash.Transformations.removedArg
@(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source))
(Clash.Transformations.removedArg
@(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source))
pllOut1)
clk5 :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source
= case ds of
GHC.Tuple.(,,)
(#wild1 :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source)
(#sel :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source)
(#wild :: Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom B 10000)
GHC.Types.Bool) ->
#sel
clk2 :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source
= case ds of
GHC.Tuple.(,,)
(#sel :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source)
(#wild1 :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source)
(#wild :: Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom B 10000)
GHC.Types.Bool) ->
#sel
pllOut1 :: Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom B 10000)
GHC.Types.Bool
= case ds of
GHC.Tuple.(,,)
(#wild1 :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source)
(#wild :: Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source)
(#sel :: Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom B 10000)
GHC.Types.Bool) ->
#sel
ds :: GHC.Tuple.(,,)
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source)
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source)
(Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom B 10000)
GHC.Types.Bool)
= Clash.Intel.ClockGen.alteraPll
@(GHC.Tuple.(,,)
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source)
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source)
(Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom B 10000)
GHC.Types.Bool))
@altpll50to100
@(Clash.Signal.Internal.Dom A 5000)
Clash.Clocks.$fClocks(,,)_$cclocks11
(Clash.Transformations.removedArg
@(Clash.Promoted.Symbol.SSymbol altpll50to100))
clk
rst
in result1
MAC.mac13 before normalization:
λ($d(%,%) :: GHC.Classes.(%,%)
(GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source))
(GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Asynchronous))) ->
(Λdomain ->
Λgated ->
Λsynchronous ->
Λn ->
λ($d(%,%)1 :: GHC.Classes.(%,%)
(GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock domain gated))
(GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
domain
synchronous))) ->
λ(eta :: Clash.Signal.Internal.Signal
domain
(GHC.Tuple.(,) GHC.Types.Int GHC.Types.Int)) ->
Clash.Explicit.Mealy.mealy8214565720323789035
@domain
@gated
@synchronous
@GHC.Types.Int
@(GHC.Tuple.(,) GHC.Types.Int GHC.Types.Int)
@GHC.Types.Int
(GHC.Classes.$p1(%,%)8214565720323787326
@(GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock domain gated))
@(GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
domain
synchronous))
$d(%,%)1)
(GHC.Classes.$p2(%,%)8214565720323787324
@(GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock domain gated))
@(GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
domain
synchronous))
$d(%,%)1)
(λ(acc :: GHC.Types.Int) ->
λ(ds :: GHC.Tuple.(,)
GHC.Types.Int
GHC.Types.Int) ->
case ds of
GHC.Tuple.(,) (x :: GHC.Types.Int)
(y :: GHC.Types.Int) ->
GHC.Tuple.(,) @GHC.Types.Int @GHC.Types.Int
(case acc of
GHC.Types.I# (x1 :: GHC.Prim.Int#) ->
case x of
GHC.Types.I# (x2 :: GHC.Prim.Int#) ->
case y of
GHC.Types.I# (y1 :: GHC.Prim.Int#) ->
GHC.Types.I#
(GHC.Prim.+#
x1
(GHC.Prim.*#
x2
y1)))
acc)
(GHC.Types.I#
0)
eta)
@(Clash.Signal.Internal.Dom B 10000)
@Clash.Signal.Internal.Source
@Clash.Signal.Internal.Asynchronous
@(GHC.Types.Any
(GHC.Prim.TYPE GHC.Types.LiftedRep))
$d(%,%)
(GHC.Tuple.(,) @GHC.Types.Int @GHC.Types.Int
(GHC.Types.I#
3)
(GHC.Types.I#
3))
MAC.mac13 after normalization:
λ($d(%,%) :: GHC.Classes.(%,%)
(GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source))
(GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Asynchronous))) ->
letrec
result :: GHC.Types.Int
= Clash.Explicit.Mealy.mealy79
(case $d(%,%) of
GHC.Classes.C:(%,%) (#sel :: GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source))
(#wild :: GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Asynchronous)) ->
#sel)
(case $d(%,%) of
GHC.Classes.C:(%,%) (#wild :: GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source))
(#sel :: GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Asynchronous)) ->
#sel)
in result
MAC.mac15 before normalization:
λ($d(%,%) :: GHC.Classes.(%,%)
(GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source))
(GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Asynchronous))) ->
(Λdomain ->
Λgated ->
Λsynchronous ->
Λn ->
λ($d(%,%)1 :: GHC.Classes.(%,%)
(GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock domain gated))
(GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
domain
synchronous))) ->
λ(eta :: Clash.Signal.Internal.Signal
domain
(GHC.Tuple.(,) GHC.Types.Int GHC.Types.Int)) ->
Clash.Explicit.Mealy.mealy8214565720323789035
@domain
@gated
@synchronous
@GHC.Types.Int
@(GHC.Tuple.(,) GHC.Types.Int GHC.Types.Int)
@GHC.Types.Int
(GHC.Classes.$p1(%,%)8214565720323787326
@(GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock domain gated))
@(GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
domain
synchronous))
$d(%,%)1)
(GHC.Classes.$p2(%,%)8214565720323787324
@(GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock domain gated))
@(GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
domain
synchronous))
$d(%,%)1)
(λ(acc :: GHC.Types.Int) ->
λ(ds :: GHC.Tuple.(,)
GHC.Types.Int
GHC.Types.Int) ->
case ds of
GHC.Tuple.(,) (x :: GHC.Types.Int)
(y :: GHC.Types.Int) ->
GHC.Tuple.(,) @GHC.Types.Int @GHC.Types.Int
(case acc of
GHC.Types.I# (x1 :: GHC.Prim.Int#) ->
case x of
GHC.Types.I# (x2 :: GHC.Prim.Int#) ->
case y of
GHC.Types.I# (y1 :: GHC.Prim.Int#) ->
GHC.Types.I#
(GHC.Prim.+#
x1
(GHC.Prim.*#
x2
y1)))
acc)
(GHC.Types.I#
0)
eta)
@(Clash.Signal.Internal.Dom C 15000)
@Clash.Signal.Internal.Source
@Clash.Signal.Internal.Asynchronous
@(GHC.Types.Any
(GHC.Prim.TYPE GHC.Types.LiftedRep))
$d(%,%)
(GHC.Tuple.(,) @GHC.Types.Int @GHC.Types.Int
(GHC.Types.I#
8)
(GHC.Types.I#
8))
MAC.mac15 after normalization:
λ($d(%,%) :: GHC.Classes.(%,%)
(GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source))
(GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Asynchronous))) ->
letrec
result :: GHC.Types.Int
= Clash.Explicit.Mealy.mealy110
(case $d(%,%) of
GHC.Classes.C:(%,%) (#sel :: GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source))
(#wild :: GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Asynchronous)) ->
#sel)
(case $d(%,%) of
GHC.Classes.C:(%,%) (#wild :: GHC.Classes.IP
clk
(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source))
(#sel :: GHC.Classes.IP
rst
(Clash.Signal.Internal.Reset
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Asynchronous)) ->
#sel)
in result
Clash.Clocks.$fClocks(,,)_$cclocks11 before normalization:
(Λc1 ->
Λc2 ->
ΛpllLock ->
ΛpllIn ->
λ(clk :: Clash.Signal.Internal.Clock
pllIn
Clash.Signal.Internal.Source) ->
λ(ds :: Clash.Signal.Internal.Reset
pllIn
Clash.Signal.Internal.Asynchronous) ->
case ds of
Clash.Signal.Internal.Async
(cobox :: GHC.Prim.~#
Clash.Signal.Internal.ResetKind
Clash.Signal.Internal.ResetKind
Clash.Signal.Internal.Asynchronous
Clash.Signal.Internal.Asynchronous)
(rst :: Clash.Signal.Internal.Signal
pllIn
GHC.Types.Bool) ->
GHC.Tuple.(,,)
@(Clash.Signal.Internal.Clock
c1
Clash.Signal.Internal.Source)
@(Clash.Signal.Internal.Clock
c2
Clash.Signal.Internal.Source)
@(Clash.Signal.Internal.Signal
pllLock
GHC.Types.Bool)
(Clash.Signal.Internal.clockGate @pllIn
@Clash.Signal.Internal.Source
clk
rst)
(Clash.Signal.Internal.clockGate @pllIn
@Clash.Signal.Internal.Source
clk
rst)
rst)
@(Clash.Signal.Internal.Dom B 10000)
@(Clash.Signal.Internal.Dom C 15000)
@(Clash.Signal.Internal.Dom B 10000)
Clash.Clocks.$fClocks(,,)_$cclocks11 after normalization:
ΛpllIn ->
λ(clk :: Clash.Signal.Internal.Clock
pllIn
Clash.Signal.Internal.Source) ->
λ(ds :: Clash.Signal.Internal.Reset
pllIn
Clash.Signal.Internal.Asynchronous) ->
case ds of
Clash.Signal.Internal.Async
(cobox :: GHC.Prim.~#
Clash.Signal.Internal.ResetKind
Clash.Signal.Internal.ResetKind
Clash.Signal.Internal.Asynchronous
Clash.Signal.Internal.Asynchronous)
(rst :: Clash.Signal.Internal.Signal
pllIn
GHC.Types.Bool) ->
GHC.Tuple.(,,)
@(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom B 10000)
Clash.Signal.Internal.Source)
@(Clash.Signal.Internal.Clock
(Clash.Signal.Internal.Dom C 15000)
Clash.Signal.Internal.Source)
@(Clash.Signal.Internal.Signal
(Clash.Signal.Internal.Dom B 10000)
GHC.Types.Bool)
(Clash.Signal.Internal.clockGate @pllIn
@Clash.Signal.Internal.Source
clk
rst)
(Clash.Signal.Internal.clockGate @pllIn
@Clash.Signal.Internal.Source
clk
rst)
rst
<no location info>: error:
Clash.Normalize(379): Can't translate domain: VarTy (ConstTy (TyCon (Name {nameSort = User, nameOcc = Clash.Signal.Internal.Domain8214565720323787388, nameLoc = UnhelpfulSpan "<no location info>"}))) (Name {nameSort = User, nameOcc = pllIn, nameLoc = UnhelpfulSpan "<no location info>"})
OtherType (VarTy (ConstTy (TyCon (Name {nameSort = User, nameOcc = Clash.Signal.Internal.Domain8214565720323787388, nameLoc = UnhelpfulSpan "<no location info>"}))) (Name {nameSort = User, nameOcc = pllIn, nameLoc = UnhelpfulSpan "<no location info>"}))
NB: The source location of the error is not exact, only indicative, as it is acquired after optimisations.
The actual location of the error can be in a function that is inlined.
To prevent inlining of those functions, annotate them with a NOINLINE pragma.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment