03.03.2016 16:31, Dmitry Yemanov wrote:
> I had the same doubts about the first two if's, but
> Vlad already asked about them.

   And as I already said: they improve performance with short data without 
visible affect 
for long data. At least two months old tests showed me that. If anyone's tests 
proof 
contrary, these lines can be removed in no time.

> Out of curiosity, why do we need a separate crc32c.cpp?

   To let engine work on processors without SSE4.2 command set.

> Cannot the CRC32C function be defined inside Hash.cpp?

   It can. But whole file then will have to be compiled with SSE4.2 instruction 
set 
enabled. If (by chance) a compiler generate any SSE4 instruction anywhere 
outside of 
CRC32C() function, engine will crash on old processors and you'll spend a lot 
of time 
trying to find out why. (At least I did.)

> I hate to see such a conditional code:

   Yes, it is ugly, but it is the price for hardware acceleration for 
multiplatform projects.

-- 
   WBR, SD.

------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to