[FPEnv] Rust/Go/Swift/Flang/other llvm IRBuilder needs?

We are certainly interested. I've been following along all the
discussions about constrained math, FENV_ACCESS, etc. and it all seems
quite reasonable to me.

We are needing to handle the IEEE settings we have on our Alpha and
Itanium targets. We have various C and Fortran command line settings like:

CC

  /IEEE_MODE

        /IEEE_MODE=option
        /IEEE_MODE=DENORM_RESULTS (D)

     Selects the IEEE floating-point mode to be used.

     Options:

      FAST During program execution, only finite values (no
                        infinities, NaNs, or denorms) are created.
                        Exceptional conditions, such as floating point
                        overflow and divide by zero, are fatal.

      UNDERFLOW_TO_ZERO Generate infinities and NaNs. Flush
                        denormalized results and underflow to zero
                        without exceptions.

      DENORM_RESULTS Same as UNDERFLOW_TO_ZERO, except that denorms
                        are generated. This is the default for I64
                        systems.

      INEXACT Same as DENORM_RESULTS, except that inexact
                        values are trapped. This is the slowest mode.

CC

  /ROUNDING_MODE

        /ROUNDING_MODE=option
        /ROUNDING_MODE=NEAREST (D)

     For /FLOAT=IEEE_MODE, the /ROUNDING_MODE qualifier lets you select
     one of the following IEEE rounding modes:

      o NEAREST (default)

      o DYNAMIC

      o MINUS_INFINITY

      o CHOPPED

     For /FLOAT=G_FLOAT or /FLOAT=D_FLOAT, rounding defaults to
     /ROUNDING_MODE=NEAREST, with no other choice of rounding mode.