> I am trying to add an optimisation phase to ghc and get the
> following error message. Is there a simple way for me to
> fix this ? (I am trying to generate code variants.)
>
> panic! (the `impossible' happened):
> lookupBindC:no info!
> for: Main.m{-r1IZ-}{-r1IZ-} {- Int/EXP(..){-2i-} _NI_ -}
> (probably: data dependencies broken by an optimisation pass)
> static binds for:
> local binds for:
Almost certainly you have left out some bindings.
The simple way to trap this is to use the "-dcore-lint" flag
which traps the error in a much tidier form than the panic
in the code generator that you are seeing.
If you're adding a pass you probably want to call CoreLint
yourself after your pass. grep for calls to coreLint to find out
how to do this.
BTW what's your pass going to do?
Simon