On Tue, Oct 18, 2016 at 2:16 PM, Ian Lance Taylor <i...@golang.org> wrote:

> On Tue, Oct 18, 2016 at 12:30 PM, Joshua Liebow-Feeser <he...@joshlf.com>
> wrote:
> >
> > I'm playing around with implementing a wait-free channel in the runtime
> > package, and as part of this, it'd be really nice to have double-word
> > compare-and-swap (CAS). Barring that, however, for my purposes, it would
> > actually be fine to have a one-word value that encodes both a pointer and
> > some extra information using bit packing. The problem, though, is that
> if I
> > store this value as, for example, a uintptr, the GC may not realize that
> > it's a pointer. So my question is: are there any bits in a pointer which,
> > when modified, won't mess with the GC? Note that since this is
> implemented
> > in the runtime, I'm totally OK with relying on behavior specific to the
> > current GC implementation.
>
> See runtime/lfstack*.go.
>
Awesome, thanks!

>
> Ian
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to