[llvm] r226490 - IR: Remove direct comparisons against Metadata::Storage, NFC

Duncan Exon Smith dexonsmith at apple.com
Tue Jan 20 07:20:32 PST 2015



> On Jan 20, 2015, at 3:48 AM, Timur Iskhodzhanov <timurrrr at google.com> wrote:
> 
> Hi Duncan,
> 
> This has broken down "ninja check-asan" on 32-bit Windows.
> Assertion failed: Context.hasReplaceableUses() && "Expected RAUW support", file C:\src\llvm_bot\slave\win\build\llvm\include\llvm/IR/Metadata.h, line 976

Can you include the asan output?   A backtrace?   Point at a buildbot?   I don't have the tools to reproduce this. 

> 
> It seems to be hard to revert now...
> You've committed a lot of small changes in a very short timeframe -

Actually, I committed work over the span of an entire work day. 

> - I assume you're using git?  Is there a reason why you don't squash your changes before committing?  It makes finding bad commits / reverting harder...

Besides being developer policy to separate changes as much as possible, it also makes changes easier to review, and isolating which change causes a problem easier to determine. 

> 
>> On Mon Jan 19 2015 at 10:30:36 PM Duncan P. N. Exon Smith <dexonsmith at apple.com> wrote:
>> Author: dexonsmith
>> Date: Mon Jan 19 13:26:24 2015
>> New Revision: 226490
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=226490&view=rev
>> Log:
>> IR: Remove direct comparisons against Metadata::Storage, NFC
>> 
>> Modified:
>>     llvm/trunk/lib/IR/Metadata.cpp
>> 
>> Modified: llvm/trunk/lib/IR/Metadata.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/IR/Metadata.cpp?rev=226490&r1=226489&r2=226490&view=diff
>> ==============================================================================
>> --- llvm/trunk/lib/IR/Metadata.cpp (original)
>> +++ llvm/trunk/lib/IR/Metadata.cpp Mon Jan 19 13:26:24 2015
>> @@ -402,7 +402,7 @@ MDNode::MDNode(LLVMContext &Context, uns
>>    for (unsigned I = 0, E = MDs.size(); I != E; ++I)
>>      setOperand(I, MDs[I]);
>> 
>> -  if (Storage == Temporary)
>> +  if (isTemporary())
>>      this->Context.makeReplaceable(
>>          make_unique<ReplaceableMetadataImpl>(Context));
>>  }
>> @@ -416,7 +416,7 @@ static bool isOperandUnresolved(Metadata
>>  UniquableMDNode::UniquableMDNode(LLVMContext &C, unsigned ID,
>>                                   StorageType Storage, ArrayRef<Metadata *> Vals)
>>      : MDNode(C, ID, Storage, Vals) {
>> -  if (Storage != Uniqued)
>> +  if (!isUniqued())
>>      return;
>> 
>>    // Check whether any operands are unresolved, requiring re-uniquing.
>> @@ -432,7 +432,7 @@ UniquableMDNode::UniquableMDNode(LLVMCon
>>  }
>> 
>>  void UniquableMDNode::resolve() {
>> -  assert(Storage == Uniqued && "Expected this to be uniqued");
>> +  assert(isUniqued() && "Expected this to be uniqued");
>>    assert(!isResolved() && "Expected this to be unresolved");
>> 
>>    // Move the map, so that this immediately looks resolved.
>> 
>> 
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150120/4a469848/attachment.html>


More information about the llvm-commits mailing list