[LLVMdev] Proposal for a new LLVM concurrency memory model
David Greene
dag at cray.com
Mon Apr 26 13:09:57 PDT 2010
On Monday 26 April 2010 14:03:35 Chandler Carruth wrote:
> > I don't have a strong preference, but I am curious why all the atomics
> > are integer-only. I would like to see 32- and 64-bit float supported as
> > well, at minimum.
>
> I have no real problem with making the types of all of these analogous to
> the types supported by icmp, and providing floating point atomics as well.
Good.
> A couple of observations:
> Allowing direct use of pointers would be convenient I suspect -- pointers
> are very common operands to atomic operations, and it seems annoying to
> have to convert them to ints.
Yep.
> We can allow the IR to represent vectors, but unless hardware supports it,
> I think lowering these by decomposing them is more than LLVM should try to
> do. Because of that, I'm not sure we should support vectors as elsewhere
> they degrade gracefully.
Vector atomics are extremely useful on architectures that support them.
I'm not sure we need atomicity across vector elements, so decomposing
shouldn't be a problem, but I will have to think about it a bit.
-Dave
More information about the llvm-dev
mailing list