Hello,> As for the state of the MSIL backend of LLVM, I don't think it's for > production use yet. Assemblies have lots of information in them and > maintaining them during the MSIL -> LLVM -> MSIL translations should be > the hard part.This should be pretty hard. MSIL is definitely much more high level than LLVM, that's why significant portion of information will be lost during MSIL => LLVM (=lowered to vmkit-specific stuff), so I doubt that sane back reconstruction will ever be possible (consider e.g. callvirt instruction as an example). -- With best regards, Anton Korobeynikov Faculty of Mathematics and Mechanics, Saint Petersburg State University
On Sat, May 16, 2009 at 5:09 PM, Anton Korobeynikov <anton at korobeynikov.info> wrote:> Hello, > > > As for the state of the MSIL backend of LLVM, I don't think it's for > > production use yet. Assemblies have lots of information in them and > > maintaining them during the MSIL -> LLVM -> MSIL translations should be > > the hard part. > This should be pretty hard. MSIL is definitely much more high level > than LLVM, that's why significant portion of information will be lost > during MSIL => LLVM (=lowered to vmkit-specific stuff), so I doubt > that sane back reconstruction will ever be possible (consider e.g. > callvirt instruction as an example).OK. That is quite unfortunate. Does that mean that the existing LLVM MSIL backend does not work for complex LLVM programs? -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090516/7039d5ae/attachment.html>
Hello,> Does that mean that the existing LLVM MSIL backend does not work for complex > LLVM programs?No (modulo bugs). It should work, however it will "map" to some (C-like) subset of MSIL. -- With best regards, Anton Korobeynikov Faculty of Mathematics and Mechanics, Saint Petersburg State University