> So. Why do you want to use TCI instead of a native TCG backend? Frankly speaking, personally I just have a strange experiment on porting QEMU to JavaScript. :) I used the TCI bytecode as some intermediate patchable form for rarely executing BBs and for (re)generating asm.js from it when required. I used a Python script to generate wrappers with exactly 10 arguments around helper functions. In fact, it may be worth for me to create WebAssembly TCG backend and interpret **that** bytecode if required.
TCI may still be useful for someone else running QEMU on unsupported host, though. 2018-03-03 17:13 GMT+03:00 Richard Henderson <r...@twiddle.net>: > On 03/03/2018 06:07 AM, Anatoly Trosinenko wrote: > > Can rewriting TCI in such a way that every operation is aligned at 4- or > even > > 8-byte boundary fix the situation or are there some more serious > problems? > > With the current TCI, there are also problems with calls to helper > functions. > The only portable way to do this is to use a library such as libffi. > > I once rewrote TCI completely in order to address both problems, but that > only > brought questions as to why TCI is useful at all. > > So. Why do you want to use TCI instead of a native TCG backend? > > > r~ > -- Best regards, Anatoly