<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">Am 27.05.2018 um 02:48 schrieb J.
      Gareth Moreton:<br>
    </div>
    <blockquote type="cite"
      cite="mid:8649.1527382126@web-cluster.fastnet.co.uk">
      <style> BODY { font-family:Arial, Helvetica, sans-serif;font-size:12px; }</style>Hi
      guys,<br>
      <br>
      So I'm still experimenting and researching with the deep
      optimiser, and I'm starting to have some successes... until I
      found a compiler bug!<br>
      <br>
      <a class="moz-txt-link-freetext" href="https://bugs.freepascal.org/view.php?id=33794">https://bugs.freepascal.org/view.php?id=33794</a><br>
      <br>
      What I'm trying to do, and something which I'd like to try out
      with the regular peephole optimiser at some point, is using a
      sorted list that maps an assembler command to a handler procedure
      and using a binary search to find the correct routine.  This will
      speed up the optimiser from O(n) (i.e. the speed of "case X of")
      to O(log n) per line of code, where n is the different number of
      assembler commands it has to deal with, but the compiler produces
      incorrect code with the algorithm I'm using, and triggers an
      internal error if -O3 is specified.  A trimmed down sample project
      is attached with the ticket.<br>
      <br>
      Even if the deep optimiser is an unstable, unusable failure, I
      found a bug anyway!<br>
    </blockquote>
    <br>
    Yes, you found a bug... in your own code. See my note at the bug
    report.<br>
    <br>
    Regards,<br>
    Sven<br>
  </body>
</html>