diff --git a/lib/CodeGen/DwarfWriter.cpp b/lib/CodeGen/DwarfWriter.cpp
index 45ccb0c..52b405c 100644
--- a/lib/CodeGen/DwarfWriter.cpp
+++ b/lib/CodeGen/DwarfWriter.cpp
@@ -2725,10 +2725,6 @@
   ///
   bool shouldEmit;
   
-  /// FuncCPPPersonality - C++ personality function.
-  ///
-  Function *FuncCPPPersonality;
-
   /// EmitCommonEHFrame - Emit the common eh unwind frame.
   ///
   void EmitCommonEHFrame() {
@@ -2738,7 +2734,7 @@
     
     // If there is a personality present then we need to indicate that
     // in the common eh frame.
-    Function *Personality = FuncCPPPersonality;
+    Function *Personality = MMI->getPersonality();
 
     // Size and sign of stack growth.
     int stackGrowth =
@@ -2818,8 +2814,7 @@
   void EmitEHFrame() {
     // If there is a personality present then we need to indicate that
     // in the common eh frame.
-    Function *Personality = FuncCPPPersonality;
-//    Function *Personality = MMI->getPersonality();
+    Function *Personality = MMI->getPersonality();
     MachineFrameInfo *MFI = MF->getFrameInfo();
 
     Asm->SwitchToTextSection(TAI->getDwarfEHFrameSection());
@@ -3094,7 +3089,6 @@
   : Dwarf(OS, A, T)
   , didInitial(false)
   , shouldEmit(false)
-  , FuncCPPPersonality(NULL)
   {}
   
   virtual ~DwarfException() {}
@@ -3109,7 +3103,6 @@
   /// content.
   void BeginModule(Module *M) {
     this->M = M;
-    FuncCPPPersonality = M->getFunction("__gxx_personality_v0");
   }
 
   /// EndModule - Emit all exception information that should come after the
