[llvm-commits] [llvm] r80780 - /llvm/trunk/lib/VMCore/Type.cpp

Torok Edwin edwintorok at gmail.com
Wed Sep 2 05:23:06 PDT 2009


Author: edwin
Date: Wed Sep  2 07:23:05 2009
New Revision: 80780

URL: http://llvm.org/viewvc/llvm-project?rev=80780&view=rev
Log:
Opaque types didn't work if llvm_is_multithreaded().
AlwaysOpaqueTy is always NULL at this point, and it causes an assertion failure.
Fix it by using the just constructed tmp instead.

Modified:
    llvm/trunk/lib/VMCore/Type.cpp

Modified: llvm/trunk/lib/VMCore/Type.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/VMCore/Type.cpp?rev=80780&r1=80779&r2=80780&view=diff

==============================================================================
--- llvm/trunk/lib/VMCore/Type.cpp (original)
+++ llvm/trunk/lib/VMCore/Type.cpp Wed Sep  2 07:23:05 2009
@@ -492,7 +492,7 @@
         tmp = AlwaysOpaqueTy;
         if (!tmp) {
           tmp = OpaqueType::get(getContext());
-          PATypeHolder* tmp2 = new PATypeHolder(AlwaysOpaqueTy);
+          PATypeHolder* tmp2 = new PATypeHolder(tmp);
           sys::MemoryFence();
           AlwaysOpaqueTy = tmp;
           Holder = tmp2;





More information about the llvm-commits mailing list