[CodeGen] Fix regression from D83655
authorJessica Clarke <jrtc27@jrtc27.com>
Tue, 3 Nov 2020 03:57:46 +0000 (03:57 +0000)
committerJessica Clarke <jrtc27@jrtc27.com>
Tue, 3 Nov 2020 03:57:46 +0000 (03:57 +0000)
Arm EHABI has a null LSDASection as it does its own thing, so we should
continue to return null in that case rather than try and cast it.

llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp

index 1772e7f..57af82a 100644 (file)
@@ -837,7 +837,8 @@ MCSection *
 TargetLoweringObjectFileELF::getSectionForLSDA(const Function &F,
                                                const TargetMachine &TM) const {
   // If neither COMDAT nor function sections, use the monolithic LSDA section.
-  if (!F.hasComdat() && !TM.getFunctionSections())
+  // Re-use this path if LSDASection is null as in the Arm EHABI.
+  if (!LSDASection || (!F.hasComdat() && !TM.getFunctionSections()))
     return LSDASection;
 
   const auto *LSDA = cast<MCSectionELF>(LSDASection);