<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/126330>126330</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[SLP] Polyhedron/fatigue2 16% slowdown after 88e7b8b
</td>
</tr>
<tr>
<th>Labels</th>
<td>
regression,
performance,
llvm:SLPVectorizer
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
alexey-bataev
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
vzakhari
</td>
</tr>
</table>
<pre>
Reverting https://github.com/llvm/llvm-project/commit/88e7b8b81c061113399637f936937ffaf5a9bc08 commit brings performance back.
It is reproducible on AMD EPYC 9684X: time changes from 36.8 seconds to 42.7 seconds.
The following lines of code slowed down by more than twice:
```
950 deviatoric_stress_tensor(:,:) = stress_tensor(:,:)
951 deviatoric_stress_tensor(1,1) = stress_tensor(1,1) - hydrostatic_stress
952 deviatoric_stress_tensor(2,2) = stress_tensor(2,2) - hydrostatic_stress
953 deviatoric_stress_tensor(3,3) = stress_tensor(3,3) - hydrostatic_stress
954 !
955 damaged_dev_stress_tensor(:,:) = deviatoric_stress_tensor(:,:)/(1.0_LONGreal - &
956 crack_parameter * damage)
957 !
958 ! compute the yield function
959 !
960 equivalent_stress = sqrt(1.5_LONGreal* sum((damaged_dev_stress_tensor(:,:) &
961 - back_stress_tensor(:,:))**2))
```
[default.log.gz](https://github.com/user-attachments/files/18716167/default.log.gz) - before/after SLP with the current Flang compiler
[revert.log.gz](https://github.com/user-attachments/files/18716168/revert.log.gz) - before/after SLP with the reverted commit
Reproducer command: `opt -mcpu=znver4 -print-after=slp-vectorizer --passes=slp-vectorizer`
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJysVV1vpDYX_jWemyNGxgbGXHDBZt55VSlto01VtVeRMQdwYzBrm0knv77iI5PdVkm2UhECg-3nPOfD55He63ZALEj6iTAmDf6Jl6iSQeKZMEbS405OobOuOD_Lx046vatsfSk-4xld0EMLXQijJ7wk7ETYqdWhm6q9sj1hJ2POL69odPYPVIGwk7J9r-eBEHioRCViRbM4jjnP84wfmpxnOT80jWxSmVeKClh3QOX00HoY0TXW9XJQCJVUj3tCS0LLHwJoDw5HZ-tJ6cog2AHKH4_wv7vfbyDPRPIb4SUE3SOoTg4temic7YFnewEelR1qD8FCwvaHl-8N_JcOobHG2KfZZaMH9GAbULZG8MY-YQ21fRqgukBvHULo5ADhSSucI0NLktHtpiXkKYUaz1oG67R68MGh9w8BB28dYWKJ5c3yzIHwI7y3YMWL38OLCbuJ38K6TkbQXWpnfZDhirGCs_fAGWE37C3w6-Tb4BzW6x0TnLAb_paJ6-TbJhIgLF6HKdSyly3WDzWePw78dyZpqXwR7-nD7c8__d-hNBBtbgFh2Wo6A-WkenwYpZM9BnRAWLnRuebx8EpVzMMXFGX7cQpzWSFcNJoammlQQdthXZxf92V024JfJn2WBoewcV_D98WFhWt65TrT8FM_-8TEd4fnq-vFxSyGaDmQHwQrJ6wkrGTbx7eHY77TTzU2cjJhb2y7b59JeiRMvNNnJo8ukiFI1fU4BE_YqdEG53csDnEWZwfCTn8DXWqmwsY6JOwkmzkl97d38KRDtwRaTc7hEOBk5NAuKdAG3ZWjWzrgf0dREHb6FvNDhutyrLcGuVL7vHVAdMtvOdRz1yMZtWOAqFfjRPjxeTijSyAanR5CtEATfvRmjM6o5op_RgdRNErv0f9jhmR0Vxe8znkud1jEBy7yQ8qSeNcVokoOWUZl0iSspljxJBdpIiUiy0TOcKcLRllKGRWUJjSJ9_xQCRnzLEtUXiWiJgnFXmqzn3Vjb127095PWMQs45zujKzQ-E2vHLZzqc0Hgc3dhjD2lTxc_y1CxMv727tfX51Y1c0VizxVU-tJQo32wb8aDjqYRRrvb-9IeoQ7ay4d1m42d2pk0O2EDOKMsHSRgUUD1kRt4rabnCn-tUQuDi-1sfp8LthfAQAA__-u-WXF">