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

    <tr>
        <th>Summary</th>
        <td>
            SCEV behaves differently between clang-hosted and gcc-hosted
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            SCEV
      </td>
    </tr>

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

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

<pre>
    Due to evaluation order in function args.

For example to fix my issue. see; https://github.com/llvm/llvm-project/blob/1f9140064dfbfb0bbda8e51306ea51080b2f7aac/llvm/lib/Analysis/ScalarEvolution.cpp#L14283

Most of differences would not be observable without debug messages, but I have seen difference of object emission in x86-64 regalloc, LoopStrengthReduce.
I will try to make minimal testcase, if required.

Besides of the expression above, I saw bunch of implementation-dependent evaluation order around SCEV.
I will check up and report them when I have time.

They should be serialized not to affected by evaluation order, at least in C++14.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyVU8tunTAQ_RrYWEHmecmCRZ5SpHTTVN2P7QHcGEz9uDe3X98xSdtEWRUhzNjMzDlnDsKq83AbkQXL8AgmQtB2ZdYpdEyvbIyr3HfATb7I-G3Gr16f99YxfIFlM3vyqF_Ycmba-4gF84hZfc3mEDaf1VdZdU_3pMMcRSHtQoExxz_LxebsD5SBQmGsoKUcL8uG865RoxgFF0JBj21Z8w6hLXnPRTUeAOS7OjrlXa1gzl57en2SYMDdHa2JCX8hty2r6seyqfr6PY0v1gdmR6b0OKLDVaJnJxuNYqsNTCCzwqM7giCaJyJgY2AKRZzYgt7DhNTshgnafWAzHDFRX99VS7WtSPQYLqRO0pJ0fem7i65hDicwxspU49Ha7SlQ0hTmr6iixDe9H6ixMSy4cxJ6gWdki171ArSHPkjwmPL1SOV-Ru1QfRjUNXqtiBUBCTPSzDaHrzhA2OOe-sA8nIjEKuf0mU5DXXANuxkuFG64Kgo_OwScjatiTzd33z-ClTPKZxY3BnTscLMupO4LO80kz5tUQS_4Aeq3Gc_Mz7v8IknpNBj9C1-HQeSBZJWBYnH-BCYRgcAMAk2UJL7Jqmu6y6bI1VCry_oS8qCDwSHBpfoJg_87qmDOtBdOaXzSwDpdzGQNapUYTFK-hXl0ZvhvX--_RbJl25L_8nkAVR4OWJc9jh3UPYxwaMqm61RLzuZS5AYEGj9kLXGoEmBasvY210PFq4q3vCUr01W0UhxQYt93_CA48qzhuIA2RYJQWDflbtjRkGc9HRrtg_93CGSFaUXcO1F9iORxN8gZtrjqfAc-7Kh_A2ALZKA">