From f77c8a48aea9fbce038fc38ef9849f7aa1453993 Mon Sep 17 00:00:00 2001 From: Jessica Clarke Date: Tue, 3 Nov 2020 03:57:46 +0000 Subject: [CodeGen] Fix regression from D83655 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 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp') diff --git a/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp b/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp index 1772e7f..57af82a 100644 --- a/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp +++ b/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp @@ -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(LSDASection); -- cgit v1.1