hanchenye-llvm-project/compiler-rt/cmake
Michal Gorny c74123bdff [cmake] Disable appending -msse4.2 flag implicitly
Disable the code appending -msse4.2 flag implicitly when the compiler
supports it. The compiler support for this flags do not indicate that
the underlying CPU will support SSE4.2, and passing it may result in
SSE4.2 code being emitted *implicitly*.

If the target platform supports SSE4.2 appropriately, the relevant bits
should be already enabled via -march= or equivalent. In this case
passing -msse4.2 is redundant.

If a runtime detection is desired (which seems to be a case with SCUDO),
then (as gcc manpage points out) the specific SSE4.2 needs to be
isolated into a separate file, the -msse4.2 flag can be forced only
for that file and the function defined in that file can only be called
when the CPU is determined to support SSE4.2.

This fixes SIGILL on SCUDO when it is compiled using gcc-5.4.

Differential Revision: https://reviews.llvm.org/D28304

llvm-svn: 291217
2017-01-06 08:21:02 +00:00
..
Modules [gtest] Teach the sanitizer's custom gtest compilations to disable 2017-01-05 03:41:41 +00:00
caches
base-config-ix.cmake [compiler-rt] Support building builtins for a single target 2016-12-12 23:14:02 +00:00
builtin-config-ix.cmake builtins: switch to c11 from c99 2016-11-29 02:31:40 +00:00
config-ix.cmake [cmake] Disable appending -msse4.2 flag implicitly 2017-01-06 08:21:02 +00:00