How do I find out which info table a continuation belongs to?

Simon Marlow marlowsd at gmail.com
Sun Feb 10 15:59:54 UTC 2019


I believe this is due to https://phabricator.haskell.org/D4722

(cc Sergei Azovskov)

I'm a bit surprised that gdb isn't showing anything though, it should know
that the address corresponds to a temporary symbol like `.L1234`. Perhaps
you need to compile with -g to make this work, I'm not sure.

On Sun, 10 Feb 2019 at 07:50, Ömer Sinan Ağacan <omeragacan at gmail.com>
wrote:

> I'm currently working on a bug and one of the things I often want to know
> is
> what's on the stack. The problem is I can't see labels of continuations so
> the
> information is really useless. Example:
>
>     >>> call printStack(((StgTSO*)0x42000e0198)->stackobj)
>     0x42000c8788: RET_SMALL (0x512d70)
>     0x42000c8790: RET_SMALL (0x40edf0)
>        stk[5] (0x42000c8798) = 0x7b3938
>     0x42000c87a0: CATCH_FRAME(0x735a98,0x7d3ff2)
>     0x42000c87b8: STOP_FRAME(0x7311b8)
>
> (I modified the printer to print stack locations when printing stacks)
>
> Here I need to know which info table the RET_SMALLs return to. Normally I
> do
> this for other kinds of closures:
>
>     >>> print ((StgClosure*)...)->header.info
>     $15 = (const StgInfoTable *) 0x404dc0 <Main_nats_info>
>
> But for continuations that doesn't work:
>
>     >>> print ((StgClosure*)0x42000c8788)->header.info
>     $11 = (const StgInfoTable *) 0x512d80
>     >>> info symbol 0x512d80
>     No symbol matches 0x512d80.
>
> Anyone know how to make this work? Can I maybe mark the continuations
> label in
> the generated assembly somehow to make those labels available in gdb?
>
> Thanks
>
> Ömer
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-devs/attachments/20190210/a3ba479a/attachment.html>


More information about the ghc-devs mailing list