You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add support for `-resolved-plugin-validation`:
* Unconditionally add the flag if supported for explicit module scan
* Append `-cache-replay-prefix-map` to interface compilation jobs
Copy file name to clipboardExpand all lines: Sources/SwiftOptions/Options.swift
+20
Original file line number
Diff line number
Diff line change
@@ -157,6 +157,7 @@ extension Option {
157
157
publicstaticletdirectClangCc1ModuleBuild:Option=Option("-direct-clang-cc1-module-build",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Use the specified -Xcc options to build a PCM by using Clang frontend directly, bypassing the Clang driver")
158
158
publicstaticletdisableAccessControl:Option=Option("-disable-access-control",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Don't respect access control restrictions")
159
159
publicstaticletdisableActorDataRaceChecks:Option=Option("-disable-actor-data-race-checks",.flag, attributes:[.frontend,.doesNotAffectIncrementalBuild], helpText:"Disable runtime checks for actor data races")
160
+
publicstaticletdisableAddressDependencies:Option=Option("-disable-address-dependencies",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Disable enforcement of lifetime dependencies on addressable values.")
160
161
publicstaticletdisableAggressiveReg2mem:Option=Option("-disable-aggressive-reg2mem",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Disable a more aggressive reg2mem heuristic")
161
162
publicstaticletdisableAliasModuleNamesInModuleInterface:Option=Option("-disable-alias-module-names-in-module-interface",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"When emitting a module interface, disable disambiguating modules using distinct alias names")
162
163
publicstaticletdisableAllAutolinking:Option=Option("-disable-all-autolinking",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Disable all Swift autolink directives")
@@ -223,6 +224,7 @@ extension Option {
223
224
publicstaticletdisableLlvmMergeFunctionsPass:Option=Option("-disable-llvm-merge-functions-pass",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Disable the MergeFunctionPass LLVM IR pass")
224
225
publicstaticletdisableLlvmOptzns:Option=Option("-disable-llvm-optzns",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Don't run LLVM optimization passes")
225
226
publicstaticletdisableLlvmValueNames:Option=Option("-disable-llvm-value-names",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Don't add names to local values in LLVM IR")
227
+
publicstaticletdisableLlvmVerifyEach:Option=Option("-disable-llvm-verify-each",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Don't run the LLVM IR verifier after every pass.")
226
228
publicstaticletdisableLlvmVerify:Option=Option("-disable-llvm-verify",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Don't run the LLVM IR verifier.")
227
229
publicstaticletdisableMigratorFixits:Option=Option("-disable-migrator-fixits",.flag, attributes:[.frontend,.noInteractive], helpText:"Disable the Migrator phase which automatically applies fix-its")
228
230
publicstaticletdisableModulesValidateSystemHeaders:Option=Option("-disable-modules-validate-system-headers",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Disable validating system headers in the Clang importer")
@@ -279,6 +281,7 @@ extension Option {
279
281
publicstaticletdisableVerifyExclusivity:Option=Option("-disable-verify-exclusivity",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Disable verification of access markers used to enforce exclusivity.")
280
282
publicstaticletdisableX8664Corocc:Option=Option("-disable-x86_64-corocc",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Don't use swiftcorocc for yield_once_2 routines on x86_64.")
281
283
publicstaticletdisallowForwardingDriver:Option=Option("-disallow-use-new-driver",.flag, helpText:"Disable using new swift-driver")
publicstaticletdowngradeTypecheckInterfaceError:Option=Option("-downgrade-typecheck-interface-error",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Downgrade error to warning when typechecking emitted module interfaces")
283
286
publicstaticletdriverAlwaysRebuildDependents:Option=Option("-driver-always-rebuild-dependents",.flag, attributes:[.helpHidden,.doesNotAffectIncrementalBuild], helpText:"Always rebuild dependents of files that have been modified", group:.internalDebug)
284
287
publicstaticletdriverBatchCount:Option=Option("-driver-batch-count",.separate, attributes:[.helpHidden,.doesNotAffectIncrementalBuild], helpText:"Use the given number of batch-mode partitions, rather than partitioning dynamically", group:.internalDebug)
@@ -426,6 +429,7 @@ extension Option {
426
429
publicstaticletEnableCMOEverything:Option=Option("-enable-cmo-everything",.flag, attributes:[.helpHidden,.frontend], helpText:"Perform cross-module optimization on everything (all APIs). This is the same level of serialization as Embedded Swift.")
publicstaticletenableColocateTypeDescriptors:Option=Option("-enable-colocate-type-descriptors",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Enable colocate type descriptors")
432
+
publicstaticletenableCondFailMessageAnnotation:Option=Option("-enable-cond-fail-message-annotation",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Enable cond_fail message annotation. Will serialize a .o.yaml file per .o file.")
429
433
publicstaticletcopyPropagationStateEQ:Option=Option("-enable-copy-propagation=",.joined, attributes:[.frontend,.noDriver], metaVar:"true|requested-passes-only|false", helpText:"Whether to enable copy propagation")
430
434
publicstaticletenableCopyPropagation:Option=Option("-enable-copy-propagation",.flag, attributes:[.frontend,.noDriver], helpText:"Run SIL copy propagation with lexical lifetimes to shorten object lifetimes while preserving variable lifetimes.")
publicstaticletenableLibraryEvolution:Option=Option("-enable-library-evolution",.flag, attributes:[.frontend,.moduleInterface], helpText:"Build the module to allow binary-compatible library evolution")
471
475
publicstaticletenableLifetimeDependenceDiagnostics:Option=Option("-enable-lifetime-dependence-diagnostics",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Enable lifetime dependence diagnostics for Nonescapable types.")
472
476
publicstaticletenableLlvmValueNames:Option=Option("-enable-llvm-value-names",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Add names to local values in LLVM IR")
477
+
publicstaticletenableLlvmVerifyEach:Option=Option("-enable-llvm-verify-each",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Run the LLVM IR verifier after every pass.")
473
478
publicstaticletenableLlvmVfe:Option=Option("-enable-llvm-vfe",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Use LLVM IR Virtual Function Elimination on Swift class virtual tables")
474
479
publicstaticletenableLlvmWme:Option=Option("-enable-llvm-wme",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Use LLVM IR Witness Method Elimination on Swift protocol witness tables")
475
480
publicstaticletenableMoveInoutStackProtector:Option=Option("-enable-move-inout-stack-protector",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Enable the stack protector by moving values to temporaries")
@@ -518,6 +523,8 @@ extension Option {
518
523
publicstaticletentryPointFunctionName:Option=Option("-entry-point-function-name",.separate, attributes:[.helpHidden,.frontend,.noDriver], metaVar:"<string>", helpText:"Name of the entry point function")
519
524
publicstaticleterrorOnAbiBreakage:Option=Option("-error-on-abi-breakage",.flag, attributes:[.noDriver], helpText:"Always treat ABI checker issues as errors")
520
525
publicstaticleterrorOnAbiBreakage_:Option=Option("--error-on-abi-breakage",.flag, alias:Option.errorOnAbiBreakage, attributes:[.noDriver], helpText:"Always treat ABI checker issues as errors")
publicstaticletexecutorFactory:Option=Option("-executor-factory",.joinedOrSeparate, attributes:[.frontend], metaVar:"<factory-type>", helpText:"Specify the factory to use to create the default executors for Swift Concurrency. This must be a type conforming to the 'ExecutorFactory' protocol.")
521
528
publicstaticletexperimentalAllowModuleWithCompilerErrors:Option=Option("-experimental-allow-module-with-compiler-errors",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Attempt to output .swiftmodule, regardless of compilation errors")
522
529
publicstaticletexperimentalAllowNonResilientAccess:Option=Option("-experimental-allow-non-resilient-access",.flag, attributes:[.frontend], helpText:"Deprecated; use -allow-non-resilient-access instead")
523
530
publicstaticletexperimentalAllowedReexportedModules:Option=Option("-experimental-allowed-reexported-modules=",.commaJoined, attributes:[.noDriver], helpText:"Allow reexporting symbols from the provided modules if they are themselves exported from the main module. This is a comma separated list of module names.")
@@ -659,6 +666,7 @@ extension Option {
659
666
publicstaticletl:Option=Option("-l",.joinedOrSeparate, attributes:[.frontend,.doesNotAffectIncrementalBuild], helpText:"Specifies a library which should be linked against", group:.linkerOption)
660
667
publicstaticletmergeModules:Option=Option("-merge-modules",.flag, attributes:[.frontend,.noDriver], helpText:"Merge the input modules without otherwise processing them", group:.modes)
661
668
publicstaticletmergeableSymbols:Option=Option("-mergeable-symbols",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Emit symbol definitions as mergeable (linkonce_odr)")
669
+
publicstaticletmergeableTraps:Option=Option("-mergeable-traps",.flag, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Emit mergeable traps even in optimized builds")
662
670
publicstaticletmigrateKeepObjcVisibility:Option=Option("-migrate-keep-objc-visibility",.flag, attributes:[.frontend,.noInteractive], helpText:"When migrating, add '@objc' to declarations that would've been implicitly visible in Swift 3")
663
671
publicstaticletmigratorUpdateSdk:Option=Option("-migrator-update-sdk",.flag, attributes:[.frontend,.noInteractive], helpText:"Does nothing. Temporary compatibility flag for Xcode.")
664
672
publicstaticletmigratorUpdateSwift:Option=Option("-migrator-update-swift",.flag, attributes:[.frontend,.noInteractive], helpText:"Does nothing. Temporary compatibility flag for Xcode.")
@@ -768,6 +776,7 @@ extension Option {
768
776
publicstaticletprotocolRequirementAllowList_:Option=Option("--protocol-requirement-allow-list",.separate, alias:Option.protocolRequirementAllowList, attributes:[.noDriver,.argumentIsPath], metaVar:"<path>", helpText:"File containing a new-line separated list of protocol names")
769
777
publicstaticletpublicAutolinkLibrary:Option=Option("-public-autolink-library",.separate, attributes:[.helpHidden,.frontend,.noDriver,.moduleInterface], helpText:"Add public dependent library")
770
778
publicstaticletpublicModuleName:Option=Option("-public-module-name",.separate, attributes:[.frontend], helpText:"Public facing module name to use in diagnostics and documentation")
779
+
publicstaticletremarkAbiInference:Option=Option("-Rabi-inference",.flag, attributes:[.frontend,.doesNotAffectIncrementalBuild], helpText:"Emit a remark when an '@abi' attribute adds an attribute or modifier to the ABI declaration based on its presence in the API")
publicstaticletcacheRemarks:Option=Option("-Rcache-compile-job",.flag, attributes:[.frontend,.cacheInvariant], helpText:"Show remarks for compiler caching")
@@ -787,6 +796,7 @@ extension Option {
787
796
publicstaticletrequirementMachineMaxRuleLength:Option=Option("-requirement-machine-max-rule-length=",.joined, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Set the maximum rule length before giving up")
788
797
publicstaticletrequirementMachineMaxSplitConcreteEquivClassAttempts:Option=Option("-requirement-machine-max-split-concrete-equiv-class-attempts=",.joined, attributes:[.helpHidden,.frontend,.noDriver], helpText:"Set the maximum concrete number of attempts at splitting concrete equivalence classes before giving up. There should never be a reason to change this")
789
798
publicstaticletresolveImports:Option=Option("-resolve-imports",.flag, attributes:[.frontend,.noInteractive,.doesNotAffectIncrementalBuild], helpText:"Parse and resolve imports in input file(s)", group:.modes)
publicstaticletresourceDir:Option=Option("-resource-dir",.separate, attributes:[.helpHidden,.frontend,.synthesizeInterface,.argumentIsPath], metaVar:"</usr/lib/swift>", helpText:"The directory that holds the compiler resource files")
791
801
publicstaticletremarkIndexingSystemModule:Option=Option("-Rindexing-system-module",.flag, attributes:[.frontend,.doesNotAffectIncrementalBuild], helpText:"Emit a remark when indexing a system module")
792
802
publicstaticletremarkMacroLoading:Option=Option("-Rmacro-loading",.flag, attributes:[.frontend,.doesNotAffectIncrementalBuild], helpText:"Emit remarks about loaded macro implementations")
0 commit comments