-
Notifications
You must be signed in to change notification settings - Fork 58
LLVM ExecutionEngine no longer supported by rustc #86
Comments
Are there any possible venues for going forward given this situation? |
Interpreting MIR output may be an option. There's a project that does that: https://github.com/solson/miri I don't know how well that project functions or how effective that method is. |
I've taken a quick look at |
I've also taken a look; I've tried to focus on known limitations, which seem enumerated quite thoroughly in the miri-report.pdf (having which is already quite a good sign for the project's quality). Then I tried to skim over the commits since ~Apr 15 (date of the report) to see what was done since then. Summarizing my understanding of what's currently missing:
From what I noticed, the following places can also be used to see what's still known as not working correctly:
With all that said... notably, apart from tons of stuff that reportedly is working correctly:
|
Yes, there are limitations. FFI and intrinsics struck me as two of the biggest hurdles for MIR interpretation. C FFI could be done with existing external libraries. Rust FFI (should one wish to load a compiled crate) would be a more difficult task. |
There are
|
I updated my own mini-REPL to work with the latest nightly: https://github.com/willcrichton/lia/blob/master/lia-jit/src/lib.rs It uses the ExecutionEngine from llvm-rs. |
Does the |
@hastebrot: No. It is merely a high-level API on top of the now removed LLVM API. |
@murarth What's the status of making |
you may be interested in: https://github.com/google/evcxr I'm not sure if rusti is looking at that for inspiration, would be nice if it did. As good as evcxr is, rusti's goals are still valid |
@Type1J Not actively being pursued by me. This project is effectively dead, for the foreseeable future. Building a new method of in-memory executing maybe be possible (perhaps using libffi and rustc MIR/MIRI), but it would be a significant undertaking. I'm currently working on other projects and, unfortunately, this isn't a priority for me right now. |
@murarth it might be good to link to this thread in the README. It's not clear it's a dead project besides the 2016 flag. |
The API was removed: rust-lang/rust#35174
The text was updated successfully, but these errors were encountered: