On 5/7/2012 12:21 AM, Bendersky, Eli wrote: <snip>> > MCJIT is functional in trunk (and the 3.1 branch). While it doesn't include all the features of the old JIT quite yet, it's complete enough to pass all of JIT's execution tests on Linux and Mac OS X (no Windows yet). As for directions on how to enable it, follow the path of the "use-mcjit" flag passed to lli (in tools/lli/lli.cpp). >I tried to load my bitcode library using lli but it gave a new error now:> $lli -entry-function="ISimEngine_GetVersion" -use-mcjit libengine.bc > LLVM ERROR: Inline asm not supported by this streamer because we don't have an asm parser for this targetI also tried other variations of the call with the same result:> $lli -entry-function="ISimEngine_GetVersion" -use-mcjit -mattr=+avx -mcpu=corei7-avx libengine.bcI updated my program looking at lli.cpp and it also gave the same error as above. The info from lli --version is below:> $lli --version > LLVM (http://llvm.org/): > LLVM version 3.2svn > Optimized build with assertions. > Built May 7 2012 (10:54:43). > Default target: x86_64-unknown-linux-gnu > Host CPU: corei7-avxAny pointers? I saw another thread "Trouble using the MCJIT: "Target does not support MC emission" error" but that didnt seem to have positive ending. TIA, Ashok
> On 5/7/2012 12:21 AM, Bendersky, Eli wrote: > <snip> > > > > MCJIT is functional in trunk (and the 3.1 branch). While it doesn't include all > the features of the old JIT quite yet, it's complete enough to pass all of JIT's > execution tests on Linux and Mac OS X (no Windows yet). As for directions > on how to enable it, follow the path of the "use-mcjit" flag passed to lli (in > tools/lli/lli.cpp). > > > > I tried to load my bitcode library using lli but it gave a new error now: > > > $lli -entry-function="ISimEngine_GetVersion" -use-mcjit libengine.bc > > LLVM ERROR: Inline asm not supported by this streamer because we don't > > have an asm parser for this target > > I also tried other variations of the call with the same result: > > $lli -entry-function="ISimEngine_GetVersion" -use-mcjit -mattr=+avx > > -mcpu=corei7-avx libengine.bc > > I updated my program looking at lli.cpp and it also gave the same error as > above. The info from lli --version is below: > > > $lli --version > > LLVM (http://llvm.org/): > > LLVM version 3.2svn > > Optimized build with assertions. > > Built May 7 2012 (10:54:43). > > Default target: x86_64-unknown-linux-gnu > > Host CPU: corei7-avx > > Any pointers? I saw another thread "Trouble using the MCJIT: "Target does > not support MC emission" error" but that didnt seem to have positive > ending. >Sorry, I'm not familiar with these parts (ASM parsing in MC). Perhaps someone else could help here. I wonder, though, did you manage to get some code running without inline ASM? Eli --------------------------------------------------------------------- Intel Israel (74) Limited This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies.
On 5/7/2012 10:17 PM, Bendersky, Eli wrote: <snip>>>> $lli -entry-function="ISimEngine_GetVersion" -use-mcjit libengine.bc >>> LLVM ERROR: Inline asm not supported by this streamer because we don't >>> have an asm parser for this target >> >> I also tried other variations of the call with the same result: >>> $lli -entry-function="ISimEngine_GetVersion" -use-mcjit -mattr=+avx >>> -mcpu=corei7-avx libengine.bc >> >> I updated my program looking at lli.cpp and it also gave the same error as >> above. The info from lli --version is below: >> >>> $lli --version >>> LLVM (http://llvm.org/): >>> LLVM version 3.2svn >>> Optimized build with assertions. >>> Built May 7 2012 (10:54:43). >>> Default target: x86_64-unknown-linux-gnu >>> Host CPU: corei7-avx >> >> Any pointers? I saw another thread "Trouble using the MCJIT: "Target does >> not support MC emission" error" but that didnt seem to have positive >> ending. >> > > Sorry, I'm not familiar with these parts (ASM parsing in MC). Perhaps someone else could help here. I wonder, though, did you manage to get some code running without inline ASM? > EliI tried the attached program, compiled with clang and used lli to run it: clang -cc1 -O0 -g -emit-llvm test.c lli -use-mcjit test.ll The lli prints out what looks like binary data. If I remove the inline asm from the program, it works fine. TIA, Ashok -------------- next part -------------- //#include <stdio.h> /* void f(void) { } */ int main(void) { int foo = 10, bar = 15; __asm__ __volatile__("addl %%ebx,%%eax" :"=a"(foo) :"a"(foo), "b"(bar) ); //printf("foo+bar=%d\n", foo); return 0; }