At Sat, 19 Apr 2014 17:36:40 -0400, Vincent St-Amour wrote:
> At Sat, 19 Apr 2014 13:19:25 -0400,
> mfl...@racket-lang.org wrote:
> > a01b12e Matthew Flatt <mfl...@racket-lang.org> 2014-04-19 10:11
> > :
> > | optimizer: don't move expressions into a `with-continuation-mark`
> > |
> > | ... unless the optimizer can prove that the expression doesn't
> > | inspect continuation marks.
> > :
> >   M pkgs/racket-pkgs/racket-test/tests/racket/optimize.rktl | 12 
> > +++++++++++-
> >   M racket/src/racket/src/optimize.c                        |  5 +++++
> 
> This optimization can be observed from another thread, like a profiler's
> sampling thread, even if the relevant code doesn't observe continuation
> marks itself.

Right: If there's some synchronization point within the expression so
that you could reliably observe the thread at that point, then the
expression doesn't get moved relative to marks.


_________________________
  Racket Developers list:
  http://lists.racket-lang.org/dev

Reply via email to