1ae83135af
This makes encode_alu() take Option<&Src> and call ALUSrc::from_src() itself. This is necessary for handling uniform ALU correctly as we can't actually separate Reg from UReg without knowing what kind of ALU op we are. While we're here, take an Option<&Dst> instead of Option<Dst>. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29591>