[LLVMdev] Invalid STOREATOMIC Record

Eli Friedman eli.friedman at gmail.com
Mon Sep 19 12:43:14 PDT 2011


On Sat, Sep 17, 2011 at 1:34 PM, Eli Friedman <eli.friedman at gmail.com> wrote:
> On Sat, Sep 17, 2011 at 1:00 PM, David Meyer <pdox at google.com> wrote:
>> The second equality here: (in lib/Bitcode/Reader/BitcodeReader.cpp)
>>
>>      AtomicOrdering Ordering = GetDecodedOrdering(Record[OpNum+2]);
>>      if (Ordering == NotAtomic || Ordering == Release ||
>>          Ordering == AcquireRelease)
>>        return Error("Invalid STOREATOMIC record");
>>
>> Is failing on this assembly, which was generated by Clang:
>>
>>  store atomic i32 0, i32* @mutex release, align 4
>>
>> Is this a typo or is there some reason why this assembly is invalid?
>
> Typo; that should read "Ordering == NotAtomic || Ordering == Acquire
> || Ordering == AcquireRelease".  I'll commit a fix soon.

r140040.

-Eli




More information about the llvm-dev mailing list