I have compiled lli to run on qemu-system-mips and got the error "Illegal instruction" as follows.<div><div><i>ecl$ ./llis mipshello.bc</i></div><div><i>0       0x7f836770  + 2139318128</i></div><div><i>1  lli 0x01879918</i></div>
<div><i>Stack dump:</i></div><div><i>0.      Program arguments: ./lli mipshello.bc</i></div><div><i><b>Illegal instruction</b></i></div><div><i><br></i></div><div>I used gdb to trace the execution and saw that in JIT::runFunction() (JIT.cpp), after compiling the "main" function, the JIT failed to execute it</div>
<div><div><i>      else if (BitWidth <= 32)</i></div><div><i>        rv.IntVal = APInt(BitWidth, ((int(*)())(intptr_t)FPtr)());</i></div></div><div>Seems like the code emitter produced a wrong binary for MIPS? It's weird because the release notes state that the old-style JIT for MIPS is complete. </div>
<div><br></div><div>I compiled hello.c using this command:</div><div>$ clang -emit-llvm -c -o mipshello.bc -ccc-host-triple mips-unkown-linux -ccc-clang-archs mips hello.c</div><div><br></div><div>Did I do anything wrong or miss something? </div>
<div>Is there any guide or example for running JIT on MIPS?</div><div>Thanks,</div><br><div class="gmail_quote">On Tue, May 1, 2012 at 12:53 PM, ³¯­³¥ô <span dir="ltr"><<a href="mailto:chenwj@iis.sinica.edu.tw" target="_blank">chenwj@iis.sinica.edu.tw</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On Tue, May 01, 2012 at 11:11:44AM +0900, Toan Mai wrote:<br>
> Could you tell me the current status of MIPS JIT?<br>
<br>
</div>  According to [1], the support for "old-style" JIT is complete.<br>
You can give it a shot.<br>
<div class="im"><br>
> I'm afraid it's not straightforward to fix it, Chen.<br>
<br>
</div>  Well, no pain no gain. ;)<br>
<br>
Regards,<br>
chenwj<br>
<br>
[1] <a href="http://llvm.org/releases/3.0/docs/ReleaseNotes.html#whatsnew" target="_blank">http://llvm.org/releases/3.0/docs/ReleaseNotes.html#whatsnew</a><br>
<div class="HOEnZb"><div class="h5"><br>
--<br>
Wei-Ren Chen (³¯­³¥ô)<br>
Computer Systems Lab, Institute of Information Science,<br>
Academia Sinica, Taiwan (R.O.C.)<br>
Tel:886-2-2788-3799 #1667<br>
Homepage: <a href="http://people.cs.nctu.edu.tw/~chenwj" target="_blank">http://people.cs.nctu.edu.tw/~chenwj</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br>Toan Mai<br>School of ECE, UNIST, Korea<br><a href="http://ecl.unist.ac.kr/%7Etmai" target="_blank">http://ecl.unist.ac.kr/~tmai</a><br><br>
</div>