File tree Expand file tree Collapse file tree 3 files changed +7
-3
lines changed Expand file tree Collapse file tree 3 files changed +7
-3
lines changed Original file line number Diff line number Diff line change @@ -106,6 +106,7 @@ option(SwiftCore_HAS_DARWIN_LIBMALLOC "Use Darwin malloc features" ${APPLE})
106
106
defaulted_option (SwiftCore_ENABLE_BACKTRACING "Enable backtracing runtime support" )
107
107
defaulted_set (SwiftCore_BACKTRACER_PATH STRING "Set a fixed path to the Swift backtracer" )
108
108
defaulted_option (SwiftCore_ENABLE_FATALERROR_BACKTRACE "Build stdlib fatalError with backtrace output" )
109
+ defaulted_option (SwiftCore_ENABLE_PRESPECIALIZATION "Enable generic metadata prespecialization" )
109
110
110
111
option (SwiftCore_ENABLE_CLOBBER_FREED_OBJECTS "" OFF )
111
112
option (SwiftCore_ENABLE_RUNTIME_LEAK_CHECKER "" OFF )
@@ -181,7 +182,8 @@ add_compile_options(
181
182
"$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xfrontend -target-min-inlining-version -Xfrontend min>"
182
183
"$<$<AND:$<NOT:$<BOOL:${SwiftCore_ENABLE_OBJC_INTEROP} >>,$<COMPILE_LANGUAGE:Swift>>:SHELL:-Xfrontend -disable-objc-interop>"
183
184
"$<$<AND:$<PLATFORM_ID:Windows>,$<COMPILE_LANGUAGE:Swift>>:SHELL:-Xcc -Xclang -Xcc -fbuiltin-headers-in-system-modules>"
184
- "$<$<AND:$<BOOL:${SwiftCore_ENABLE_LIBRARY_EVOLUTION} >,$<COMPILE_LANGUAGE:Swift>>:-enable-library-evolution>" )
185
+ "$<$<AND:$<BOOL:${SwiftCore_ENABLE_LIBRARY_EVOLUTION} >,$<COMPILE_LANGUAGE:Swift>>:-enable-library-evolution>"
186
+ "$<$<AND:$<BOOL:${SwiftCore_ENABLE_PRESPECIALIZATION} >,$<COMPILE_LANGUAGE:Swift>>:SHELL:-Xfrontend -prespecialize-generic-metadata>" )
185
187
186
188
include_directories (include )
187
189
Original file line number Diff line number Diff line change @@ -41,6 +41,7 @@ if(APPLE)
41
41
set (SwiftCore_ENABLE_RUNTIME_OS_VERSIONING ON )
42
42
set (SwiftCore_ENABLE_OVERRIDABLE_RETAIN_RELEASE ON )
43
43
set (SwiftCore_THREADING_PACKAGE "DARWIN" )
44
+ set (SwiftCore_ENABLE_PRESPECIALIZATION_default ON )
44
45
elseif (CMAKE_SYSTEM_NAME STREQUAL "WASM" )
45
46
set (SwiftCore_OBJECT_FORMAT_default "elf" )
46
47
set (SwiftCore_THREADING_PACKAGE "NONE" )
@@ -49,13 +50,15 @@ elseif(LINUX OR ANDROID OR BSD)
49
50
set (SwiftCore_ENABLE_FATALERROR_BACKTRACE_default ON )
50
51
if (LINUX )
51
52
set (SwiftCore_THREADING_PACKAGE "LINUX" )
53
+ set (SwiftCore_ENABLE_PRESPECIALIZATION_default ON )
52
54
else ()
53
55
set (SwiftCore_THREADING_PACKAGE "PTHREADS" )
54
56
endif ()
55
57
elseif (WIN32 )
56
58
set (SwiftCore_OBJECT_FORMAT_default "coff" )
57
59
set (SwiftCore_THREADING_PACKAGE "WIN32" )
58
60
set (SwiftCore_ENABLE_FATALERROR_BACKTRACE_default ON )
61
+ set (SwiftCore_ENABLE_PRESPECIALIZATION_default ON )
59
62
endif ()
60
63
61
64
include ("${SwiftCore_VENDOR_MODULE_DIR} /DefaultSettings.cmake" OPTIONAL )
Original file line number Diff line number Diff line change @@ -283,8 +283,7 @@ target_compile_options(swiftCore PRIVATE
283
283
"$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xfrontend -group-info-path -Xfrontend ${CMAKE_CURRENT_SOURCE_DIR} /GroupInfo.json>"
284
284
"$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xfrontend -disable-autolinking-runtime-compatibility-concurrency>"
285
285
"$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xfrontend -disable-objc-attr-requires-foundation-module>"
286
- "$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xfrontend -require-explicit-availability=ignore>"
287
- "$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xfrontend -prespecialize-generic-metadata>" )
286
+ "$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xfrontend -require-explicit-availability=ignore>" )
288
287
289
288
if (NOT "${CMAKE_BUILD_TYPE} " STREQUAL "MinSizeRel" )
290
289
# Using these in MinSizeRel would result in a 15% increase in the binary size
You can’t perform that action at this time.
0 commit comments