summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
diff options
context:
space:
mode:
authorBill Wendling <isanbard@gmail.com>2009-09-09 21:08:12 +0000
committerBill Wendling <isanbard@gmail.com>2009-09-09 21:08:12 +0000
commiteaa71c3ae2489f73bdd8b4ab18d482a4eb956c25 (patch)
tree776aa1957860a3f8a36290ba70cbce2db4087468 /llvm/lib/CodeGen
parentafd4f30df450d749981f909331979bcee19edbe0 (diff)
downloadbcm5719-llvm-eaa71c3ae2489f73bdd8b4ab18d482a4eb956c25.tar.gz
bcm5719-llvm-eaa71c3ae2489f73bdd8b4ab18d482a4eb956c25.zip
Early exit from function.
llvm-svn: 81381
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r--llvm/lib/CodeGen/AsmPrinter/DwarfException.cpp27
1 files changed, 13 insertions, 14 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfException.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfException.cpp
index 3e82b0fc868..bd49724ef65 100644
--- a/llvm/lib/CodeGen/AsmPrinter/DwarfException.cpp
+++ b/llvm/lib/CodeGen/AsmPrinter/DwarfException.cpp
@@ -906,23 +906,22 @@ void DwarfException::BeginFunction(MachineFunction *MF) {
/// EndFunction - Gather and emit post-function exception information.
///
void DwarfException::EndFunction() {
+ if (!shouldEmitMoves && !shouldEmitTable) return;
+
if (TimePassesIsEnabled)
ExceptionTimer->startTimer();
- if (shouldEmitMoves || shouldEmitTable) {
- EmitLabel("eh_func_end", SubprogramCount);
- EmitExceptionTable();
-
- // Save EH frame information
- EHFrames.push_back(
- FunctionEHFrameInfo(getAsm()->getCurrentFunctionEHName(MF),
- SubprogramCount,
- MMI->getPersonalityIndex(),
- MF->getFrameInfo()->hasCalls(),
- !MMI->getLandingPads().empty(),
- MMI->getFrameMoves(),
- MF->getFunction()));
- }
+ EmitLabel("eh_func_end", SubprogramCount);
+ EmitExceptionTable();
+
+ // Save EH frame information
+ EHFrames.push_back(FunctionEHFrameInfo(getAsm()->getCurrentFunctionEHName(MF),
+ SubprogramCount,
+ MMI->getPersonalityIndex(),
+ MF->getFrameInfo()->hasCalls(),
+ !MMI->getLandingPads().empty(),
+ MMI->getFrameMoves(),
+ MF->getFunction()));
if (TimePassesIsEnabled)
ExceptionTimer->stopTimer();
OpenPOWER on IntegriCloud