e88070b1da
Float controls are emitted as function attributes on the entrypoint. These function attributes are not the standard build-in LLVM kind, but are strings, which the DXIL backend didn't know how to emit. So, this change adds string attribute support and uses it for fp32 ftz/preserve. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20919>