Add LLVM ExecutionEngine API
Perform compiler state reset in phase_1
Fix #19734 (ICE)
Add test for issue #19734
auto merge of #19750 : murarth/rust/rusti-support, r=brson

Makes a couple changes that support the implementation of a REPL:

* Implementation of wrapper code for LLVM ExecutionEngine API
* Fixing a change I made earlier to reset compiler state in `phase_1_[...]`
  instead of `compile_input` as the latter is not used in a REPL
auto merge of #19778 : aochagavia/rust/ice, r=alexcrichton

Fixes #19734
Merge remote-tracking branch 'upstream/master'