Currently a pure call may throw exceptions, in which case it's not simplified.
RVM-502 enables dead code elimination of pure calls, except this fails as calls aren't dead code eliminated for being PEI. We should have 2 types of pure annotation, one for pure methods guaranteed not to throw exceptions (these may be safely dead code eliminated) and one for pure methods that are pure except when they throw exceptions.