Perhaps I've underestimated LLVM. I didn't think it would be able to infer that find() would always return None following a failure.

I'll put together a benchmark tomorrow evening and share my results.