[llvm-branch-commits] [llvm-tag] r104283 - in /llvm/tags/Apple/llvmCore-2328.6: ./ lib/ExecutionEngine/JIT/JITEmitter.cpp

Bill Wendling isanbard at gmail.com
Thu May 20 14:54:27 PDT 2010


Author: void
Date: Thu May 20 16:54:27 2010
New Revision: 104283

URL: http://llvm.org/viewvc/llvm-project?rev=104283&view=rev
Log:
Create llvmCore-2328.6 which is llvmCore-2328.5 + r103836 (from Morbo).

Added:
    llvm/tags/Apple/llvmCore-2328.6/   (props changed)
      - copied from r104282, llvm/tags/Apple/llvmCore-2328.5/
Modified:
    llvm/tags/Apple/llvmCore-2328.6/lib/ExecutionEngine/JIT/JITEmitter.cpp

Propchange: llvm/tags/Apple/llvmCore-2328.6/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Thu May 20 16:54:27 2010
@@ -0,0 +1,22 @@
+Debug
+Release
+Release-Asserts
+mklib
+Makefile.config
+config.log
+config.status
+cvs.out
+autom4te.cache
+configure.out
+LLVM-*
+_distcheckdir
+llvm.spec
+svn-commit.*
+*.patch
+*.patch.raw
+cscope.*
+Debug+Coverage-Asserts
+Release+Coverage-Asserts
+Debug+Coverage
+Release+Coverage
+Debug+Checks

Propchange: llvm/tags/Apple/llvmCore-2328.6/
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Thu May 20 16:54:27 2010
@@ -0,0 +1,3 @@
+/llvm/branches/Apple/Hermes:96832,96835,96858,96870,96876,96879
+/llvm/branches/Apple/Morbo:102992,103002
+/llvm/trunk:98602,98604,98612,98615-98616,98675,98686,98743-98744,98768,98773,98778,98780,98810,98835,98839,98845,98855,98862,98881,98920,98977,99032-99033,99043,99196,99223,99263,99282-99284,99306,99319-99321,99324,99336,99378,99418,99423,99429,99440,99455,99463,99465,99469,99484,99490,99492-99494,99507,99524,99537,99539-99540,99544,99570,99575,99598,99620,99629-99630,99636,99671,99692,99695,99697,99699,99722,99816,99835-99836,99845-99846,99848,99850,99855,99879,99881-99883,99895,99899,99910,99916,99919,99952-99954,99957,99959,99974-99975,99982,99984-99986,99988,99992-99993,99995,99997-99999,100016,100035,100037-100038,100042,100044,100056,100072,100074,100078,100081-100090,100092,100094-100095,100116,100134,100184,100209,100214-100218,100220-100221,100223-100225,100231,100250,100252,100257,100261,100304,100332,100353,100384,100454-100455,100457,100466,100478,100480,100487,100494,100497,100505,100521,100553,100568,100584,100592,100609-100610,100636,100710,100736,100742,1007
 51,100768-100769,100771,100781,100797,100804,100837,100867,100892,100936-100937,101011,101023,101075,101077,101079,101081,101085,101154,101158,101162,101165,101181,101190,101202,101282,101303,101314-101315,101317,101331,101343,101383,101392,101420,101453,101604,101615,101629,101684-101686,101805,101845,101847,101851,101855,101870,101879,101897,101925,101930,101965,102120,102225,102358,102394,102405,102421,102454,102463,102468,102470,102481,102486,102504-102505,102508-102510,102513,102519,102524,102526,102531,102646,102672,102980,102993,103001,103309-103310,103314,103836

Modified: llvm/tags/Apple/llvmCore-2328.6/lib/ExecutionEngine/JIT/JITEmitter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/tags/Apple/llvmCore-2328.6/lib/ExecutionEngine/JIT/JITEmitter.cpp?rev=104283&r1=104282&r2=104283&view=diff
==============================================================================
--- llvm/tags/Apple/llvmCore-2328.6/lib/ExecutionEngine/JIT/JITEmitter.cpp (original)
+++ llvm/tags/Apple/llvmCore-2328.6/lib/ExecutionEngine/JIT/JITEmitter.cpp Thu May 20 16:54:27 2010
@@ -376,7 +376,7 @@
     // in the JITResolver's ExternalFnToStubMap.
     StringMap<void *> ExtFnStubs;
 
-    DILocation PrevDLT;
+    DebugLoc PrevDL;
 
     /// Instance of the JIT
     JIT *TheJIT;
@@ -384,7 +384,7 @@
   public:
     JITEmitter(JIT &jit, JITMemoryManager *JMM, TargetMachine &TM)
       : SizeEstimate(0), Resolver(jit, *this), MMI(0), CurFn(0),
-        EmittedFunctions(this), PrevDLT(NULL), TheJIT(&jit) {
+        EmittedFunctions(this), TheJIT(&jit) {
       MemMgr = JMM ? JMM : JITMemoryManager::CreateDefaultMemManager();
       if (jit.getJITInfo().needsGOT()) {
         MemMgr->AllocateGOT();
@@ -856,17 +856,16 @@
   if (DL.isUnknown()) return;
   if (!BeforePrintingInsn) return;
 
-  // FIXME: This is horribly inefficient.
-  DILocation CurDLT(DL.getAsMDNode(CurFn->getContext()));
-  
-  if (CurDLT.getScope().getNode() != 0 && PrevDLT.getNode() !=CurDLT.getNode()){
+  const LLVMContext& Context = EmissionDetails.MF->getFunction()->getContext();
+
+  if (DL.getScope(Context) != 0 && PrevDL != DL) {
     JITEvent_EmittedFunctionDetails::LineStart NextLine;
     NextLine.Address = getCurrentPCValue();
     NextLine.Loc = DL;
     EmissionDetails.LineStarts.push_back(NextLine);
   }
 
-  PrevDLT = CurDLT;
+  PrevDL = DL;
 }
 
 static unsigned GetConstantPoolSizeInBytes(MachineConstantPool *MCP,
@@ -1249,6 +1248,9 @@
   TheJIT->NotifyFunctionEmitted(*F.getFunction(), FnStart, FnEnd-FnStart,
                                 EmissionDetails);
 
+  // Reset the previous debug location.
+  PrevDL = DebugLoc();
+
   DEBUG(dbgs() << "JIT: Finished CodeGen of [" << (void*)FnStart
         << "] Function: " << F.getFunction()->getName()
         << ": " << (FnEnd-FnStart) << " bytes of text, "





More information about the llvm-branch-commits mailing list