There is a substantial risk there unless you can hit all the edge cases and error conditions when profiling. Even a good fuzzer can miss a very rare state. Then when you hit it in real use there's no code to handle it!
Profile-based optimization and JITting is plausible because the corner cases are still there, just not optimized.