Fix building with latest LLVM head.
authorZoltan Varga <vargaz@gmail.com>
Fri, 6 Aug 2010 16:11:08 +0000 (18:11 +0200)
committerZoltan Varga <vargaz@gmail.com>
Fri, 6 Aug 2010 20:13:37 +0000 (22:13 +0200)
mono/mini/mini-llvm-cpp.cpp

index 4f94ba3e2c77003e6393daa399acb69feaf938a1..1df735df57e2d23c48da5fc2843dd061a9c8a7ee 100644 (file)
@@ -116,7 +116,9 @@ public:
 
 MonoJITMemoryManager::MonoJITMemoryManager ()
 {
+#if LLVM_MAJOR_VERSION == 2 && LLVM_MINOR_VERSION <= 7
        SizeRequired = true;
+#endif
        mm = JITMemoryManager::CreateDefaultMemManager ();
 }
 
@@ -152,6 +154,9 @@ unsigned char *
 MonoJITMemoryManager::startFunctionBody(const Function *F, 
                                        uintptr_t &ActualSize)
 {
+       // FIXME: This leaks memory
+       if (ActualSize == 0)
+               ActualSize = 128;
        return alloc_cb (wrap (F), ActualSize);
 }
   
@@ -189,7 +194,7 @@ unsigned char*
 MonoJITMemoryManager::startExceptionTable(const Function* F,
                                          uintptr_t &ActualSize)
 {
-       return alloc_cb (wrap (F), ActualSize);
+       return startFunctionBody(F, ActualSize);
 }
   
 void