aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/CodeGen/AsmPrinter/ARMException.cpp25
-rw-r--r--lib/Target/ARM/ARMAsmPrinter.cpp5
-rw-r--r--lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp7
3 files changed, 12 insertions, 25 deletions
diff --git a/lib/CodeGen/AsmPrinter/ARMException.cpp b/lib/CodeGen/AsmPrinter/ARMException.cpp
index e5a7d05f4c..3f23873253 100644
--- a/lib/CodeGen/AsmPrinter/ARMException.cpp
+++ b/lib/CodeGen/AsmPrinter/ARMException.cpp
@@ -29,7 +29,6 @@
#include "llvm/Target/TargetMachine.h"
#include "llvm/Target/TargetOptions.h"
#include "llvm/Target/TargetRegisterInfo.h"
-#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Dwarf.h"
#include "llvm/Support/FormattedStream.h"
#include "llvm/ADT/SmallString.h"
@@ -37,18 +36,6 @@
#include "llvm/ADT/Twine.h"
using namespace llvm;
-cl::opt<ExceptionHandling::ARMEHABIMode>
-EnableARMEHABI("arm-enable-ehabi", cl::Hidden,
- cl::desc("Generate ARM EHABI tables:"),
- cl::values(clEnumValN(ExceptionHandling::ARMEHABIDisabled, "no",
- "Do not generate ARM EHABI tables"),
- clEnumValN(ExceptionHandling::ARMEHABIUnwind, "unwind",
- "Emit unwinding instructions, but not descriptors"),
- clEnumValN(ExceptionHandling::ARMEHABIFull, "full",
- "Generate full ARM EHABI tables"),
- clEnumValEnd));
-
-
ARMException::ARMException(AsmPrinter *A)
: DwarfException(A),
shouldEmitTable(false), shouldEmitMoves(false), shouldEmitTableModule(false)
@@ -85,15 +72,13 @@ void ARMException::EndFunction() {
Asm->OutStreamer.EmitPersonality(PerSym);
}
- if (EnableARMEHABI == ExceptionHandling::ARMEHABIFull) {
- // Map all labels and get rid of any dead landing pads.
- MMI->TidyLandingPads();
+ // Map all labels and get rid of any dead landing pads.
+ MMI->TidyLandingPads();
- Asm->OutStreamer.EmitHandlerData();
+ Asm->OutStreamer.EmitHandlerData();
- // Emit actual exception table
- EmitExceptionTable();
- }
+ // Emit actual exception table
+ EmitExceptionTable();
}
Asm->OutStreamer.EmitFnEnd();
diff --git a/lib/Target/ARM/ARMAsmPrinter.cpp b/lib/Target/ARM/ARMAsmPrinter.cpp
index e0b08f1f48..288b7f14e4 100644
--- a/lib/Target/ARM/ARMAsmPrinter.cpp
+++ b/lib/Target/ARM/ARMAsmPrinter.cpp
@@ -1192,7 +1192,7 @@ void ARMAsmPrinter::EmitUnwindingInstruction(const MachineInstr *MI) {
}
}
-extern cl::opt<ExceptionHandling::ARMEHABIMode> EnableARMEHABI;
+extern cl::opt<bool> EnableARMEHABI;
// Simple pseudo-instructions have their lowering (with expansion to real
// instructions) auto-generated.
@@ -1203,8 +1203,7 @@ void ARMAsmPrinter::EmitInstruction(const MachineInstr *MI) {
OutStreamer.EmitCodeRegion();
// Emit unwinding stuff for frame-related instructions
- if (EnableARMEHABI != ExceptionHandling::ARMEHABIDisabled &&
- MI->getFlag(MachineInstr::FrameSetup))
+ if (EnableARMEHABI && MI->getFlag(MachineInstr::FrameSetup))
EmitUnwindingInstruction(MI);
// Do any auto-generated pseudo lowerings.
diff --git a/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp b/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp
index db21defb7c..d1804a2e45 100644
--- a/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp
+++ b/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp
@@ -16,7 +16,10 @@
using namespace llvm;
-extern cl::opt<ExceptionHandling::ARMEHABIMode> EnableARMEHABI;
+cl::opt<bool>
+EnableARMEHABI("arm-enable-ehabi", cl::Hidden,
+ cl::desc("Generate ARM EHABI tables"),
+ cl::init(false));
static const char *const arm_asm_table[] = {
@@ -79,6 +82,6 @@ ARMELFMCAsmInfo::ARMELFMCAsmInfo() {
SupportsDebugInformation = true;
// Exceptions handling
- if (EnableARMEHABI != ExceptionHandling::ARMEHABIDisabled)
+ if (EnableARMEHABI)
ExceptionsType = ExceptionHandling::ARM;
}