Quick Cmm question

Jan Stolarek jan.stolarek at p.lodz.pl
Mon Aug 5 21:27:05 CEST 2013


Thank you Edward.

Janek

Dnia poniedziałek, 5 sierpnia 2013, Edward Z. Yang napisał:
> IIUC, this code will never return to cJK. It will return to what-ever
> address is in R1; jumping to 'returnToSched' with the value in R1
> says, "Please run the scheduler, and jump back to R1 when you're
> done and ready to run my thread again."
>
> Edward
>
> Excerpts from Jan Stolarek's message of Mon Aug 05 08:08:43 -0700 2013:
> > I have a question about this piece of Cmm code:
> >
> >   cJI:
> >       R1 = _sGG::P32;
> >       call (stg_gc_enter_1)(R1) args: 4, res: 0, upd: 4;
> >   cJK:
> >       ...
> >
> > Does the call to stg_gc_enter_1 return to cJK: a) never; b) sometimes; c)
> > always ? I'm looking at the implementation in rts/HeapStackCheck.cmm but
> > I don't know the meaning of `jump stg_returnToSched [R1];` at the and of
> > stg_gc_noregs. Any help will be appreciated.
> >
> > Janek






More information about the ghc-devs mailing list