[RFC] Add llvm.ldexp and llvm.frexp intrinsics

I’ve posted patches to add 2 new math intrinsics:

https://reviews.llvm.org/D14327

https://reviews.llvm.org/D149715

Frexp is a weird case because I’ve chosen to use a struct return. As a poor excuse for return values, this limits the applicability of fast math flags. Alternatively a pair of intrinsics could be introduced for the two pieces of the result and merged in codegen as necessary, similar to div/rem.