I believe the biggest impediment to getting maximally permissive compile-time execution was resolved here: https://github.com/rust-lang/rust/pull/46882
MIRI is a MIR interpreter, so the idea, if I understand correctly, is to have the compiler turn Rust code into MIR, then run anything that should be run at compile time in MIRI.
I say “maximally permissive” rather than “arbitrary” because there are still things that can’t/shouldn’t be done at compile time; these are under discussion here (and maybe elsewhere).