[cfe-dev] [atomic] 32 bit bug fixed recently?
Howard Hinnant
hhinnant at apple.com
Sat Mar 9 08:17:31 PST 2013
Thanks David. On i386, and using tip-of-trunk clang, all of libc++'s atomic tests pass. Would you agree that we should mark:
http://llvm.org/bugs/show_bug.cgi?id=15457
as fixed by your work?
Howard
On Mar 9, 2013, at 4:53 AM, David Chisnall <David.Chisnall at cl.cam.ac.uk> wrote:
> Hi Howard,
>
> I made a number of improvements to the clang C11 atomics support last weekend. I intended to fix some poor performance on MIPS (and ARM, and anything else non-x86), but it turned out that we were generating invalid IR for a number of fairly simple operations. I don't know if this is related. There are almost certainly some more corner cases that don't work, and some fairly major issues:
>
> 1) We don't yet properly understand that _Atomic(T) and T can have different in-memory representations (in particular, on most non-x86 architectures, we really want to ensure that _Atomic(short) and _Atomic(char) have zeroed padding so that we can do efficient atomic operations on them - this isn't really up to us, but is something that should appear in C11 supplements to various ABIs)
>
> 2) We don't save and restore the floating point exception state around floating point atomic operations. I'm tempted to say that anyone who thinks that atomic operation on a floating point value should step slowly away from the computer, but the standard does allow this...
>
> David
>
> On 8 Mar 2013, at 20:42, Howard Hinnant <hhinnant at apple.com> wrote:
>
>> Does anyone recognize this bug report as something that's recently been fixed in clang?
>>
>> http://llvm.org/bugs/show_bug.cgi?id=15457
>>
>> It is a failure only on 32 bit architecture (I only tested i386). And I can **not** reproduce it with tip-of-trunk clang, only with Apple LLVM version 4.2 (clang-425.1.16) (based on LLVM 3.2svn).
>>
>> I'm hoping someone recognizes another bug report that I can just dup this one to.
>>
>> Thanks,
>> Howard
>>
>> _______________________________________________
>> cfe-dev mailing list
>> cfe-dev at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
>
More information about the cfe-dev
mailing list