AMDGPU: Force sign operand of f64 fcopysign to f32
The fcopysign DAG operation, unlike the IR one, allows different types for the sign and magnitude. We can reduce the bitwidth of the high operand since only the sign bit matters. The default combine only introduces mixed fcopysign operand types from fpext/fptrunc. We effectively do this already during selection, but doing it earlier in the combiner should expose new combine opportunities (e.g. the existing tests now eliminate the load of the low half of the double). Unfortunately this isn't enough to handle the case I'm interested in just yet.
Loading
Please sign in to comment