This patch is an alternative to D66725. It gates the DAG combine folding of `fp_extend`/`fp_round` "casts" of an fcopysign sign operand when doing so would produce an operand value with an illegal type. (The folding is still done when the original sign value already had an illegal type, as in that case we expect the fcopysign to be expanded and we avoid libcalls for the value extension/rounding).
For clarity, the patch includes the RISC-V tests that motivated the DAGCombiner changes, although those can be committed separately.