Skip to content

Commit 26fee83

Browse files
authored
Merge pull request #12995 from eeckstein/driver-options
2 parents c9e9c90 + 89ffd4c commit 26fee83

File tree

5 files changed

+14
-4
lines changed

5 files changed

+14
-4
lines changed

include/swift/Option/FrontendOptions.td

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -197,9 +197,6 @@ def enable_guaranteed_closure_contexts : Flag<["-"], "enable-guaranteed-closure-
197197
def disable_sil_partial_apply : Flag<["-"], "disable-sil-partial-apply">,
198198
HelpText<"Disable use of partial_apply in SIL generation">;
199199

200-
def remove_runtime_asserts : Flag<["-"], "remove-runtime-asserts">,
201-
HelpText<"Remove runtime asserts.">;
202-
203200
def disable_access_control : Flag<["-"], "disable-access-control">,
204201
HelpText<"Don't respect access control restrictions">;
205202
def enable_access_control : Flag<["-"], "enable-access-control">,

include/swift/Option/Options.td

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -403,6 +403,9 @@ def Oplayground : Flag<["-"], "Oplayground">, Group<O_Group>,
403403
Flags<[HelpHidden, FrontendOption]>,
404404
HelpText<"Compile with optimizations appropriate for a playground">;
405405

406+
def RemoveRuntimeAsserts : Flag<["-"], "remove-runtime-asserts">,
407+
Flags<[FrontendOption]>,
408+
HelpText<"Remove runtime safety checks.">;
406409
def AssumeSingleThreaded : Flag<["-"], "assume-single-threaded">,
407410
Flags<[FrontendOption, HelpHidden]>,
408411
HelpText<"Assume that code will be executed in a single-threaded "

lib/Driver/ToolChains.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,8 @@ static void addCommonFrontendArgs(const ToolChain &TC,
167167
inputArgs.AddLastArg(arguments,
168168
options::OPT_solver_shrink_unsolved_threshold);
169169
inputArgs.AddLastArg(arguments, options::OPT_O_Group);
170+
inputArgs.AddLastArg(arguments, options::OPT_RemoveRuntimeAsserts);
171+
inputArgs.AddLastArg(arguments, options::OPT_AssumeSingleThreaded);
170172

171173
// Pass on any build config options
172174
inputArgs.AddAllArgs(arguments, options::OPT_D);

lib/Frontend/CompilerInvocation.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1287,7 +1287,7 @@ static bool ParseSILArgs(SILOptions &Opts, ArgList &Args,
12871287
}
12881288

12891289
// -Ounchecked might also set removal of runtime asserts (cond_fail).
1290-
Opts.RemoveRuntimeAsserts |= Args.hasArg(OPT_remove_runtime_asserts);
1290+
Opts.RemoveRuntimeAsserts |= Args.hasArg(OPT_RemoveRuntimeAsserts);
12911291

12921292
Opts.EnableARCOptimizations |= !Args.hasArg(OPT_disable_arc_opts);
12931293
Opts.DisableSILPerfOptimizations |= Args.hasArg(OPT_disable_sil_perf_optzns);

test/Driver/options.swift

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,3 +117,11 @@
117117
// RUN: %swiftc_driver -driver-print-jobs -enforce-exclusivity=checked %s | %FileCheck -check-prefix=EXCLUSIVITY_CHECKED %s
118118
// EXCLUSIVITY_CHECKED: swift
119119
// EXCLUSIVITY_CHECKED: -enforce-exclusivity=checked
120+
121+
// RUN: %swiftc_driver -driver-print-jobs -remove-runtime-asserts %s | %FileCheck -check-prefix=REMOVE_RUNTIME_ASSERTS %s
122+
// REMOVE_RUNTIME_ASSERTS: swift
123+
// REMOVE_RUNTIME_ASSERTS: -frontend {{.*}} -remove-runtime-asserts
124+
125+
// RUN: %swiftc_driver -driver-print-jobs -assume-single-threaded %s | %FileCheck -check-prefix=ASSUME_SINGLE_THREADED %s
126+
// ASSUME_SINGLE_THREADED: swift
127+
// ASSUME_SINGLE_THREADED: -frontend {{.*}} -assume-single-threaded

0 commit comments

Comments
 (0)