Hi, Duncan> it is not in llvm-2.8, it will not even be in llvm-2.9. This is why you > couldn't find it :) Some patches went into the subversion repository > lately if you are interested.You mentioned "the plan was to solve this with the new MC-JIT". You mean that MC-JIT can handle inline assembly as an input, and generate target binary code? Regards, chenwj -- Wei-Ren Chen (陳韋任) Parallel Processing Lab, Institute of Information Science, Academia Sinica, Taiwan (R.O.C.) Tel:886-2-2788-3799 #1667
Hi chenwj,>> it is not in llvm-2.8, it will not even be in llvm-2.9. This is why you >> couldn't find it :) Some patches went into the subversion repository >> lately if you are interested. > > You mentioned "the plan was to solve this with the new MC-JIT". You > mean that MC-JIT can handle inline assembly as an input, and generate > target binary code?MC allows you to turn LLVM IR into object code or assembler. It also enables you to turn assembler into object code. Consider now how a JIT works. When a function is to be run, the LLVM IR for it needs to be turned into object code in memory; the object code will then be executed by the processor. I hope it is clear that MC could be used to generate the object code in memory, rather than the hand-crafted assembly snippets currently used. Now consider what is required to have the JIT execute inline assembler. Essentially an inline asm is a string containing assembly code. In order for the JIT to execute it it needs to convert that assembly code into object code in memory. Thus the JIT needs to have a built in assembler. Currently the JIT does not have a built in assembler (though in the X86 case it does have an assembler that can only handle a few special cases). Since MC can also act as an assembler, it could be used to turn inline asm into object code. Ciao, Duncan.
Hi, I see. Thanks. :-) One more question, how mature MC-JIT is? Can it be used on x86 or other architecture? Regards, chenwj -- Wei-Ren Chen (陳韋任) Parallel Processing Lab, Institute of Information Science, Academia Sinica, Taiwan (R.O.C.) Tel:886-2-2788-3799 #1667