[llvm-commits] [llvm] r79870 - /llvm/trunk/lib/ExecutionEngine/ExecutionEngine.cpp

Chris Lattner sabre at nondot.org
Sun Aug 23 15:49:13 PDT 2009


Author: lattner
Date: Sun Aug 23 17:49:13 2009
New Revision: 79870

URL: http://llvm.org/viewvc/llvm-project?rev=79870&view=rev
Log:
remove use of alloca.h

Modified:
    llvm/trunk/lib/ExecutionEngine/ExecutionEngine.cpp

Modified: llvm/trunk/lib/ExecutionEngine/ExecutionEngine.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/ExecutionEngine/ExecutionEngine.cpp?rev=79870&r1=79869&r2=79870&view=diff

==============================================================================
--- llvm/trunk/lib/ExecutionEngine/ExecutionEngine.cpp (original)
+++ llvm/trunk/lib/ExecutionEngine/ExecutionEngine.cpp Sun Aug 23 17:49:13 2009
@@ -19,9 +19,9 @@
 #include "llvm/DerivedTypes.h"
 #include "llvm/Module.h"
 #include "llvm/ModuleProvider.h"
-#include "llvm/ADT/Statistic.h"
-#include "llvm/Config/alloca.h"
 #include "llvm/ExecutionEngine/GenericValue.h"
+#include "llvm/ADT/Statistic.h"
+#include "llvm/ADT/SmallVector.h"
 #include "llvm/Support/Debug.h"
 #include "llvm/Support/ErrorHandling.h"
 #include "llvm/Support/MutexGuard.h"
@@ -859,9 +859,11 @@
     // Host and target are different endian - reverse copy the stored
     // bytes into a buffer, and load from that.
     uint8_t *Src = (uint8_t*)Ptr;
-    uint8_t *Buf = (uint8_t*)alloca(LoadBytes);
-    std::reverse_copy(Src, Src + LoadBytes, Buf);
-    Ptr = (GenericValue*)Buf;
+    
+    SmallVector<uint8_t, 20> Buf;
+    Buf.resize(LoadBytes+1);
+    std::reverse_copy(Src, Src + LoadBytes, Buf.data());
+    Ptr = (GenericValue*)Buf.data();
   }
 
   switch (Ty->getTypeID()) {





More information about the llvm-commits mailing list