Fixed a crash in llvm-mc for Mach-O when a symbol difference expression uses a
[oota-llvm.git] / lib / MC / MCObjectWriter.cpp
index 18887397ab617eaa6f17685218b74b1b03e7130e..030f24793c55b547e761d9f2757b6ff604dcd39a 100644 (file)
@@ -68,6 +68,8 @@ MCObjectWriter::IsSymbolRefDifferenceFullyResolved(const MCAssembler &Asm,
 
   const MCSymbolData &DataA = Asm.getSymbolData(SA);
   const MCSymbolData &DataB = Asm.getSymbolData(SB);
+  if(!DataA.getFragment() || !DataB.getFragment())
+    return false;
 
   return IsSymbolRefDifferenceFullyResolvedImpl(Asm, DataA,
                                                 *DataB.getFragment(),