forked from OSchip/llvm-project
[CMake] Add partial support for MSVC in compiler-rt builtins, by Roman Shirokiy.
This enables MSVC build of complex number arithmetic compiler-rt builtins. Differential Revision: http://reviews.llvm.org/D17452 llvm-svn: 261432
This commit is contained in:
parent
10f3cf54cb
commit
bc0122bca9
|
@ -241,6 +241,8 @@ if(MSVC)
|
|||
# FIXME: In fact, sanitizers should support both /MT and /MD, see PR20214.
|
||||
if(COMPILER_RT_HAS_MT_FLAG)
|
||||
foreach(flag_var
|
||||
CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE
|
||||
CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO
|
||||
CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE
|
||||
CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO)
|
||||
string(REGEX REPLACE "/M[DT]d" "/MT" ${flag_var} "${${flag_var}}")
|
||||
|
|
|
@ -143,6 +143,15 @@ set(GENERIC_SOURCES
|
|||
umodsi3.c
|
||||
umodti3.c)
|
||||
|
||||
set(MSVC_SOURCES
|
||||
divsc3.c
|
||||
divdc3.c
|
||||
divxc3.c
|
||||
mulsc3.c
|
||||
muldc3.c
|
||||
mulxc3.c)
|
||||
|
||||
|
||||
if(APPLE)
|
||||
set(GENERIC_SOURCES
|
||||
${GENERIC_SOURCES}
|
||||
|
@ -216,14 +225,15 @@ if (NOT MSVC)
|
|||
${i386_SOURCES})
|
||||
else () # MSVC
|
||||
# Use C versions of functions when building on MSVC
|
||||
# MSVC's assembler takes Intel syntax, not AT&T syntax
|
||||
# MSVC's assembler takes Intel syntax, not AT&T syntax.
|
||||
# Also use only MSVC compilable builtin implementations.
|
||||
set(x86_64_SOURCES
|
||||
x86_64/floatdidf.c
|
||||
x86_64/floatdisf.c
|
||||
x86_64/floatdixf.c
|
||||
${GENERIC_SOURCES})
|
||||
${MSVC_SOURCES})
|
||||
set(x86_64h_SOURCES ${x86_64_SOURCES})
|
||||
set(i386_SOURCES ${GENERIC_SOURCES})
|
||||
set(i386_SOURCES ${MSVC_SOURCES})
|
||||
set(i686_SOURCES ${i386_SOURCES})
|
||||
endif () # if (NOT MSVC)
|
||||
|
||||
|
@ -363,7 +373,7 @@ if (APPLE)
|
|||
add_subdirectory(Darwin-excludes)
|
||||
add_subdirectory(macho_embedded)
|
||||
darwin_add_builtin_libraries(${BUILTIN_SUPPORTED_OS})
|
||||
elseif (NOT WIN32 OR MINGW)
|
||||
else ()
|
||||
append_string_if(COMPILER_RT_HAS_STD_C99_FLAG -std=c99 maybe_stdc99)
|
||||
|
||||
foreach (arch ${BUILTIN_SUPPORTED_ARCH})
|
||||
|
|
Loading…
Reference in New Issue