Stupid error: If the LSDA and Personality functions aren't there, emit 0 instead
of the encoding.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134117 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/MC/MCDwarf.cpp b/lib/MC/MCDwarf.cpp
index 14a1081..d4a2234 100644
--- a/lib/MC/MCDwarf.cpp
+++ b/lib/MC/MCDwarf.cpp
@@ -670,20 +670,18 @@
Streamer.EmitAbsValue(Range, Size);
// Personality Function
- if (Frame.Personality) {
- Size = getSizeForEncoding(Streamer, Frame.PersonalityEncoding);
+ Size = getSizeForEncoding(Streamer, Frame.PersonalityEncoding);
+ if (Frame.Personality)
Streamer.EmitSymbolValue(Frame.Personality, Size);
- } else {
- Streamer.EmitIntValue(Frame.PersonalityEncoding, 0); // No personality fn
- }
+ else
+ Streamer.EmitIntValue(0, Size); // No personality fn
// LSDA
- if (Frame.Lsda) {
- Size = getSizeForEncoding(Streamer, Frame.LsdaEncoding);
+ Size = getSizeForEncoding(Streamer, Frame.LsdaEncoding);
+ if (Frame.Lsda)
Streamer.EmitSymbolValue(Frame.Lsda, Size);
- } else {
- Streamer.EmitIntValue(Frame.LsdaEncoding, 0); // No LSDA
- }
+ else
+ Streamer.EmitIntValue(0, Size); // No LSDA
return true;
#endif