[fpc-devel] Vectorization

J. Gareth Moreton gareth at moreton-family.com
Sat Dec 23 06:07:53 CET 2017


Hey Adriaan,

I dare ask - did the patch help out your issue at all?  I did supply it to Florian as well, although he has 
his own work in progress for vectorization, so whether my code is compatible or not waits to be seen.

Gareth aka. Kit


On Thu 14/12/17 20:29 , "J. Gareth Moreton" gareth at moreton-family.com sent:
> https://bugs.freepascal.org/view.php?id=27870
> 
> 
> I've made a patch that hopefully fixes this bug, as well as provide some
> future expansion for vectorization.
> 
> 
> There are a few new internal sizes such as "OS_MF128" that serve
> to ensure the most optimal move command is 
> used (out of MOVAPS, MOVAPD and MOVDQA), since using the wrong one incurs a
> performance penalty.
> 
> 
> If the data is unaligned, the compiler will use MOVUPS/MOVUPD/MOVDQU
> instead, but if it detects the correct 
> byte alignment (16) on a variable, it will use the aligned commands.
> 
> 
> 
> Let me know how it works out.
> 
> 
> 
> Gareth aka. Kit
> 
> _______________________________________________
> 
> fpc-devel maillist  -  fpc-devel at lists.freepascal.org
> http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
> 
> 
> 
> 




More information about the fpc-devel mailing list