Re: [PHP-DEV] more inline assembler noise

2013-02-04 Thread Dmitry Stogov
On Mon, Feb 4, 2013 at 8:59 PM, Ard Biesheuvel wrote: > On 02/04/2013 01:50 PM, Dmitry Stogov wrote: > >> I can't remember if I did any special benchmarks except for bench.php when >> I introduced fast math functions. >> That time, I rearranged the code to allow inlining of the most probable >> pa

Re: [PHP-DEV] more inline assembler noise

2013-02-04 Thread Ard Biesheuvel
On 02/04/2013 01:50 PM, Dmitry Stogov wrote: I can't remember if I did any special benchmarks except for bench.php when I introduced fast math functions. That time, I rearranged the code to allow inlining of the most probable paths and added assembler code to catch overflow (C can't do it in opti

Re: [PHP-DEV] more inline assembler noise

2013-02-04 Thread Dmitry Stogov
I can't remember if I did any special benchmarks except for bench.php when I introduced fast math functions. That time, I rearranged the code to allow inlining of the most probable paths and added assembler code to catch overflow (C can't do it in optimal way). As I remember the bench.php showed so

Re: [PHP-DEV] more inline assembler noise

2013-02-04 Thread Ard Biesheuvel
Hi Dimitry, The main problem I have with this code is that most of it (the double handling) is outside the hot path, and that it is riddled with hardcoded constants, struct offsets etc. However, if it works than I am not necessarily in favour of making changes to it. So can you explain a little b

Re: [PHP-DEV] more inline assembler noise

2013-02-04 Thread Dmitry Stogov
Hi Ard, Actually with your patch the fast_increment_function() is going to be compile into something like this incl (%ecx) seto %al test %al,%al jz .FLOAT .END: ... .FLOAT: movl $0x0, (%ecx) movl $0x41e0, 0x4(%ecx) movb $0x2,0xc(%ecx) jmp . END while before th

Re: [PHP-DEV] more inline assembler noise

2013-02-04 Thread Ferenc Kovacs
On Fri, Jan 18, 2013 at 7:08 PM, Ard Biesheuvel wrote: > Hello, > > Again, apologies for prematurely declaring someone else's code 'crap'. > There are no bugs in the inline x86 assembler in Zend/zend_operators.h, as > far as I can tell, only two kinds of issues that I still think should be > addre

[PHP-DEV] more inline assembler noise

2013-01-18 Thread Ard Biesheuvel
Hello, Again, apologies for prematurely declaring someone else's code 'crap'. There are no bugs in the inline x86 assembler in Zend/zend_operators.h, as far as I can tell, only two kinds of issues that I still think should be addressed. First of all, from a maintenance pov, having field offs