<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/121125>121125</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [Flang] Performance issues in assignments
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            performance,
            flang
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          yus3710-fj
      </td>
    </tr>
</table>

<pre>
    [The measurement](https://discourse.llvm.org/t/optimization-of-complex-number-division/83468/1) of the performance of 627.cam4_s shows that assignments for non-contiguous arrays spends time.  
I checked the performance of some kinds of assignments and found issues. This issue intends to track the status of those issues. Any help is welcome.

## Issue list
 - [ ] [Flang] Assignments for local non-contiguous allocatable arrays are slower than GFortran
 - [ ] [Flang] Assignments for arrays of a derived type are slower than GFortran
 - [ ] [Flang] Assignments for overlapping arrays of a derived type with FORALL/WHERE are slower than GFortran
 - [ ] [Flang] Assignments for integer arrays with FORALL/WHERE are slower than GFortran
 - [ ] [Flang] Defined assignments are slower than GFortran
 - [ ] [Flang] Assignments for complex variables are slower than GFortran
 - [ ] [Flang] Assignments for variables of a derived type are slower than GFortran
 - [ ] [Flang] Pointer assignments for scalar pointers are slower than GFortran
 - [ ] [Flang] Pointer assignments for array pointers are slower than GFortran
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyslF-vozYQxT-NeRmBYPiT5IGHbLO0K63UarVSHysDA3ivsZHHJE0_feVwe__09qpVNxKSwZZ_x3MGH8msRkNUi_KDKE-RXP1kXX1dOd9laTx8i1rbX8Pq14lgJsmro5mMF-VJ4H7yfmGRHwU2AptecWdXx5RofZ4T60aBjRfY2MWrWf0hvbImtkPc2XnR9Hts1rklF_fqrFhZI7DZ50W1F9hkAg9gB_ATwUJusG6WpqMwVeEu6eRc_MbAk70w-El62AoJJ2MYrANjTdxZ49W42pVBOievDLyQ6Rm8mikBEOnxE3QTdQ_U_5MS25ngQYUddnilIE0Pg11ND4p5JU7g66R4-wBl_KZiwTvZPdzQ7KVfeSvJMj3tO5orTKQXUAwX0p2dKRHpMTyYC8zh042pFXuRHiEGUX4AUZ7C2GhpxvB-_Fvx2nZSv7FAh2kvW01_2SEdAWt7IRdMNPBjY5130vx3pUdQsAd6cuocnLwudAe0PZPTclmUGd-XuSg_QfPzl-PnzwKbX3_6-OXjHaRDB0d6qu4-IicalKH-9X_03Ud9vEpwlk6F1t6D-cy6R19_scFO9-aGcie1dLBsy__n3O-Rb237d3DU13l_yA8yojrb5WW2T9P0EE11laaYpvusG9q-wLYsiqEbZLnLe6wymVeRqjHFIkOsUsSqOCRDVQ6yyLAtMinz_CCKlGap9FMQRrf7XmeYZVhGWrak-Za5iC9CRyAK_EEgDrcSEUMkuzpA4nYdWRRpCAJ-xnrl9S28n015kWFbyIAyLy2KVqfr18E9Kj-tbdLZWWAT2I9DvDj7jboQ4RsqJPNWwrnGPwMAAP__-S4WPg">