Displaying 2 results from an estimated 2 matches for "threadb".
Did you mean:
thread
2016 Jul 15
2
RFC: Strong GC References in LLVM
On Fri, Jul 15, 2016 at 2:30 PM, Sanjoy Das <sanjoy at playingwithpointers.com>
wrote:
> Hi Daniel,
>
> Daniel Berlin wrote:
> > However, I didn't quite understand your point about may-throw -- how
> > is may-throw different from a generic side-effect (volatile store,
> > syscall etc.)? All of those can't be hoisted or sunk -- we have to
>
2016 Jul 15
3
RFC: Strong GC References in LLVM
...n which entering a basic block does
not imply that all subsequent instructions must be executed. */
> // ptr_a and ptr_b are NoAlias, ptr_a holds 0 to begin with.
>
> ThreadA:
> while(true) { store volatile i32 42, i32* %ptr_b }
> store atomic i32 42, i32* %ptr_a
>
> ThreadB:
> %val = load atomic i32, i32* %ptr_a
> assert(%val is not 42) // The store is "guarded" by an inf loop
>
>
> We can't reorder the store to ptr_a to before the infinite loop. The
> volatile store is there to make the infinite loop well defined.
These do not...