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

    <tr>
        <th>Summary</th>
        <td>
            [PowerPC] Assertion failed: ((CGF.CurFuncDecl == nullptr || CGF.Builder.getIsFPConstrained() || isa<CXXConstructorDecl>(CGF.CurFuncDecl) || isa<CXXDestructorDecl>(CGF.CurFuncDecl) || (NewExceptionBehavior == llvm::fp::ebIgnore && NewRoundingBehavior == llvm::RoundingMode::NearestTiesToEven)) && "FPConstrained should be enabled on entire function"), function ConstructorHelper, file /usr/src/contrib/llvm-project/clang/lib/CodeGen/CodeGenFunction.cpp, line 165.
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

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

    <tr>
      <th>Reporter</th>
      <td>
          pkubaj
      </td>
    </tr>
</table>

<pre>
    FreeBSD 14.0-CURRENT
LLVM 16.0.6
powerpc64le, powerpc64, powerpc64

Reproducer:
```
template <class Compare> void stable_sort(int last, Compare) {
  stable_sort(last, int());
}
#pragma STDC FENV_ACCESS ON
struct cluster_result {
 int operator[](int);
};
template <int> void generate_SciPy_dendrogram() {
  cluster_result Z2;
  int trans_tmp_1(0);
  int trans_tmp_2 = Z2[1];
  stable_sort(trans_tmp_1, trans_tmp_2);
}
void linkage_wrap() { generate_SciPy_dendrogram<false>; }
```

Build with:
`/usr/bin/c++ -cc1 -triple powerpc-unknown-freebsd14.0 -emit-obj fastcluster_python-684654.cpp`

Output:
`Assertion failed: ((CGF.CurFuncDecl == nullptr || CGF.Builder.getIsFPConstrained() || isa<CXXConstructorDecl>(CGF.CurFuncDecl) || isa<CXXDestructorDecl>(CGF.CurFuncDecl) || (NewExceptionBehavior == llvm::fp::ebIgnore && NewRoundingBehavior == llvm::RoundingMode::NearestTiesToEven)) && "FPConstrained should be enabled on entire function"), function ConstructorHelper, file /usr/src/contrib/llvm-project/clang/lib/CodeGen/CodeGenFunction.cpp, line 165.`

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsVU1v2zgU_DX0hbAgUR-2Dz7EtNUt0LpBki2KvRgU9SSzoUmCH_Hm3y8oWYmTtgv0XsCQRXL03sxoHsScE70CWKNyg8rtjAV_1HZtHkPDvs8a3T6vawuwud_irEjSOf377m63f0DpFqU3nz59_YyzKkmTatww-gzW8KqQgAjFL8u3iwE6Xu_AWN0GDhblly1UpZffsPRwMpJ5wCinXDLnMNUnwyygfIeftGix86yRcHDaekSWQnksmfOx5YQkK4wWm7EefoefsELFFSKr-MsvYLTYXm5IbizrTwzfP2wprnf7r4cbSnf39_jLfoQ4bwP3mMvgPNiDBRekv-obiWkDlnltR7NHtu_7TffXwiNsktuDikXgcM_F7fOhBdVa3Vt2GulfK33H5R_yUhwPdLxlyh38yRwyRJbpNZP3AIJRvo0Vyk0Wqee_sPNNSXpd4Ke-DoqkUI-sh8PZMvMq4n-E5rRj0sUEoHyDX1_S2-SM100QssVn4Y9vEkbq4CwidSMUIjVHZIPIBs85z_DcW2EkTIGdB_Wo9FnNOwvQuDaOAZ7DSfi5br7jjjk_-Wye_VGrebUsqrJIuDHvuHwJ3gR_zePGObBeaIU7JiS0KL_BgwVL-qFOaLB1UHwLXEb74xtQQUrjLUYLihYUR9SgEGzSg__o6luqlfOWCQXti5kDVjiGckq_fRsRgXttY-lo4w_9fvbcFn7nMUSWezjv_uVgosANHNmT0HYSIuXTKTqR33Rm_IfmY6-0BYxIhUiF93C-00G1QvW_fnhCfNYtjDt7YBacfxDgHvTuCdQ401NVRMgbj7A76iBb3AAGFZPcYq0wKC8s4C4oHskjMsSX0JcdfGXiXyAN2OFUyEj_ki1necyWVt6KBpE6sp4bq78D9_FAMtXH7eGQ6hY-RLLTXX3pNOSI0DglgLOqTF5CNWvXebvKV2wG66xaLpZVusoWs-O6abqO5yQlRZmtylW3LEuARVGWXVMW3XIxE2uSkjytyCJLszKrkirNSEp4Q9hqtWK8QEUKJyZkEjkn2vYz4VyAdZWXBZlJ1oB0wyeDEAVnPBxGk8rtzK4HnU3oHSpSKZx3r1W88HL41tzG4bqlqNziPzPwZwZ-dwZmwcr10XvjomBSI1L3wh9Dk3B9urT5sdsQU4dIPcT4vwAAAP__nVjHvw">