Skip to content

[pull] swiftwasm from master #13

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 2,471 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2471 commits
Select commit Hold shift + click to select a range
d992e04
Merge pull request #32167 from artemcm/FixFDSTestImplicitImports
nkcsgexi Jun 4, 2020
bd782be
Front-end: add a new module loader that loads explicitly built Swift …
nkcsgexi Jun 3, 2020
ebf291c
[memory-lifetime] Teach the verifier that select_enum_addr doesn't wr…
gottesmm Jun 4, 2020
5808893
Merge pull request #32172 from gottesmm/pr-58e5e110fe11cabaa1d7907753…
gottesmm Jun 4, 2020
3cb33ac
[semantic-arc-opts] Teach semantic-arc-opts how to handle structs wit…
gottesmm Jun 3, 2020
96a5c81
Merge pull request #32170 from nkcsgexi/explicit-module-loader
nkcsgexi Jun 4, 2020
690d6c4
[AST] Record whether a closure was type-checked in its enclosing expr…
DougGregor Jun 4, 2020
f55e764
[Constaint system] Add a predicate for when to check closures in encl…
DougGregor Jun 4, 2020
e11f167
Merge pull request #32165 from nathawes/add-regression-test-for-dynam…
Jun 4, 2020
5311021
Merge pull request #32024 from kastiglione/dl/index-apply--index-igno…
Jun 4, 2020
ad42d47
[AST] Remove some pointless uses of hasSingleExpressionBody().
DougGregor Jun 4, 2020
ffe471a
[stdlib] Add flatMap example in Result.swift
Jun 4, 2020
b1ac68b
[test] Clang is now more strict about underlying type enums
davezarzycki Jun 4, 2020
f2fb539
[Runtime] Unify debug variable parsing from the environment and avoid…
mikeash Jun 2, 2020
66311e1
Merge pull request #32115 from eunjiChung/example-result
swift-ci Jun 4, 2020
f9128ba
build: use the same pattern for detecting Darwin platforms
compnerd Apr 25, 2020
23bfee2
runtime: silence -Wunused-variable warning (NFC)
compnerd Jun 4, 2020
a813610
Merge pull request #32176 from 3405691582/Port_OpenBSD_RequiresLinkPt…
compnerd Jun 4, 2020
9a61985
Merge pull request #32171 from jckarter/vtable-kind-validation
jckarter Jun 4, 2020
4e0fad8
Add note that LLDB changes should be cherry-picked to `swift/master` …
martinboehme Jun 4, 2020
e5e34fa
Revert "Test C++ out-of-line operator functions (#32081)" (#32181)
MForster Jun 4, 2020
8e6840d
Merge pull request #32178 from DougGregor/single-expression-closure-c…
DougGregor Jun 4, 2020
7c8d860
Merge pull request #32093 from bitjammer/acgarland/rdar-63738390-inhe…
bitjammer Jun 4, 2020
5e1eadc
Merge pull request #32169 from compnerd/qualified-llvm-support
compnerd Jun 4, 2020
9357c85
Merge pull request #31838 from AnthonyLatsis/o-getinnermostgps
CodaFi Jun 4, 2020
d3e64ed
Merge pull request #32173 from gottesmm/pr-5e5960b7d932ff90a03c93f1ba…
gottesmm Jun 4, 2020
2f3a0f0
Merge pull request #32159 from xedin/rdar-63510989
xedin Jun 4, 2020
a722311
[SymbolGraph] Don't print inherited list in declaration fragments
bitjammer Jun 4, 2020
9ceb9ff
Merge pull request #32183 from compnerd/path-unification
compnerd Jun 4, 2020
8ea7009
Merge pull request #32177 from gottesmm/pr-f5820e0408ca527e9c54f4b3c4…
gottesmm Jun 4, 2020
a99d7ea
Merge pull request #31333 from valeriyvan/_applyMappingUnicodeScalarP…
xwu Jun 4, 2020
b25dab2
Merge pull request #32137 from mikeash/debug-environment-variables
mikeash Jun 4, 2020
e9548b0
Merge pull request #32182 from compnerd/uniformity
compnerd Jun 4, 2020
158332c
runtime: remove `llvm/DataTypes.h`, `llvm-c/DataTypes.h`
compnerd Jun 4, 2020
bdfe1b1
[Parse] Avoid delayed member parsing for type decl with missing brace
rintaro Jun 4, 2020
67791cc
[docs] Add a how-to guide on running IWYU on the Swift project. (#32151)
varungandhi-apple Jun 4, 2020
09ea5fd
[docs] Add module build related definitions to Lexicon. (#32153)
varungandhi-apple Jun 4, 2020
b8abe55
Build dependency list once
ladd Jun 4, 2020
0e7a329
[SymbolGraph] Don't emit extension symbol graphs if empty
bitjammer Jun 4, 2020
ea7a33c
Merge pull request #32191 from rintaro/parser-missing-memberdeclbrace…
rintaro Jun 5, 2020
fc7bdf8
Merge pull request #32188 from compnerd/types
compnerd Jun 5, 2020
ddaa3be
Verify The Entire Compilation Session
CodaFi Jun 5, 2020
14ade93
Fix getActiveDependencySourceOrNull For Private Dependencies
CodaFi Jun 5, 2020
874cc85
Make LookupInModuleRequest a Dependency Sink
CodaFi Jun 5, 2020
0215e37
Add Verifier Tests for A Tricky Typealias Miscompile
CodaFi Jun 5, 2020
a900779
[stdlib][test] Fix message test expectation.
3405691582 Jun 5, 2020
32e1d22
Merge pull request #31989 from slavapestov/demangle-nested-type-of-op…
slavapestov Jun 5, 2020
db44a8e
Merge pull request #32132 from slavapestov/a-couple-of-regression-tests
slavapestov Jun 5, 2020
836bc57
[AST Walker] Stop visiting the bodies of closures as expressions.
DougGregor Jun 5, 2020
a71203d
[Sema] Switch to wasTypeCheckedInEnclosingContext() for walks
DougGregor Jun 5, 2020
1d36224
[ClosureExpr] Remove hasAppliedFunctionBuilder.
DougGregor Jun 5, 2020
2f97d24
Note a fixed compiler crasher
DougGregor Jun 5, 2020
7eae5f2
[AST] Remove now-unused ClosureExpr::setSingleExpressionBody().
DougGregor Jun 5, 2020
a115ad9
[AST] Record "separately checked" in ClosureExpr.
DougGregor Jun 5, 2020
0838a65
Test C++ out-of-line operator functions
MForster Jun 5, 2020
2704009
runtime: fix SwapByteOrder.h when building for WASI
MaxDesiatov Jun 5, 2020
8349018
Merge pull request #32180 from davezarzycki/pr32180
davezarzycki Jun 5, 2020
b68d827
[NFC] AST: const-qualify ASTContext refs in PrettyStackTrace.h
AnthonyLatsis Jun 3, 2020
8d0014d
Clarify a comment
DougGregor Jun 5, 2020
b996a21
Merge pull request #32196 from ladd/levantol/perf-patch-d-files
CodaFi Jun 5, 2020
e3ce94d
Introduce a `PruneVTables` pass to mark non-overridden entries.
jckarter Jun 5, 2020
d0131ba
Merge pull request #31146 from kateinoigakukun/katei/enable-lang-agno…
compnerd Jun 5, 2020
975ff75
Perform The Dependency Unioning Step During Replay
CodaFi Jun 5, 2020
91be29a
Merge pull request #32201 from MaxDesiatov/patch-5
CodaFi Jun 5, 2020
5083f83
Merge pull request #32193 from bitjammer/acgarland/rdar-63058801-dont…
bitjammer Jun 5, 2020
fb99cfc
Merge pull request #32189 from bitjammer/acgarland/rdar-63033669-sgf-…
bitjammer Jun 5, 2020
0e892a9
Merge pull request #32199 from 3405691582/Port_OpenBSD_Environ
compnerd Jun 5, 2020
dd7a7f7
[SymbolGraph] Print non-underscored attributes in declarations
bitjammer Jun 1, 2020
fadfb6c
Merge pull request #31874 from benlangmuir/driver-tmp-sad
benlangmuir Jun 5, 2020
a423937
[Constraint solver] Wire up "parents" of closure return statements.
DougGregor Jun 5, 2020
b844035
Fix a typo in a comment
DougGregor Jun 5, 2020
31cf1f2
Merge pull request #32198 from CodaFi/depen-dots
CodaFi Jun 5, 2020
3ec250f
[CodeCompletion] Wrap base expression with CodeCompletionExpr
rintaro Jun 4, 2020
754f21d
Merge pull request #32205 from AnthonyLatsis/pretty-const-stacktrace
CodaFi Jun 5, 2020
d3b6b89
[AutoDiff] Support multiple differentiability result indices in SIL. …
dan-zheng Jun 5, 2020
bcae501
[AutoDiff] NFC: garden test. (#32209)
dan-zheng Jun 5, 2020
c647c11
[SymbolGraph] Don't consider @show_in_interface for underscored names
bitjammer Jun 5, 2020
aef3464
Merge pull request #32187 from bitjammer/acgarland/rdar-63338507-show…
bitjammer Jun 6, 2020
be4e23f
New note for users that have wrongly assumed that generic param confo…
gregomni Jun 5, 2020
142aa42
[semantic-arc-opts] Teach semantic-arc-opts how to handle tuples with…
gottesmm Jun 4, 2020
104c8f3
[build-script] Make is_build_script_impl_product() a pure method and …
gottesmm Jun 6, 2020
7d4da10
Merge pull request #32200 from DougGregor/single-expression-closure-c…
DougGregor Jun 6, 2020
64f903f
[Type checker] Experimental support for one-way parameter constraints.
DougGregor Jun 5, 2020
b149341
[Constraint system] Generalize recording of pattern binding entry tar…
DougGregor Jun 6, 2020
f1febc2
[Constraint system] Lift PatternBindingDecl into SolutionApplicationT…
DougGregor Jun 6, 2020
164ebbf
Merge pull request #32218 from gottesmm/pr-f9101d605011e95162876376e8…
gottesmm Jun 6, 2020
37fefa7
[build-script] Explicitly separate build-script-impl products and non…
gottesmm Jun 6, 2020
1e1b350
[build-script] Add dependencies for all build-script products as a fi…
gottesmm Jun 6, 2020
7525b63
Unbreak after clang added BFloat16 builtin
davezarzycki Jun 6, 2020
369acdb
Merge pull request #32227 from davezarzycki/pr32227
davezarzycki Jun 6, 2020
77d4134
Merge pull request #32221 from DougGregor/stmt-typecheck-cleanups
DougGregor Jun 6, 2020
de7033c
Simplest fix to a dependency bug.
Jun 6, 2020
da14e31
Fix tests to correspond
Jun 6, 2020
62b2570
Merge pull request #32215 from DougGregor/one-way-closure-params
DougGregor Jun 6, 2020
3e280b8
Merge pull request #32107 from LucianoPAlmeida/nfc-move-to-cpp
LucianoPAlmeida Jun 6, 2020
dc1624d
build: style updates (NFC)
compnerd May 30, 2020
932a91e
Merge pull request #32219 from davidungar/quick-dependency-bug-fix
Jun 6, 2020
bd85096
Track upstream changes
davezarzycki Jun 7, 2020
77cbdee
Merge pull request #32232 from davezarzycki/pr32232
davezarzycki Jun 7, 2020
99e72b6
[TypeCheckConstraints] Check for archetypes when warning about unrela…
LucianoPAlmeida Jun 7, 2020
eb0b2bb
[tests] Adding regression tests for SR-12946
LucianoPAlmeida Jun 7, 2020
cc84c7b
Merge pull request #32229 from compnerd/style
compnerd Jun 7, 2020
71309a8
Revert "[LTO] Support LLVM level link time optimization on Darwin, Li…
compnerd Jun 7, 2020
4fe0c69
Merge pull request #32235 from apple/revert-31146-katei/enable-lang-a…
compnerd Jun 7, 2020
59d2d95
Merge pull request #32234 from LucianoPAlmeida/SR-12946-cast-warning-…
swift-ci Jun 8, 2020
9398153
[Parse] Preserve original member hashing behaviour
hamishknight Jun 8, 2020
db9a27e
[AST] Remove hasSyntaxRoot
hamishknight Jun 8, 2020
c045802
Merge pull request #32225 from gottesmm/pr-717ba0adb0340ba5a05ecc2256…
gottesmm Jun 8, 2020
bded632
Merge pull request #32224 from gottesmm/pr-62982e80e54331e66895fc94aa…
gottesmm Jun 8, 2020
504ce0a
[AutoDiff] Handle `array.finalize_intrinsic`.
dan-zheng May 28, 2020
f96f936
SIL: define begin_cow_mutation to have side effects.
eeckstein Jun 4, 2020
1559fe3
SIL: a new library intrinsic to "finalize" array literals
eeckstein May 25, 2020
3bfebf1
runtime lib: a mechanism to set an "immutable" flag on an object for …
eeckstein Jun 8, 2020
71a642e
stdlib, SIL optimizer: use the SIL copy-on-write representation in th…
eeckstein May 26, 2020
8f0569d
Merge pull request #32210 from jckarter/prune-vtables-pass
jckarter Jun 8, 2020
f822296
[SymbolGraph] Use fully qualified name for type's page titles
bitjammer Jun 8, 2020
5ce5466
[metadata prespecialization] NFC: Replaced bool with enum.
nate-chandler Jun 8, 2020
81483cc
Merge pull request #32161 from hamishknight/pipeline-parse
hamishknight Jun 8, 2020
f071136
stdlib: temporarily disable COW support runtime checks.
eeckstein Jun 8, 2020
11ef9bd
Merge pull request #32217 from bitjammer/acgarland/rdar-63120829-show…
bitjammer Jun 8, 2020
5d72c46
[Frontend] Remove parsing option params from performParseOnly
hamishknight Jun 8, 2020
00dd637
[Frontend] Factor out getSourceFileParsingOptions
hamishknight Jun 8, 2020
ff170df
[Frontend] Populate files in getMainModule
hamishknight Jun 8, 2020
7824dc1
[Frontend] Move parse-only module load assert
hamishknight Jun 8, 2020
1ed8106
[Frontend] Remove performParseOnly
hamishknight Jun 8, 2020
55cf78b
[Frontend] Inline performSemaUpTo
hamishknight Jun 8, 2020
580bf4d
[SymbolGraph] Don't add precise identifier to `Self` fragment
bitjammer Jun 8, 2020
8effe49
[build-script] Add a really simple build scheduler that assumes/enfor…
gottesmm Jun 6, 2020
0257c7e
Merge pull request #32241 from bitjammer/acgarland/rdar-64047985-full…
bitjammer Jun 8, 2020
6b80da6
Merge pull request #32179 from gottesmm/pr-1be69dcd1c3376a6b0ecdd3afe…
gottesmm Jun 8, 2020
363bd5d
[build-script] Fix import of dependencies of each product.
gottesmm Jun 8, 2020
9a5f2dc
[Function builders] Infer function builder through @_dynamicReplaceme…
DougGregor Jun 8, 2020
d80a405
[Runtime] Clean up verifyMangledNameRoundtrip comment.
mikeash Jun 8, 2020
059fe23
Merge pull request #31856 from AnthonyLatsis/o-getcontextsubs
AnthonyLatsis Jun 8, 2020
452b6dd
[build-script-impl] Require --install-llvm to be passed in to install…
gottesmm Jun 8, 2020
88589e1
[Function builders] Improve test case for inference behavior
DougGregor Jun 8, 2020
d43c515
[Property wrappers] Reject opaque result types when there is no initi…
DougGregor Jun 8, 2020
8ec75d4
[metadata prespecialization] Support classes with non-generic ancestors.
nate-chandler May 28, 2020
b53334e
Merge pull request #32243 from hamishknight/whole-module-population
hamishknight Jun 8, 2020
714e955
Merge pull request #32242 from nate-chandler/generic-metadata-prespec…
nate-chandler Jun 8, 2020
29d3cc4
Merge pull request #32246 from bitjammer/acgarland/rdar-63941806-dont…
bitjammer Jun 8, 2020
a934cce
Merge pull request #32226 from gottesmm/pr-12d3f8c7e3ae40ee63271019b1…
gottesmm Jun 8, 2020
3eb82c1
Fixes typo in comment in KeyPaths.cpp (#32240)
valeriyvan Jun 8, 2020
017d99d
test: add a test to prevent weak symbol leakage
compnerd May 21, 2020
3e7b4ae
[Property wrappers] Fix another opaque-result-types crasher.
DougGregor Jun 8, 2020
8215ea1
Emit coverage mappings for all modules
keith Jun 6, 2020
1c9b090
Merge remote-tracking branch 'origin/master-next'
lorentey Jun 8, 2020
68351d2
Revert "Merge remote-tracking branch 'origin/master-next'"
lorentey Jun 8, 2020
28f60a0
Merge pull request #32247 from gottesmm/pr-bd788ac2872223df1190069035…
gottesmm Jun 9, 2020
e9622ed
test: mark test as executable_test
compnerd Jun 9, 2020
3531852
Merge pull request #32250 from gottesmm/pr-962a7fcfad9a0049512c51e6da…
gottesmm Jun 9, 2020
e14cc4c
Merge pull request #32248 from DougGregor/infer-function-builder-dyna…
swift-ci Jun 9, 2020
39d0827
Fix typo in 'KeyedEncodingContainer.superEncoder' documentation. (#32…
rxwei Jun 9, 2020
450b005
[build-script] Add support for specifying that a product is a non-dar…
gottesmm Jun 8, 2020
00146f8
[build-script] Define default llvm_install_components.
gottesmm Jun 8, 2020
886ae19
Merge pull request #32251 from DougGregor/property-wrapper-opaque-res…
DougGregor Jun 9, 2020
49288f7
[build-script] Remove a bunch of conservative dependencies on lldb.
gottesmm Jun 9, 2020
51fce88
Merge pull request #32253 from compnerd/executable
compnerd Jun 9, 2020
bd6abc9
Merge pull request #32255 from gottesmm/pr-2609ae44ac52a6348d4c38cff3…
gottesmm Jun 9, 2020
13f6885
Merge pull request #32257 from gottesmm/pr-dd4cc86c522d759700beda988e…
gottesmm Jun 9, 2020
291373f
Merge pull request #32134 from eeckstein/cow-support2
eeckstein Jun 9, 2020
d45047d
Merge pull request #32260 from gottesmm/pr-89123c4fe2e41b356d82591f3e…
gottesmm Jun 9, 2020
4b46341
Sema: Remove TypeLoc from ExplicitCast
AnthonyLatsis Jun 7, 2020
1888534
Merge pull request #30895 from valeriyvan/RemoveRedundantZeroingString
xwu Jun 9, 2020
7b3a340
Merge pull request #32249 from mikeash/mangled-name-roundtrip-comment…
mikeash Jun 9, 2020
6c46118
[SIL] NFC: "Stop being a sop"
davezarzycki Jun 9, 2020
c73b144
Perform the unintended generic detection in simplifyMemberConstraint …
gregomni Jun 9, 2020
825a2a2
Mark non-foreign entry points of `@objc dynamic` methods in generic c…
aschwaighofer Jun 3, 2020
7c5a5e5
Merge pull request #32174 from nate-chandler/generic-metadata-prespec…
nate-chandler Jun 9, 2020
42cc989
DependenciesScanner: teach the scanner to handle cross-import overlays
nkcsgexi Jun 8, 2020
38d8b13
[CodeCompletion] Add keypath apply subscript after open bracket
rintaro May 21, 2020
a313f62
[build-script] Add option --infer to infer dependencies.
gottesmm Jun 8, 2020
d975478
[NFC] Clarify comment on metatype casts on TypeCheckConstraints
LucianoPAlmeida Jun 9, 2020
eeb7b3d
Merge pull request #31955 from compnerd/weak-link
compnerd Jun 9, 2020
acb16cf
[AutoDiff] Dedupe array semantic call utilities. (#32266)
dan-zheng Jun 9, 2020
fdf31c8
Add Flags to Enable or Disable EnableExperientalPrivateIntransitiveDe…
CodaFi Jun 9, 2020
ec059f3
Enable ExperientalPrivateIntransitiveDependencies By Default
CodaFi Jun 9, 2020
7997183
IRGen: Move emitProtocolConformance before emitLazyDefinitions
aschwaighofer Jun 8, 2020
f7fd83d
Merge pull request #32220 from gregomni/unintended_generic_param
gregomni Jun 9, 2020
b65300f
Merge pull request #32245 from nkcsgexi/scan-overlay-file
nkcsgexi Jun 9, 2020
a487767
[CS] Add a missing null check in repairFailures
hamishknight Jun 9, 2020
c749f37
[ownership] Add new OwnershipEliminatorPass that does not run when th…
gottesmm Jun 9, 2020
d890f29
[AutoDiff] Improve debugging utilities. (#32269)
dan-zheng Jun 9, 2020
a6cb3ae
Merge pull request #32256 from gottesmm/pr-6a889299976ad0e3dfbc1849e1…
gottesmm Jun 9, 2020
6a1534d
Merge pull request #32261 from LucianoPAlmeida/comment-fix
LucianoPAlmeida Jun 9, 2020
3228a59
[NFC] Rename Flags
CodaFi Jun 9, 2020
2cbf28d
[test] Set LD_LIBRARY_PATH if testing on OpenBSD.
3405691582 Mar 14, 2020
330dc01
[AutoDiff upstream] NFC: garden doc comment. (#32264)
dan-zheng Jun 9, 2020
0d1f6ae
Print @escaping For Closures In Generated Memberwise Initializer
CodaFi Jun 10, 2020
617189f
Merge pull request #31980 from rintaro/ide-completion-keypathsubscrip…
rintaro Jun 10, 2020
713c76b
Merge pull request #32278 from hamishknight/nullable-ptr
hamishknight Jun 10, 2020
bc3dd8c
Merge pull request #32279 from gottesmm/pr-153bb098e8dbcdf855bdfe38c1…
gottesmm Jun 10, 2020
07a328b
[generics] Change replaceWithSpecializedCallee to use an exhaustive s…
gottesmm Jun 10, 2020
c4b68b8
Merge pull request #32284 from 3405691582/Test_OpenBSD_TestLibraries
compnerd Jun 10, 2020
6a9d087
SILCombine: a peephole optimization to optimize alloc_stack of enums.
eeckstein Jun 9, 2020
fe8893d
Merge pull request #32267 from eeckstein/opt-enum-allocstack
eeckstein Jun 10, 2020
537b103
[testing] add missing REQUIRES: standalone_build
davezarzycki Jun 10, 2020
9168b81
Don't require the stdlib to contain the _finalizeUninitializedArray i…
eeckstein Jun 10, 2020
017ee7b
[SIL] NFC: Simplify SILVTable and save 8 bytes per SILVTable
davezarzycki Jun 8, 2020
c1a1cc6
Merge pull request #32294 from davezarzycki/pr32294
swift-ci Jun 10, 2020
dfe82be
Merge pull request #32263 from davezarzycki/stop-being-a-sop
davezarzycki Jun 10, 2020
65a0846
Fix c_globals.swift test on arm64
aschwaighofer Jun 10, 2020
4ef9cb9
Merge pull request #32295 from eeckstein/fix-silgen-crash
eeckstein Jun 10, 2020
9a3d863
Merge pull request #32238 from davezarzycki/pr32238
davezarzycki Jun 10, 2020
05ed0dd
Add back test case
aschwaighofer Jun 10, 2020
f80d6ab
Merge pull request #32290 from gottesmm/pr-d9bd430041dcb06e248e0e81c3…
gottesmm Jun 10, 2020
c7efed9
Merge pull request #32285 from CodaFi/escape-velocity
CodaFi Jun 10, 2020
51a60a6
Merge pull request #32274 from CodaFi/transport-tycoon
CodaFi Jun 10, 2020
28fba4f
Merge pull request #32195 from aschwaighofer/dyn_repl_objc_method_gen…
aschwaighofer Jun 10, 2020
50dc7d8
[Driver/SourceKit] Handle filelist driver args in getSingleFrontendIn…
Jun 9, 2020
99ab7db
[Gardening] Document DependencyRecorder and DependencyCollector
CodaFi Jun 10, 2020
ca72891
Merge pull request #32138 from AnthonyLatsis/eliminate-typeloc
CodaFi Jun 10, 2020
1fb06f1
Merge pull request #32216 from keith/ks/coverage-modules
swift-ci Jun 10, 2020
6730270
Dependencies: Small cleanup in FineGrainedDependencies.{h,cpp}
slavapestov Jun 2, 2020
d59a76c
Dependencies: New binary format for fine-grained dependency graph
slavapestov Jun 2, 2020
82c0897
Dependencies: Fix uninitialized memory in SourceFileDepGraphNode
slavapestov Jun 7, 2020
4ff62ec
Dependencies: Implement SourceFileDepGraphNode::dump()
slavapestov Jun 7, 2020
915e215
[ClangImporter] Make sure that inherited convenience constructors are…
akyrtzi Jun 5, 2020
9b77762
Merge pull request #32299 from CodaFi/doctor-my-eyes
swift-ci Jun 10, 2020
fc9070c
Strip TypeLoc from IsPattern
CodaFi Jun 10, 2020
60ec3f1
Fix debug description for cases with multiple items (#32282)
vedantk Jun 10, 2020
2371e5c
Strip TypeLoc from EnumElementPattern
CodaFi Jun 10, 2020
41758c0
Merge pull request #32148 from nathawes/doc-info-underscored-protocol…
Jun 10, 2020
499ed05
Revert "Emit coverage mappings for all modules"
compnerd Jun 10, 2020
1979d3d
Merge pull request #32297 from aschwaighofer/fix_test_c_globals_arm64
aschwaighofer Jun 10, 2020
7b431b4
[test] Mark XFAIL tests for OpenBSD.
3405691582 Mar 21, 2020
4205e46
Merge pull request #32184 from rintaro/ide-completion-rdar63965160
rintaro Jun 10, 2020
a3ce462
Merge pull request #32214 from akyrtzi/clang-include-inherited-conven…
akyrtzi Jun 10, 2020
e101576
[NFC] Reduce usage of TypedPattern::getTypeLoc
CodaFi Jun 10, 2020
f89e213
Merge pull request #32281 from nathawes/handle-filelists-in-sourcekit…
Jun 11, 2020
08b7e7e
[gardening] Convert an explicit usage of rbegin,rend -> llvm::reverse…
gottesmm Jun 11, 2020
bd23534
[NFC] CS: Inline a parameter in openUnboundGenericType
AnthonyLatsis Jun 11, 2020
426d930
Merge pull request #32301 from CodaFi/location-location-location
CodaFi Jun 11, 2020
fb8fdd9
Replace resolveCustomAttrType with a Request
CodaFi Jun 10, 2020
80d3a32
Strip ImplementsAttr of its TypeLoc
CodaFi Jun 10, 2020
29cdbe8
Strip TypeEraserAttr of its TypeLoc
CodaFi Jun 11, 2020
8f065e7
Delete TypeChecker::validateType
CodaFi Jun 11, 2020
5ef2751
Merge pull request #32307 from gottesmm/pr-199321807d64e7a17366ae4af2…
swift-ci Jun 11, 2020
122deaa
Merge pull request #32303 from apple/revert-32216-ks/coverage-modules
compnerd Jun 11, 2020
4ff5dd4
Dependencies: New swift-dependency-tool to convert between binary and…
slavapestov Jun 9, 2020
fe3f6b3
Dependencies: Update tests for new binary format
slavapestov Jun 9, 2020
53931c0
Dependencies: Remove apparently-unused test inputs
slavapestov Jun 10, 2020
b873fe2
Code review feedback from Dave Ungar
slavapestov Jun 10, 2020
ca26d57
Merge pull request #32310 from CodaFi/relocation-allowance
CodaFi Jun 11, 2020
42d2f9d
Merge pull request #32308 from 3405691582/Test_OpenBSD_XfailAndRequired
CodaFi Jun 11, 2020
965c735
Merge pull request #32131 from slavapestov/binary-swiftdeps-format
slavapestov Jun 11, 2020
cdc38da
Merge pull request #32309 from AnthonyLatsis/cs-openunbound-dead-param
AnthonyLatsis Jun 11, 2020
f171358
[testing] Add missing REQUIRES: standalone_test
davezarzycki Jun 11, 2020
abfbbbe
Merge pull request #32213 from aschwaighofer/note_use_of_type_metadat…
aschwaighofer Jun 11, 2020
e5a5ab1
Merge pull request #32314 from davezarzycki/pr32314
swift-ci Jun 11, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
40 changes: 16 additions & 24 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -147,14 +147,20 @@ set(SWIFT_COMPILER_VERSION "" CACHE STRING
set(CLANG_COMPILER_VERSION "" CACHE STRING
"The internal version of the Clang compiler")

# Indicate whether Swift should attempt to use the lld linker.
set(SWIFT_ENABLE_LLD_LINKER TRUE CACHE BOOL
"Enable using the lld linker when available")

# Indicate whether Swift should attempt to use the gold linker.
# This is not used on Darwin.
set(SWIFT_ENABLE_GOLD_LINKER TRUE CACHE BOOL
"Enable using the gold linker when available")
# Which default linker to use. Prefer LLVM_USE_LINKER if it set, otherwise use
# our own defaults. This should only be possible in a unified (not stand alone)
# build environment.
if(LLVM_USE_LINKER)
set(SWIFT_USE_LINKER_default "${LLVM_USE_LINKER}")
elseif(CMAKE_SYSTEM_NAME STREQUAL Windows AND NOT CMAKE_HOST_SYSTEM_NAME STREQUAL Windows)
set(SWIFT_USE_LINKER_default "lld")
elseif(CMAKE_SYSTEM_NAME STREQUAL Darwin)
set(SWIFT_USE_LINKER_default "")
else()
set(SWIFT_USE_LINKER_default "gold")
endif()
set(SWIFT_USE_LINKER ${SWIFT_USE_LINKER_default} CACHE STRING
"Build Swift with a non-default linker")

set(SWIFT_TOOLS_ENABLE_LTO OFF CACHE STRING "Build Swift tools with LTO. One
must specify the form of LTO by setting this to one of: 'full', 'thin'. This
Expand Down Expand Up @@ -407,6 +413,8 @@ endif()

if(MSVC OR "${CMAKE_SIMULATE_ID}" STREQUAL MSVC)
include(ClangClCompileRules)
elseif(UNIX)
include(UnixCompileRules)
endif()

if(CMAKE_C_COMPILER_ID MATCHES Clang)
Expand All @@ -426,19 +434,6 @@ if(SWIFT_BUILD_SYNTAXPARSERLIB OR SWIFT_BUILD_SOURCEKIT)
endif()
endif()

#
# Assume a new enough ar to generate the index at construction time. This avoids
# having to invoke ranlib as a secondary command.
#

set(CMAKE_C_ARCHIVE_CREATE "<CMAKE_AR> crs <TARGET> <LINK_FLAGS> <OBJECTS>")
set(CMAKE_C_ARCHIVE_APPEND "<CMAKE_AR> qs <TARGET> <LINK_FLAGS> <OBJECTS>")
set(CMAKE_C_ARCHIVE_FINISH "")

set(CMAKE_CXX_ARCHIVE_CREATE "<CMAKE_AR> crs <TARGET> <LINK_FLAGS> <OBJECTS>")
set(CMAKE_CXX_ARCHIVE_APPEND "<CMAKE_AR> qs <TARGET> <LINK_FLAGS> <OBJECTS>")
set(CMAKE_CXX_ARCHIVE_FINISH "")

#
# Include CMake modules
#
Expand Down Expand Up @@ -560,9 +555,6 @@ if(XCODE)
swift_common_xcode_cxx_config()
endif()

include(SwiftCheckCXXNativeRegex)
check_cxx_native_regex(SWIFT_HAVE_WORKING_STD_REGEX)

# If SWIFT_HOST_VARIANT_SDK not given, try to detect from the CMAKE_SYSTEM_NAME.
if(SWIFT_HOST_VARIANT_SDK)
set(SWIFT_HOST_VARIANT_SDK_default "${SWIFT_HOST_VARIANT_SDK}")
Expand Down
7 changes: 4 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
| **Ubuntu 16.04** | x86_64 | [![Build Status](https://ci.swift.org/job/oss-swift-incremental-RA-linux-ubuntu-16_04/lastCompletedBuild/badge/icon)](https://ci.swift.org/job/oss-swift-incremental-RA-linux-ubuntu-16_04)|[![Build Status](https://ci.swift.org/job/oss-swift-package-linux-ubuntu-16_04/lastCompletedBuild/badge/icon)](https://ci.swift.org/job/oss-swift-package-linux-ubuntu-16_04)|
| **Ubuntu 18.04** | x86_64 | [![Build Status](https://ci.swift.org/job/oss-swift-incremental-RA-linux-ubuntu-18_04/lastCompletedBuild/badge/icon)](https://ci.swift.org/job/oss-swift-incremental-RA-linux-ubuntu-18_04)|[![Build Status](https://ci.swift.org/job/oss-swift-package-linux-ubuntu-18_04/lastCompletedBuild/badge/icon)](https://ci.swift.org/job/oss-swift-package-linux-ubuntu-18_04)|
| **Ubuntu 20.04** | x86_64 | [![Build Status](https://ci.swift.org/job/oss-swift-package-ubuntu-20_04/lastCompletedBuild/badge/icon)](https://ci.swift.org/job/oss-swift-package-ubuntu-20_04)|[![Build Status](https://ci.swift.org/job/oss-swift-package-ubuntu-20_04/lastCompletedBuild/badge/icon)](https://ci.swift.org/job/oss-swift-package-ubuntu-20_04)|
| **CentOS 8** | x86_64 | [![Build Status](https://ci.swift.org/job/oss-swift-package-centos-8/lastCompletedBuild/badge/icon)](https://ci.swift.org/job/oss-swift-package-centos-8)|[![Build Status](https://ci.swift.org/job/oss-swift-package-linux-ubuntu-18_04/lastCompletedBuild/badge/icon)](https://ci.swift.org/job/oss-swift-package-centos-8)|
| **CentOS 8** | x86_64 | [![Build Status](https://ci.swift.org/job/oss-swift-package-centos-8/lastCompletedBuild/badge/icon)](https://ci.swift.org/job/oss-swift-package-centos-8)|[![Build Status](https://ci.swift.org/job/oss-swift-package-centos-8/lastCompletedBuild/badge/icon)](https://ci.swift.org/job/oss-swift-package-centos-8)|
| **Amazon Linux 2** | x86_64 | [![Build Status](https://ci.swift.org/job/oss-swift-package-amazon-linux-2/lastCompletedBuild/badge/icon)](https://ci.swift.org/job/oss-swift-package-amazon-linux-2)|[![Build Status](https://ci.swift.org/job/oss-swift-package-amazon-linux-2/lastCompletedBuild/badge/icon)](https://ci.swift.org/job/oss-swift-package-amazon-linux-2)|

**Swift Community-Hosted CI Platforms**
Expand Down Expand Up @@ -85,6 +85,9 @@ Once you are able to build things successfully and have a compile-test-debug
loop going, check out the [development tips](docs/DevelopmentTips.md) for
better productivity while working on the compiler.

You can also skim [docs/README.md](/docs/README.md) to understand what
high-level documentation is available.

### System Requirements

macOS, Ubuntu Linux LTS, and the latest Ubuntu Linux release are currently
Expand Down Expand Up @@ -151,8 +154,6 @@ with version 2 shipped with Ubuntu.

**Note:** For Ubuntu 20.04, use `libpython2-dev` in place of the libpython-dev package above.

Build instructions for Ubuntu 14.04 LTS can be found [here](docs/Ubuntu14.md).

### Getting Sources for Swift and Related Projects

First create a directory for all of the Swift sources:
Expand Down
1 change: 1 addition & 0 deletions benchmark/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,7 @@ set(SWIFT_BENCH_MODULES
single-source/LuhnAlgoLazy
single-source/MapReduce
single-source/Memset
single-source/Mirror
single-source/MonteCarloE
single-source/MonteCarloPi
single-source/NSDictionaryCastToSwift
Expand Down
105 changes: 105 additions & 0 deletions benchmark/single-source/Mirror.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
//===--- Mirror.swift ------------------------------------------------===//
//
// This source file is part of the Swift.org open source project
//
// Copyright (c) 2014 - 2017 Apple Inc. and the Swift project authors
// Licensed under Apache License v2.0 with Runtime Library Exception
//
// See https://swift.org/LICENSE.txt for license information
// See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
//
//===----------------------------------------------------------------------===//

// This test measures performance of Mirror and related things.
import TestsUtils

public let TypeName = BenchmarkInfo(
name: "TypeName",
runFunction: run_TypeName,
tags: [.api, .String])

public let MirrorDefault = BenchmarkInfo(
name: "MirrorDefault",
runFunction: run_MirrorDefault,
tags: [.api, .String])

struct S1 { var s: String; var d: Double }
struct S2 { var i: Int; var a: [Range<Int>] }

class C { var i: Int = 0 }
class D: C { var s: String = "" }

enum E {
case a,b(Int)
}

struct G<T> { var t: T }
class H<T>: C { var t: T; init(_ t: T) { self.t = t }}

public func run_MirrorDefault(scale: Int) {
let N = 100*scale

let s1 = S1(s: "foo", d: 3.14)
let s2 = S2(i: 42, a: [0..<4])
let c = C()
let d = D()
let e = E.a
let f = E.b(99)
let g = G(t: 12.3)
let h = H<[Int]>([1,2,3])

var str = ""

for _ in 0..<N {
str = "\(s1),\(s2),\(c),\(d),\(e),\(f),\(g),\(h)"
blackHole(str)
}

CheckResults(str ==
"S1(s: \"foo\", d: 3.14),S2(i: 42, a: [Range(0..<4)]),Mirror.C,Mirror.D,a,b(99),G<Double>(t: 12.3),Mirror.H<Swift.Array<Swift.Int>>")
}

func typename<T>(of: T.Type) -> String {
"\(T.self)"
}

public func run_TypeName(scale: Int) {
let N = 1_000*scale
var a: [String] = []
a.reserveCapacity(16)

for _ in 0..<N {
a = []
a.removeAll(keepingCapacity: true)
a.append(typename(of: S1.self))
a.append(typename(of: S2.self))
a.append(typename(of: C.self))
a.append(typename(of: D.self))
a.append(typename(of: G<S1>.self))
a.append(typename(of: G<C>.self))
a.append(typename(of: G<String>.self))
a.append(typename(of: H<Int>.self))
a.append(typename(of: [S1].self))
a.append(typename(of: [G<Int>].self))
a.append(typename(of: [H<S1>].self))
a.append(typename(of: S1?.self))
a.append(typename(of: C?.self))
blackHole(a)
}

let expected = ["S1",
"S2",
"C",
"D",
"G<S1>",
"G<C>",
"G<String>",
"H<Int>",
"Array<S1>",
"Array<G<Int>>",
"Array<H<S1>>",
"Optional<S1>",
"Optional<C>",
]
CheckResults(a == expected)
}
3 changes: 3 additions & 0 deletions benchmark/utils/main.swift
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,7 @@ import LuhnAlgoEager
import LuhnAlgoLazy
import MapReduce
import Memset
import Mirror
import MonteCarloE
import MonteCarloPi
import NibbleSort
Expand Down Expand Up @@ -281,6 +282,7 @@ registerBenchmark(LuhnAlgoEager)
registerBenchmark(LuhnAlgoLazy)
registerBenchmark(MapReduce)
registerBenchmark(Memset)
registerBenchmark(MirrorDefault)
registerBenchmark(MonteCarloE)
registerBenchmark(MonteCarloPi)
registerBenchmark(NSDictionaryCastToSwift)
Expand Down Expand Up @@ -366,6 +368,7 @@ registerBenchmark(Suffix)
registerBenchmark(SuperChars)
registerBenchmark(TwoSum)
registerBenchmark(TypeFlood)
registerBenchmark(TypeName)
registerBenchmark(UTF8Decode)
registerBenchmark(Walsh)
registerBenchmark(WordCount)
Expand Down
63 changes: 15 additions & 48 deletions cmake/modules/AddSwift.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -75,25 +75,10 @@ function(_set_target_prefix_and_suffix target kind sdk)
endif()
endfunction()

function(is_darwin_based_sdk sdk_name out_var)
if ("${sdk_name}" STREQUAL "OSX" OR
"${sdk_name}" STREQUAL "IOS" OR
"${sdk_name}" STREQUAL "IOS_SIMULATOR" OR
"${sdk_name}" STREQUAL "TVOS" OR
"${sdk_name}" STREQUAL "TVOS_SIMULATOR" OR
"${sdk_name}" STREQUAL "WATCHOS" OR
"${sdk_name}" STREQUAL "WATCHOS_SIMULATOR")
set(${out_var} TRUE PARENT_SCOPE)
else()
set(${out_var} FALSE PARENT_SCOPE)
endif()
endfunction()

# Usage:
# _add_host_variant_c_compile_link_flags(name)
function(_add_host_variant_c_compile_link_flags name)
is_darwin_based_sdk("${SWIFT_HOST_VARIANT_SDK}" IS_DARWIN)
if(IS_DARWIN)
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_APPLE_PLATFORMS)
set(DEPLOYMENT_VERSION "${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_DEPLOYMENT_VERSION}")
endif()

Expand All @@ -107,7 +92,7 @@ function(_add_host_variant_c_compile_link_flags name)

set(_sysroot
"${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_ARCH_${SWIFT_HOST_VARIANT_ARCH}_PATH}")
if(IS_DARWIN)
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_APPLE_PLATFORMS)
target_compile_options(${name} PRIVATE -isysroot;${_sysroot})
elseif(NOT SWIFT_COMPILER_IS_MSVC_LIKE AND NOT "${_sysroot}" STREQUAL "/")
target_compile_options(${name} PRIVATE --sysroot=${_sysroot})
Expand All @@ -116,13 +101,13 @@ function(_add_host_variant_c_compile_link_flags name)
if(SWIFT_HOST_VARIANT_SDK STREQUAL ANDROID)
# lld can handle targeting the android build. However, if lld is not
# enabled, then fallback to the linker included in the android NDK.
if(NOT SWIFT_ENABLE_LLD_LINKER)
if(NOT SWIFT_USE_LINKER STREQUAL "lld")
swift_android_tools_path(${SWIFT_HOST_VARIANT_ARCH} tools_path)
target_compile_options(${name} PRIVATE -B${tools_path})
endif()
endif()

if(IS_DARWIN)
if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_APPLE_PLATFORMS)
# We collate -F with the framework path to avoid unwanted deduplication
# of options by target_compile_options -- this way no undesired
# side effects are introduced should a new search path be added.
Expand Down Expand Up @@ -368,18 +353,9 @@ function(_add_host_variant_link_flags target)
endif()

if(NOT SWIFT_COMPILER_IS_MSVC_LIKE)
# FIXME: On Apple platforms, find_program needs to look for "ld64.lld"
find_program(LDLLD_PATH "ld.lld")
if((SWIFT_ENABLE_LLD_LINKER AND LDLLD_PATH AND NOT APPLE) OR
(SWIFT_HOST_VARIANT_SDK STREQUAL WINDOWS AND NOT CMAKE_SYSTEM_NAME STREQUAL WINDOWS))
target_link_options(${target} PRIVATE -fuse-ld=lld)
elseif(SWIFT_ENABLE_GOLD_LINKER AND
"${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_OBJECT_FORMAT}" STREQUAL "ELF")
if(CMAKE_HOST_SYSTEM_NAME STREQUAL Windows)
target_link_options(${target} PRIVATE -fuse-ld=gold.exe)
else()
target_link_options(${target} PRIVATE -fuse-ld=gold)
endif()
if(SWIFT_USE_LINKER)
target_link_options(${target} PRIVATE
-fuse-ld=${SWIFT_USE_LINKER}$<$<STREQUAL:${CMAKE_HOST_SYSTEM_NAME},Windows>:.exe>)
endif()
endif()

Expand Down Expand Up @@ -475,20 +451,16 @@ function(add_swift_host_library name)
LIBRARY_DIR ${SWIFT_LIBRARY_OUTPUT_INTDIR})

if(SWIFT_HOST_VARIANT_SDK IN_LIST SWIFT_APPLE_PLATFORMS)
set_target_properties(${name}
PROPERTIES
set_target_properties(${name} PROPERTIES
INSTALL_NAME_DIR "@rpath")
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL LINUX)
set_target_properties(${name}
PROPERTIES
set_target_properties(${name} PROPERTIES
INSTALL_RPATH "$ORIGIN:/usr/lib/swift/linux")
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL CYGWIN)
set_target_properties(${name}
PROPERTIES
set_target_properties(${name} PROPERTIES
INSTALL_RPATH "$ORIGIN:/usr/lib/swift/cygwin")
elseif(SWIFT_HOST_VARIANT_SDK STREQUAL "ANDROID")
set_target_properties(${name}
PROPERTIES
set_target_properties(${name} PROPERTIES
INSTALL_RPATH "$ORIGIN")
endif()

Expand Down Expand Up @@ -526,7 +498,6 @@ function(add_swift_host_library name)
endif()

set_target_properties(${name} PROPERTIES
CXX_STANDARD 14
NO_SONAME YES)
endif()

Expand Down Expand Up @@ -556,14 +527,10 @@ function(add_swift_host_library name)
"LINKER:-current_version,${SWIFT_COMPILER_VERSION}")
endif()

set(DEPLOYMENT_VERSION "${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_DEPLOYMENT_VERSION}")
# MSVC, clang-cl, gcc don't understand -target.
if(CMAKE_C_COMPILER_ID MATCHES "Clang" AND NOT SWIFT_COMPILER_IS_MSVC_LIKE)
get_target_triple(target target_variant "${SWIFT_HOST_VARIANT_SDK}" "${SWIFT_HOST_VARIANT_ARCH}"
MACCATALYST_BUILD_FLAVOR ""
DEPLOYMENT_VERSION "${DEPLOYMENT_VERSION}")
target_link_options(${name} PRIVATE -target;${target})
endif()
get_target_triple(target target_variant "${SWIFT_HOST_VARIANT_SDK}" "${SWIFT_HOST_VARIANT_ARCH}"
MACCATALYST_BUILD_FLAVOR ""
DEPLOYMENT_VERSION "${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_DEPLOYMENT_VERSION}")
target_link_options(${name} PRIVATE -target;${target})
endif()

add_dependencies(dev ${name})
Expand Down
10 changes: 2 additions & 8 deletions cmake/modules/AddSwiftUnittests.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -57,15 +57,9 @@ function(add_swift_unittest test_dirname)
_ENABLE_EXTENDED_ALIGNED_STORAGE)
endif()

find_program(LDLLD_PATH "ld.lld")
# Strangely, macOS finds lld and then can't find it when using -fuse-ld=
if(SWIFT_ENABLE_LLD_LINKER AND LDLLD_PATH AND NOT APPLE)
if(SWIFT_USE_LINKER)
set_property(TARGET "${test_dirname}" APPEND_STRING PROPERTY
LINK_FLAGS " -fuse-ld=lld")
elseif(SWIFT_ENABLE_GOLD_LINKER AND
"${SWIFT_SDK_${SWIFT_HOST_VARIANT_SDK}_OBJECT_FORMAT}" STREQUAL "ELF")
set_property(TARGET "${test_dirname}" APPEND_STRING PROPERTY
LINK_FLAGS " -fuse-ld=gold")
LINK_FLAGS " -fuse-ld=${SWIFT_USE_LINKER}")
endif()

if(SWIFT_ANALYZE_CODE_COVERAGE)
Expand Down
Loading