Am 27.05.2018 um 02:48 schrieb J. Gareth Moreton:
Hi guys,

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!

https://bugs.freepascal.org/view.php?id=33794

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.

Even if the deep optimiser is an unstable, unusable failure, I found a bug anyway!

Yes, you found a bug... in your own code. See my note at the bug report.

Regards,
Sven
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to