[fpc-devel] Performance of string handling in trunk

Sergei Gorelkin sergei_gorelkin at mail.ru
Thu Jun 20 15:04:43 CEST 2013

20.06.2013 16:15, luiz americo pereira camara пишет:
> I looked at http://forum.lazarus.freepascal.org/index.php/topic,21223.0.html
> There's a significant performance drop in fpc trunk
> The difference of generated code is a call to fpc_ansistr_assign and a
> different implementation of fpc_AnsiStr_Concat
> AFAIK there should be significant performance hit only when assigning
> string with different code pages. It does not seem to be the case.
> Is there anything wrong or this is the expected result?
Some slowdown is of course the expected result: it is impossible to add all codepage stuff without 
performance impact. Even though conversions happen only when codepages differ, the code which checks 
the codepages is executed anyway on every operation. The question is, which part of observed 
slowdown is unavoidable and which can be eliminated by more accurate implementation.


More information about the fpc-devel mailing list