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