I know their are various tools that can take LLVM IR Bitcode and JIT
it and execute it.
Is there anything that can do the equivalent but at the LL\VM IR Bitcode level?
So, that for example, I could set some initial conditions, and then
single step through the IR Bitcode function, and pause it and print
out any of the SSA values that I wish?
I wanted to do something like this last year and found llvm-dbas, a hack
of the LLVM assembler on GitHub. It simply adds line numbers to LLVM IR.
This way you can do the stepping, but no inspection. I remember people
asking for this from time to time, but never saw a real solution. Would
be interesting though!
Just saying since the backend will be doing other transforms this is not exactly what James wants. In order to achieve what he needs we need a LLVM BC interpreter which simply doesn’t exist yet, and probably will never be.