[fpc-devel] Documentation check

J. Gareth Moreton gareth at moreton-family.com
Wed Dec 12 03:47:01 CET 2018


 I'll have to look that one up.  I might have reinvented the wheel a bit
with the binary search algorithm that I put on there ages ago, which is of
O(log n) and works even if the range of test values is sparse (I came up
with the algorithm originally for the case block in the peephole optimiser,
where there are many hundreds if not thousands of individual opcodes, but
only a handful actually have branches.

 The jump table is of O(1), but starts becoming prohibitive if the range is
sparse.

 Gareth

 On Tue 11/12/18 19:48 , Marco van de Voort fpc at pascalprogramming.org sent:

 Op 2018-12-11 om 17:12 schreef J. Gareth Moreton: 
 > 
 > I've just written up a new segment on the Wiki about how jump tables 
 > work.  Since I want to look at implementing my binary search option, I 
 > thought I'd document what already exists; 
 > 
 > http://wiki.freepascal.org/Case_Compiler_Optimization
[1]">http://wiki.freepascal.org/Case_Compiler_Optimization 
 > 
 > The "Jump Table" section is what I've added.  Can people check to see 
 > that I've got it correct? I had to go back and edit it a few times 
 > because I got the
AT">http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel 

 

Links:
------
[1] http://wiki.freepascal.org/Case_Compiler_Optimization
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-devel/attachments/20181212/88c16ebf/attachment.html>


More information about the fpc-devel mailing list