<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/77445>77445</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[flang][x86] transform mulss to xorps for sign(1.,x) * sign(1.,y)
</td>
</tr>
<tr>
<th>Labels</th>
<td>
flang
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
vfdff
</td>
</tr>
</table>
<pre>
* test: https://gcc.godbolt.org/z/zcxKG63E3
```
integer function test_sign(x, y)
implicit none
real, intent(in) :: x, y
print *, sign(1.,x) * sign(1.,y)
end function test_sign
```
* gfortran: **xorps** xmm0, xmm1 (line 26)
* flang-new: **mulss** %xmm1, %xmm0 (line 28)
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyMUsGOnDAM_RpziRYFJ8Bw4MDulB76EVWAhEkVklEStmy_vkpmVNRqD5UgGOv5-dl5IgS9Wil7qF-hvhZijzfn-3e1KFVMbvnoAQcSZYjABnKL8R6ADYAj4LjOc7m6ZXImls6vgOOv9M7Ht68N-8KAXoEO0NDnk3-1jXKVnqjdzlE7m6m_Jw2AlwPwjXwAdg8sIYTo7W70rCOxzsoz7aUwCZzobAS8aAvYkSSNDeTJ80DfvbaRAA4p-WxUlYBvR67A4a_k2V3a5TOVnw31PHEgq3I-emGTitxyOJy_h0dICDm2jSYdx7ZVBPBitJUEmz9NE0oZYdcXK3-eJNtuwkkCWKf6xPMI6Ul1OanyWSw9WzrWiUL2VUt523V1Q4tbPy31JDmbuORKMUb5gm01T0vViHqZuSh0jxQ5rWhXVdhQWiq5CM6nlgmKCjsGnMpNaFMa874lAxQ6hF32bct5XRgxSROyrRDzSICYHOb7hH-Z9jUAp0aHGE6GqKPJXnxU1FeoX49LA_WVpLUG5fxG8jZIdCTvlijn_-9ei92b_h8L63jbp3J2G-CYVDw_L3fvfsg5Ao55qAA45rl-BwAA__8gZezs">