Hi, I am trying to parallize the lli interpreter (code: http://pastebin.com/6iuHNH3Q). I am using ubuntu 12.04 with llvm version 3.1. Each thread uses a seperate LLVMContext, however the interpreter continues to crash. $ clang -S -emit-llvm test.c && parallel_lli test.s Error msg: ..../include/llvm/Support/Mutex.h:116: bool llvm::sys::SmartMutex<true>::release(): Assertion `((recursive && acquired) || (acquired == 1)) && "Lock not acquired before release!"' failed.""))) What am I doing wrong? Thank you. Diff to original tools/lli/lli.cpp and test.c (simple hello world) attached. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130330/2348817f/attachment.html> -------------- next part -------------- A non-text attachment was scrubbed... Name: lli.diff Type: application/octet-stream Size: 3273 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130330/2348817f/attachment.obj> -------------- next part -------------- A non-text attachment was scrubbed... Name: test.c Type: text/x-csrc Size: 98 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130330/2348817f/attachment.c>