Re: [fpc-devel] x86_64 Optimizer Overhaul

2018-12-11 Thread J. Gareth Moreton
It is indeed such a complex system.  I wouldn't say that I've identified a bottleneck per se, but I've chosen to focus my improvements there.  The idea behind the overhaul is that it attempts to reduce the number of passes during the peephole optimizer stage - given that I've managed to shave off

Re: [fpc-devel] x86_64 Optimizer Overhaul

2018-12-11 Thread Ryan Joseph
I’ve spent some time in the compiler sources now and I’m curious just where people think the bottle necks for performance actually are. It’s such a complicated system for anyone one person to have a good understanding of so it’s not clear where to begin looking. > On Dec 12, 2018, at 9:42 AM,

Re: [fpc-devel] Documentation check

2018-12-11 Thread J. Gareth Moreton
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,

Re: [fpc-devel] x86_64 Optimizer Overhaul

2018-12-11 Thread J. Gareth Moreton
I think this was intended for the mailing list - I'm looking forward to it too.  Depends on what Florian says though. The overhaul primarily increases the speed of compilation, but it makes some minor improvements to conditional branches here and there.  Nevertheless, I'm always happy to find a

Re: [fpc-devel] Documentation check

2018-12-11 Thread Marco van de Voort
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 The

[fpc-devel] Documentation check

2018-12-11 Thread J. Gareth Moreton
Hi everyone, 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 The "Jump Table" section is what I've

Re: [fpc-devel] rfc: win32/win64 buildscript

2018-12-11 Thread J. Gareth Moreton
I'll give it a whirl when I next build FPC, since I play with win32 and win64 optimisations quite a bit.  Thanks Marco. Gareth aka. Kit On Tue 11/12/18 11:57 , Marco van de Voort f...@pascalprogramming.org sent: Hello, Because I got a new (Ryzen 5 2600) machine, last night I worked on

[fpc-devel] rfc: win32/win64 buildscript

2018-12-11 Thread Marco van de Voort
Hello, Because I got a new (Ryzen 5 2600) machine, last night I worked on improving my buildscript a bit.   It is the script that I run after a SVN update to rebuild and install a snapshot. This mail is both meant as its publishing as a request for comment from people that maintain their