Hi Anton, I've added the llvmdev list, since the issues you're seeing are coming from the backend, which is more their side. On 17 September 2014 08:43, Anton Smirnov <dev at antonsmirnov.name> wrote:> i've changed lli arguments to the next (instead of default): > > return llvm_interpret( > InputFile, > std::vector<std::string>(), > false, // ForceInterpreter > false, // UseMCJIT > [...] > Now i'm having: > > Unhandled instruction encoding format! > UNREACHABLE executed at > /Users/asmirnov/Documents/dev/src/llvm_34_ios/lib/Target/ARM/ARMCodeEmitter.cpp:547!This one at least is understandable. Your options imply (I couldn't find any "llvm_interpret" function, so there's some guesswork) that you're using the old JIT. That's been discouraged for a while, and it's been removed completely now in trunk. It's entirely possible it could randomly fall over (not all instructions are supported), and probably not even worth worrying about why. I'd just flip that "UseMCJIT" option. The interpreter failure you were seeing earlier is harder to explain (there are various options), but if we're lucky it won't happen in MCJIT mode. Then we don't have to worry about that one either. Cheers. Tim.
Hi, Tim. I've used Clang 3.4 final release and now i'm going to test it with 3.5 release (since i've read about arm64 improvements). I will report my results. BTW, is it possible to get smth like "hello world" output even with apple restrictions? Regards, Anton. 2014-09-17 18:42 GMT+06:00 Tim Northover <t.p.northover at gmail.com>:> Hi Anton, > > I've added the llvmdev list, since the issues you're seeing are coming > from the backend, which is more their side. > > On 17 September 2014 08:43, Anton Smirnov <dev at antonsmirnov.name> wrote: > > i've changed lli arguments to the next (instead of default): > > > > return llvm_interpret( > > InputFile, > > std::vector<std::string>(), > > false, // ForceInterpreter > > false, // UseMCJIT > > [...] > > Now i'm having: > > > > Unhandled instruction encoding format! > > UNREACHABLE executed at > > > /Users/asmirnov/Documents/dev/src/llvm_34_ios/lib/Target/ARM/ARMCodeEmitter.cpp:547! > > This one at least is understandable. Your options imply (I couldn't > find any "llvm_interpret" function, so there's some guesswork) that > you're using the old JIT. That's been discouraged for a while, and > it's been removed completely now in trunk. > > It's entirely possible it could randomly fall over (not all > instructions are supported), and probably not even worth worrying > about why. I'd just flip that "UseMCJIT" option. > > The interpreter failure you were seeing earlier is harder to explain > (there are various options), but if we're lucky it won't happen in > MCJIT mode. Then we don't have to worry about that one either. > > Cheers. > > Tim. >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140917/eff01631/attachment.html>
Both Clang/LLVM 3.4 -> Clang/LLVM 3.5 And i will also try using MCJIT. 2014-09-17 18:56 GMT+06:00 Anton Smirnov <dev at antonsmirnov.name>:> Hi, Tim. > > I've used Clang 3.4 final release and now i'm going to test it with 3.5 > release (since i've read about arm64 improvements). > I will report my results. > > BTW, is it possible to get smth like "hello world" output even with apple > restrictions? > > Regards, Anton. > > 2014-09-17 18:42 GMT+06:00 Tim Northover <t.p.northover at gmail.com>: > >> Hi Anton, >> >> I've added the llvmdev list, since the issues you're seeing are coming >> from the backend, which is more their side. >> >> On 17 September 2014 08:43, Anton Smirnov <dev at antonsmirnov.name> wrote: >> > i've changed lli arguments to the next (instead of default): >> > >> > return llvm_interpret( >> > InputFile, >> > std::vector<std::string>(), >> > false, // ForceInterpreter >> > false, // UseMCJIT >> > [...] >> > Now i'm having: >> > >> > Unhandled instruction encoding format! >> > UNREACHABLE executed at >> > >> /Users/asmirnov/Documents/dev/src/llvm_34_ios/lib/Target/ARM/ARMCodeEmitter.cpp:547! >> >> This one at least is understandable. Your options imply (I couldn't >> find any "llvm_interpret" function, so there's some guesswork) that >> you're using the old JIT. That's been discouraged for a while, and >> it's been removed completely now in trunk. >> >> It's entirely possible it could randomly fall over (not all >> instructions are supported), and probably not even worth worrying >> about why. I'd just flip that "UseMCJIT" option. >> >> The interpreter failure you were seeing earlier is harder to explain >> (there are various options), but if we're lucky it won't happen in >> MCJIT mode. Then we don't have to worry about that one either. >> >> Cheers. >> >> Tim. >> > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140917/2e3c456f/attachment.html>