Andreas Peters suggested another approach, which makes sense to me : have one 
plugin with SSE optimizations enabled, another without them and chose at 
runtime between the two. 

What do you think ?

On 23/03/2014 20:50, Loic Dachary wrote:
> Hi Laurent,
> 
> In the context of optimizing erasure code functions implemented by Kevin 
> Greenan (cc'ed) and James Plank at 
> https://bitbucket.org/jimplank/gf-complete/ we ran accross a question you may 
> have the answer to: can gcc -msse2 (or -msse* for that matter ) have a 
> negative impact on the portability of the compiled binary code ? 
> 
> In other words, if a code is compiled without -msse* and runs fine on all 
> intel processors it targets, could it be that adding -msse* to the 
> compilation of the same source code generate a binary that would fail on some 
> processors ? This is assuming no sse specific functions were used in the 
> source code.
> 
> In gf-complete, all sse specific instructions are carefully protected to not 
> be run on a CPU that does not support them. The runtime detection is done by 
> checking CPU id bits ( see 
> https://bitbucket.org/jimplank/gf-complete/pull-request/7/probe-intel-sse-features-at-runtime/diff#Lsrc/gf_intel.cT28
>  )
> 
> The corresponding thread is at:
> 
> https://bitbucket.org/jimplank/gf-complete/pull-request/4/defer-the-decision-to-use-a-given-sse/diff#comment-1479296
> 
> Cheers
> 

-- 
Loïc Dachary, Artisan Logiciel Libre

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to