This is the front-end counterpart to D8982.
The option parsing implementation is based on maintaining compatibility with gcc; gcc documentation for this flag:
https://gcc.gnu.org/onlinedocs/gcc-4.9.2/gcc/i386-and-x86-64-Options.html#index-mrecip_003dopt-1627
Note that PowerPC could have its own -mrecip options if further compatibility is desired:
https://gcc.gnu.org/onlinedocs/gcc-4.9.2/gcc/RS_002f6000-and-PowerPC-Options.html#index-mrecip-2289
With this flag in place, customers will have fine-grain control over reciprocal estimate codegen, so we may choose to align with gcc's optimization behavior for that. Eg, LLVM could generate reciprocal square root by default when -ffast-math is on. This was requested in PR21385 ( https://llvm.org/bugs/show_bug.cgi?id=21385 ).