<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html;
      charset=windows-1252">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Thanks Daniel,<br>
    <br>
    <div class="moz-cite-prefix">On 14.09.2018. 18:31, Daniel Sanders
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:9F637C09-ADF1-4CBF-8D4D-D6143273EA18@apple.com"> <br
        class="">
      <div>
        <blockquote type="cite" class="">
          <div class="">On 14 Sep 2018, at 06:50, pavram <<a
              href="mailto:Petar.Avramovic@rt-rk.com" class="">Petar.Avramovic@rt-rk.com</a>>
            wrote:</div>
          <br class="">
        </blockquote>
        <blockquote type="cite" class="">
          <div class="">
            <div bgcolor="#FFFFFF" class="">We could get similar result
              if we have: <br class="">
              <br class="">
                getActionDefinitionsBuilder(G_SELECT) <br class="">
                    .legalFor({{s32, s32}, {s64, s32}, {p0, s32}}) <br
                class="">
                    .clampScalar(0, s32, s64) <br class="">
                    .clampScalar(1, s32, s32) <br class="">
                    .widenScalarToNextPow2(0); <br class="">
              <br class="">
              And in this case sizes of LLTs and register classes would
              be the same. <br class="">
              Implementation for G_ICMP on AArch64 is very similar to
              second described option for G_SELECT. <br class="">
              Is there a reason for different implementation of G_SELECT
              and G_ICMP on AArch64? Are there some general ruses to
              determine which of the two given options is better in
              which case?</div>
          </div>
        </blockquote>
        <br class="">
      </div>
      <div>At the moment, it largely comes down to preference. I don't
        have any real evidence to back this up but I expect the latter
        will be the better optimized in the long run since maintaining
        the excess bits requires instructions and these are explicit in
        the GMIR. This means we can optimize it and decline to do it
        whenever it doesn't matter.<br>
      </div>
    </blockquote>
    Then, for now, I will widen s1 to size of register class in
    instruction "to be selected".
  </body>
</html>