Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
359 commits
Select commit Hold shift + click to select a range
940a6d7
Try renabling test on all platforms
aschwaighofer May 20, 2020
c4e67e2
[Diagnostics] Add -diagnostic-style=(llvm|swift) to control printed o…
owenv Apr 19, 2020
d93f44a
Merge pull request #31837 from CodaFi/record-scratch
CodaFi May 21, 2020
5e89060
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 21, 2020
2eb623e
[CodeCompletion] Handle variadic parameter in expr context analysis
rintaro May 21, 2020
f7aaf5b
[CodeCompletion] Stop suggesting static member on a protoco meta type
rintaro May 21, 2020
4f54c75
Use Clang's logic for adding the default IR attributes to a function.
rjmccall May 20, 2020
870ca6d
Add instructions on how to create a 32-bit iOS simulator device
gribozavr May 20, 2020
446dc9f
Merge pull request #31928 from gribozavr/iphonesimulator-i386-instruc…
gribozavr May 21, 2020
3e5175e
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 21, 2020
e67e8ab
Prespecialize common metadata (#31925)
airspeedswift May 21, 2020
bf12613
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 21, 2020
a85ac89
Merge pull request #31926 from AnthonyLatsis/deserial-safe-submap
AnthonyLatsis May 21, 2020
bf21d7a
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 21, 2020
4841731
Merge pull request #31918 from aschwaighofer/irgen_enum_witness_huge_…
aschwaighofer May 21, 2020
cf8fe4e
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 21, 2020
bc618a9
[ClangImporter] Avoid calling into ObjCSelector lookup
hamishknight May 21, 2020
fb66658
[AutoDiff] NFC: shorten test name. (#31818)
dan-zheng May 21, 2020
41b392b
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 21, 2020
d53cd53
[Typechecker] Emit a specialised diagnostic for redeclaration errors …
theblixguy May 21, 2020
6175c90
Merge pull request #31932 from rintaro/ide-completion-rdar62479469
rintaro May 21, 2020
f6c62be
Merge pull request #31933 from rintaro/ide-completion-rdar58886969
rintaro May 21, 2020
a0c2775
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 21, 2020
620b044
Merge pull request #31906 from rjmccall/clang-ir-attributes
rjmccall May 21, 2020
245bcc4
Merge pull request #31695 from swiftwasm/maxd/lit-wasi
compnerd May 21, 2020
6ec007a
Further reduce the number of parallel jobs when testiong LLDB under ASAN
adrian-prantl May 21, 2020
45bc578
[SourceManager] Rename line and column APIs for clarity
owenv May 21, 2020
b8c74b4
Merge pull request #31898 from gottesmm/pr-40f1eb4aa2e642a971e6af0341…
gottesmm May 21, 2020
99edbf0
[SourceKit/CodeFormat] Don't column-align PatternBindingDecl entries …
May 21, 2020
24fa750
Merge pull request #31927 from AnthonyLatsis/assert-type-param-3
AnthonyLatsis May 21, 2020
417e173
Merge pull request #31890 from gribozavr/fix-new-array-swift-gyb
CodaFi May 21, 2020
50803b8
[CSBindings] Emit specific key path root arg if generic param type va…
LucianoPAlmeida May 21, 2020
f7234a3
[tests] Adjusting SR-12827 test cases
LucianoPAlmeida May 21, 2020
e155f03
IRGen: Always eliminate frame pointers of leaf functions
aschwaighofer May 20, 2020
109813f
Add option to disable leaf frame pointer elimination
aschwaighofer May 21, 2020
e59d9eb
[NFC] Correc 'placholder' typo
xwu May 21, 2020
5f69b1e
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 21, 2020
bbd6d53
[ConstraintSystem] Move implementation of isRepresentativeFor to cpp …
LucianoPAlmeida May 21, 2020
1c8ad00
[Property Wrappers] Fix ParamDecl::getDefaultValueStringRepresentation
hborla May 21, 2020
fcc4bef
[Property Wrappers] For properties that are implicitly default initia…
hborla May 21, 2020
14cc7dd
PrintAsObjC: Fix crash when printing typedef that was imported inside…
slavapestov May 21, 2020
49fed42
NFC: Remove SILParserState from Subsystems
hamishknight May 21, 2020
941681f
build: hide symbols using CMake
compnerd May 21, 2020
6049ce6
[fso] Do not try to specialize pseudo-generic functions today.
gottesmm May 21, 2020
63e6636
[metadata prespecialization] Prespecialize canonically only in-module.
nate-chandler May 21, 2020
f57eb42
Merge pull request #31929 from compnerd/null-is-1
compnerd May 21, 2020
004f4b8
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 21, 2020
138e4bc
runtime: repair the android build
compnerd May 21, 2020
be0e3fb
[NFC] Fix 'Traling' typo
xwu May 21, 2020
4069030
Merge pull request #31950 from hamishknight/sub-subsystems
hamishknight May 22, 2020
f1b6f74
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
28fa3ab
Merge pull request #31848 from LucianoPAlmeida/SR-12827-keypath-hole
xedin May 22, 2020
94b5066
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
cae7a70
Merge pull request #31946 from xwu/he-plac
xwu May 22, 2020
536c4f7
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
defac25
Merge pull request #31941 from nathawes/pattern-binding-decl-indentation
May 22, 2020
35d6a22
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
a97bbf9
Merge pull request #31949 from hborla/property-wrapper-default-init
hborla May 22, 2020
e56204b
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
9c08c24
Merge pull request #31947 from slavapestov/print-as-objc-generic-type…
slavapestov May 22, 2020
17f63c4
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
e58ba24
Merge pull request #31954 from nate-chandler/generic-metadata-prespec…
nate-chandler May 22, 2020
e1bcded
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
d5d3ff9
Fixup Tombstone Reference Kind
CodaFi May 22, 2020
3e76ea7
Add the "cascading" bit to Reference
CodaFi May 22, 2020
21e6bad
[Gardening] Add an alias for a commonly-used set type
CodaFi May 22, 2020
9a88bef
Start Keeping Track of Files With Dependencies in the DependencyColle…
CodaFi May 22, 2020
bf8d541
Put UsedDeclEnumerator Back
CodaFi May 22, 2020
537c386
Use the New Evaluator-Based Dependency Enumerator in the Dependency V…
CodaFi May 22, 2020
acbf927
[NFC] Delete ReferencedNameTracker
CodaFi May 22, 2020
d42ac62
Account for Deserialized VarDecls in Setter Mismatch Diagnostics
CodaFi May 22, 2020
11a6d2b
Merge pull request #31952 from gottesmm/pr-6e3317403aa8653e12171104f9…
gottesmm May 22, 2020
70ab966
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
05d377d
Make ObjCSelector's lookupDirect return a TinyPtrVector
hamishknight May 22, 2020
5004159
[Sema] NFC: Inline removeValidObjCConflictingMethods
hamishknight May 22, 2020
b982693
[Sema] NFC: Simplify some filtering logic
hamishknight May 22, 2020
da78d93
Remove OrderDeclaration's SourceManager parameter
hamishknight May 22, 2020
e25fa23
[Sema] NFC: Cleanup lookupObjCMethodInClass
hamishknight May 22, 2020
7bb2749
[Sema] NFC: Misc formatting changes
hamishknight May 22, 2020
5cb1f30
[IDE][InterfaceGen] Always print the top-level decl in header file ge…
May 22, 2020
1f85c04
Merge pull request #31961 from CodaFi/setternalia
swift-ci May 22, 2020
d941590
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
4057e7e
[Test] Generalize a few attribute tests for iOS.
DougGregor May 22, 2020
f8e3c40
Merge pull request #31965 from DougGregor/generalize-attr-tests
swift-ci May 22, 2020
ef55555
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
35dceab
Set clang code generation's frame pointer kind.
aschwaighofer May 22, 2020
e6f0cbc
Fix test case
aschwaighofer May 22, 2020
38c0452
DependenciesScanner: report command-line arguments for building pcm e…
nkcsgexi May 20, 2020
429da7c
test: split ModuleDependencyGraph into graph and action
nkcsgexi May 21, 2020
cb3f278
Test: add a script for building modules by using command line argumen…
nkcsgexi May 21, 2020
18d4f63
Merge pull request #31962 from hamishknight/a-selection-of-cleanups
hamishknight May 22, 2020
b0b5d29
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
97c89d8
Remove three ObjC fields from non-ObjC runtime
davezarzycki May 15, 2020
2d25850
Merge pull request #31956 from compnerd/android-logging
compnerd May 22, 2020
046de12
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
966ffbb
Propagate `-vfsoverlay` from driver to frontend.
allevato May 22, 2020
94a7b9c
Disable attr_originally_definedin_backward_compatibility.swift test u…
mikeash May 22, 2020
123f068
Merge pull request #31971 from mikeash/disable-attr_originally_define…
mikeash May 22, 2020
23950ff
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
de366c4
Merge pull request #31957 from xwu/tralala
akyrtzi May 22, 2020
1e2277e
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
617f1c3
Only use omit the frame pointer on arm64, x86_64 darwin needs it for …
aschwaighofer May 22, 2020
2202398
[test] DependenciesScanner: running shell commands via a python scrip…
nkcsgexi May 22, 2020
2ac1eee
Merge pull request #31964 from nathawes/fix-header-interface-lone-get…
May 22, 2020
5683f71
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
f026c61
[ConstraintSystem] Disallow use of enum case as a key path component …
theblixguy May 22, 2020
a5dfb68
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
73e5fc3
Merge pull request #31939 from adrian-prantl/less-j
adrian-prantl May 22, 2020
d53475d
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
f8c5803
fix typo in remove(_:)'s documentation
WowbaggersLiquidLunch May 22, 2020
30e14ee
Merge pull request #31937 from hamishknight/an-introspective-lookup
hamishknight May 22, 2020
4661b79
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
a6d97ec
[ConstraintSystem][NFC] rename `keyword_arguments.swift` to ...
omochi May 22, 2020
a12e0b3
Fix test on linux
aschwaighofer May 22, 2020
ccf6209
[prespecialized metadata] Allow existential arguments.
nate-chandler Apr 23, 2020
339f179
[ConstraintSystem][NFC] Move test cases about argument matching ...
omochi May 22, 2020
dec5d06
Merge pull request #31970 from allevato/driver-vfsoverlay
CodaFi May 22, 2020
725e2dc
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
f55ce19
[Diagnostics] Strip off unrelated optionals from generic parameter di…
xedin May 22, 2020
2c17600
test: account for indirect imports
compnerd May 22, 2020
65962f1
Merge pull request #31953 from compnerd/invisibility
compnerd May 22, 2020
a17e35b
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
f9c8210
[Sema][NFC] Split test expectation to lines in `object_literals`
omochi May 22, 2020
45810d0
Merge pull request #31921 from aschwaighofer/irgen_frame_pointer_non_…
aschwaighofer May 22, 2020
fbe4827
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 22, 2020
d77bae6
Merge pull request #31978 from omochi/argument-matching-testfile
omochi May 23, 2020
8407c3b
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 23, 2020
e2b554d
Merge pull request #31922 from nkcsgexi/report-pcm-command
nkcsgexi May 23, 2020
90109cd
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 23, 2020
4eb5689
Merge pull request #31960 from CodaFi/your-references-are-off-the-chain
CodaFi May 23, 2020
64a138c
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 23, 2020
80919e9
Sema: Don't clone TypeReprs in ConstraintSystem::shrink()
slavapestov May 23, 2020
ae77d22
AST: Don't clone TypeReprs in GenericParamList::clone()
slavapestov May 23, 2020
6303852
AST: Don't clone TypeReprs in ParamDecl::cloneWithoutType()
slavapestov May 23, 2020
98edf08
AST: Remove TypeRepr::clone()
slavapestov May 23, 2020
00485c3
This test requires ios to be build.
aschwaighofer May 23, 2020
9e2cdf4
Merge pull request #31506 from hamishknight/hello-operator
hamishknight May 23, 2020
435b239
Merge pull request #31811 from davezarzycki/pr31811
compnerd May 23, 2020
4c115e1
build: cleanup some unnecessary settings for Windows
compnerd May 23, 2020
a4d182c
Merge pull request #31987 from aschwaighofer/fix_framepointer_arm64
aschwaighofer May 23, 2020
da000dd
Merge pull request #31984 from omochi/split-line-test-expectation
omochi May 23, 2020
fb9c771
Merge pull request #31975 from WowbaggersLiquidLunch/patch-2
xwu May 23, 2020
8339e8c
[ConstraintSystem][NFC] add tests for label matching diagnostics
omochi May 23, 2020
c5730be
API checker: only diagnose adding enum cases to exhaustive enums
nkcsgexi May 23, 2020
271289f
Merge pull request #31994 from compnerd/windows-14
compnerd May 23, 2020
79bed6c
Merge pull request #31481 from compnerd/not-everything-that-glitters-…
compnerd May 23, 2020
7372a25
Foundation: fix typo in Publishers+Timer.swift (#31966)
MaxDesiatov May 23, 2020
756bc50
build: correct variable in SDK configuration
compnerd May 23, 2020
619cdcb
Merge pull request #31992 from slavapestov/remove-typerepr-clone
slavapestov May 24, 2020
d3162e4
Merge pull request #31934 from omochi/test-labels
xedin May 24, 2020
9581918
Merge pull request #31997 from nkcsgexi/exhaustive-enum-check
nkcsgexi May 24, 2020
7ea09a9
Fix comments on `_compactMap(_:)`
alexbinary May 24, 2020
f13b00f
[CSFix] Adjusting tuple mismatch to handle optionals
LucianoPAlmeida May 24, 2020
c7fdbdf
[tests] Adding regression tests for SR-12869
LucianoPAlmeida May 24, 2020
85cf29d
Merge pull request #31998 from compnerd/module-triple
compnerd May 24, 2020
ab0e8a8
[CSSimplify] Do not record IgnoreAssignmentDestinationType or context…
LucianoPAlmeida May 24, 2020
086ad33
[CSDiagnostics] Adjust tuple contextual mismatch diagnostics to handl…
LucianoPAlmeida May 24, 2020
2e1609e
[tests] Adjusting SR-12869 test cases for optional mismatches
LucianoPAlmeida May 24, 2020
65d66da
[AutoDiff] Fix false 'Differentiable' synthesis warning on class prop…
rxwei May 25, 2020
bf7eea0
[Function builders] Infer function builder from a protocol requirement.
DougGregor May 25, 2020
ad99b9d
SILOptimizer: a new phi-argument expansion optimization.
eeckstein May 14, 2020
c5a9575
Cache LookupAllConformancesInContextRequest.
DougGregor May 25, 2020
54c1267
[Function builders] Short-circuit function builder inference earlier.
DougGregor May 25, 2020
5d9d4f9
[Tests] Add newly-introduced dependencies to the incremental verifier.
DougGregor May 25, 2020
9eb22c0
Merge pull request #31982 from xedin/improve-generic-param-diags
xedin May 25, 2020
e43cd9d
[CSFix] Ajusting contextual type purpose for subscript destination fo…
LucianoPAlmeida May 25, 2020
1de3d0d
Merge pull request #31943 from owenv/line-and-col
hamishknight May 26, 2020
bf9ae4b
Platform: add RichEdit to modulemap
compnerd Apr 12, 2020
8cec6b5
[Function builders] Add tests for function builders on protocol requi…
DougGregor May 26, 2020
6bda828
Merge pull request #31884 from eeckstein/phi-expansion
eeckstein May 26, 2020
eab7cb7
[IRGen] NFC: Clean up Alignment type
davezarzycki May 26, 2020
889e84a
Merge pull request #32012 from compnerd/richy-rich
compnerd May 26, 2020
dac9698
Fix comparisons between presumed and buffer line numbers
owenv May 26, 2020
dd0b1eb
[Gardening] Remove dead code in SerializeDoc.cpp
owenv May 26, 2020
9722578
SILOptimizer: a new optimization for copy-on-write
eeckstein May 19, 2020
e3ac98c
FunctionSignatureTransforms: add a semantics attribute to prevent the…
eeckstein May 25, 2020
4ca6b31
SILCombine: remove dead casts and end_cow_mutation instructions which…
eeckstein May 25, 2020
01465d9
SILCombine: Remove a cast if it's only used by an end_cow_mutation.
eeckstein May 25, 2020
2403e56
SIL: new "array.end_mutation" and "array.finalize_intrinsic" array se…
eeckstein May 25, 2020
33c8e16
SIL optimizer: Support begin_cow_mutation and end_cow_mutation in som…
eeckstein May 25, 2020
16bd756
tests: make some test more robust for optimizer changes.
eeckstein May 25, 2020
99f4d85
ArraySemantics: support "array.check_subscript" as a two-parameter fu…
eeckstein May 25, 2020
216eec2
SIL optimizer: add an additional LICM pass to the pipeline.
eeckstein May 25, 2020
3f42ad7
DeadObjectElimination: don't let fix_lifetime prevent dead array elim…
eeckstein May 25, 2020
b90e579
Merge pull request #32001 from LucianoPAlmeida/SR-12869-tuple-mismatc…
xedin May 26, 2020
5d648ac
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 26, 2020
8e0ec60
Merge pull request #32005 from DougGregor/function-builder-infer
DougGregor May 26, 2020
fb8ff6a
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 26, 2020
ef7da4d
Merge pull request #31903 from bitjammer/acgarland/rdar-63233897-get-…
bitjammer May 26, 2020
a809d4d
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 26, 2020
8b4d9ef
[Profiler] Don't use presumed line numbers for profiling
owenv May 26, 2020
73c1005
Merge pull request #32020 from owenv/line-and-col-fixes
owenv May 26, 2020
21e47ad
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 26, 2020
a676a37
Merge pull request #31999 from alexbinary/patch-1
CodaFi May 26, 2020
dc11458
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 26, 2020
c884068
[ConstraintSystem] Tally implicit optional wraps into impact of point…
xedin May 26, 2020
6bead5c
[Parse] Fix source range of SPI attributes
xymus May 26, 2020
369b2ab
Add a Regression Test For Scenario Improved By Private Dependencies
CodaFi May 27, 2020
42796f3
Merge remote-tracking branch 'github/tensorflow' into HEAD
ainu-bot May 27, 2020
aed0d91
tests: temporarily disable Runtime/linux-fatal-backtrace.swift
eeckstein May 27, 2020
e05d4e9
Merge pull request #32018 from davezarzycki/pr32018
davezarzycki May 27, 2020
e16dce8
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 27, 2020
456775f
Merge pull request #32035 from eeckstein/disable-linux-test
mikeash May 27, 2020
d790323
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 27, 2020
11bc7d1
This test would fail on arm64(e) because we omit frame pointers there
aschwaighofer May 27, 2020
ad51f4f
[CodeCompletion] Fix non-determinisc failures in dependency check tes…
rintaro May 26, 2020
aed2d60
Merge remote-tracking branch 'github/tensorflow' into HEAD
ainu-bot May 27, 2020
bccdc0e
NFC: Rename performSILGeneration -> performASTLowering
hamishknight May 27, 2020
e7d1447
[Test] Disable test only for the simulator; it'll run on host & device.
DougGregor May 27, 2020
9d322fe
Merge pull request #32029 from xedin/account-for-optionality-with-ptrs
xedin May 27, 2020
88a799e
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 27, 2020
21f5032
Merge pull request #32032 from CodaFi/cascadia
CodaFi May 27, 2020
2318bc9
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 27, 2020
79247b2
[SourceKit][InterfaceGen] Don't print clang decls marked with the swi…
May 27, 2020
4e6b68f
[NFC] Remove Extra Deduplication of External Depends
CodaFi May 27, 2020
51ce1f2
[SymbolGraph] Look for @_spi on extensions
bitjammer May 20, 2020
828720c
Merge pull request #32026 from xymus/spi-attr-range
xymus May 28, 2020
d942e80
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 28, 2020
28103df
Merge pull request #32043 from hamishknight/better-late-than-never
hamishknight May 28, 2020
f95de76
Merge pull request #31252 from nate-chandler/generic-metadata-prespec…
nate-chandler May 28, 2020
e40e86f
Merge pull request #32017 from owenv/diag-style-opt
owenv May 28, 2020
45a78e4
Merge pull request #32030 from rintaro/ide-completion-rdar62923248
rintaro May 28, 2020
5013a02
Merge pull request #32023 from eeckstein/cow-optimizer-changes
eeckstein May 28, 2020
6569c98
SIL optimizer: add an additional stack promotion pass to the late pip…
eeckstein May 27, 2020
5a1c48e
Improve windows build instructions.
MForster May 28, 2020
5f9225f
Update WindowsBuild.md
MForster May 28, 2020
266bd0f
Cross-module-optimization: issue an error if TBD file generation is r…
eeckstein May 28, 2020
2140981
Merge pull request #32039 from eeckstein/add-stack-promotion-pass
eeckstein May 28, 2020
c98c862
Start implementing C++ operator interop (#32015)
MForster May 28, 2020
765c3ce
[clangimporter] Fix a StringRef to std::string conversion.
May 27, 2020
6b8148c
[docs] Add 'gardening' to Lexicon.md (#32044)
varungandhi-apple May 28, 2020
7e1ab4c
Merge pull request #32058 from eeckstein/tbd-cmo-error
swift-ci May 28, 2020
0cab1ce
Merge pull request #32048 from DougGregor/backward-compat-non-simulator
DougGregor May 28, 2020
e2a7dd0
Merge pull request #32052 from CodaFi/is-uniquely-referenced
CodaFi May 28, 2020
47ceb81
Merge pull request #32021 from owenv/gardening-4
owenv May 28, 2020
5ec1e3e
Refactor Mirror to reduce metadata allocation (#32041)
airspeedswift May 28, 2020
b78bd2e
Merge pull request #31911 from valeriyvan/FixRangeReplaceableCollecti…
CodaFi May 28, 2020
98fd1b2
Merge pull request #32040 from aschwaighofer/fix_test_c_globals_arm64
aschwaighofer May 28, 2020
5cd8ca4
Merge pull request #31985 from bitjammer/acgarland/rdar-63361634-chec…
bitjammer May 28, 2020
0562a83
Merge pull request #32022 from owenv/profiler-fix
owenv May 28, 2020
2c1e071
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 28, 2020
96e337c
[TF] Rename performSILGeneration -> performASTLowering.
ainu-bot May 28, 2020
4c691ec
Merge pull request #32060 from enferex/fix-strref-master-1
compnerd May 28, 2020
034e872
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 28, 2020
4f4c90b
Merge pull request #32046 from nathawes/interface-gen-exposed-underscore
akyrtzi May 28, 2020
f40b207
Merge pull request #32057 from MForster/m/windows
compnerd May 28, 2020
8198416
Merge remote-tracking branch 'github/master' into HEAD
ainu-bot May 28, 2020
240b90f
update-checkout-config.json: adjust for tensorflow merge
ematejska May 28, 2020
9f408f5
Merge pull request #32066 from compnerd/small-change-for-small-vector
compnerd May 29, 2020
23d077e
Merge pull request #32076 from compnerd/switching-strings
compnerd May 29, 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
  •  
  •  
  •  
17 changes: 12 additions & 5 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -154,12 +154,22 @@ 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
if(CMAKE_SYSTEM_NAME STREQUAL Windows AND NOT CMAKE_HOST_SYSTEM_NAME STREQUAL Windows)
set(SWIFT_ENABLE_LLD_LINKER_default TRUE)
else()
set(SWIFT_ENABLE_LLD_LINKER_default FALSE)
endif()
set(SWIFT_ENABLE_LLD_LINKER ${SWIFT_ENABLE_LLD_LINKER_default} 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
if(CMAKE_SYSTEM_NAME STREQUAL Darwin OR CMAKE_SYSTEM_NAME STREQUAL Windows)
set(SWIFT_ENABLE_GOLD_LINKER_default FALSE)
else()
set(SWIFT_ENABLE_GOLD_LINKER_default TRUE)
endif()
set(SWIFT_ENABLE_GOLD_LINKER ${SWIFT_ENABLE_GOLD_LINKER_default} CACHE BOOL
"Enable using the gold linker when available")

set(SWIFT_TOOLS_ENABLE_LTO OFF CACHE STRING "Build Swift tools with LTO. One
Expand Down Expand Up @@ -579,9 +589,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
2 changes: 1 addition & 1 deletion benchmark/single-source/DataBenchmarks.swift
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
import TestsUtils
import Foundation

let d: [BenchmarkCategory] = [.validation, .api, .Data]
let d: [BenchmarkCategory] = [.validation, .api, .Data, .cpubench]

public let DataBenchmarks = [
BenchmarkInfo(name: "DataCreateEmpty",
Expand Down
2 changes: 1 addition & 1 deletion benchmark/single-source/DictionarySwap.swift
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ let numberMap = Dictionary(uniqueKeysWithValues: zip(1...size, 1...size))
let boxedNums = (1...size).lazy.map { Box($0) }
let boxedNumMap = Dictionary(uniqueKeysWithValues: zip(boxedNums, boxedNums))

let t: [BenchmarkCategory] = [.validation, .api, .Dictionary]
let t: [BenchmarkCategory] = [.validation, .api, .Dictionary, .cpubench]

public let DictionarySwap = [
BenchmarkInfo(name: "DictionarySwap",
Expand Down
2 changes: 1 addition & 1 deletion benchmark/single-source/NIOChannelPipeline.swift
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import TestsUtils

// Mini benchmark implementing the gist of SwiftNIO's ChannelPipeline as
// implemented by NIO 1 and NIO 2.[01]
let t: [BenchmarkCategory] = [.runtime, .refcount]
let t: [BenchmarkCategory] = [.runtime, .refcount, .cpubench]
let N = 100

public let NIOChannelPipeline = [
Expand Down
2 changes: 1 addition & 1 deletion benchmark/single-source/ObjectiveCNoBridgingStubs.swift
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ import Foundation
import ObjectiveCTests
#endif

let t: [BenchmarkCategory] = [.validation, .bridging]
let t: [BenchmarkCategory] = [.validation, .bridging, .cpubench]

public let ObjectiveCNoBridgingStubs = [
BenchmarkInfo(name: "ObjectiveCBridgeStubToNSStringRef",
Expand Down
2 changes: 1 addition & 1 deletion benchmark/single-source/ReversedCollections.swift
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ public let ReversedCollections = [
BenchmarkInfo(name: "ReversedArray2", runFunction: run_ReversedArray, tags: [.validation, .api, .Array],
setUpFunction: { blackHole(arrayInput) },
tearDownFunction: { arrayInput = nil }),
BenchmarkInfo(name: "ReversedBidirectional", runFunction: run_ReversedBidirectional, tags: [.validation, .api]),
BenchmarkInfo(name: "ReversedBidirectional", runFunction: run_ReversedBidirectional, tags: [.validation, .api, .cpubench]),
BenchmarkInfo(name: "ReversedDictionary2", runFunction: run_ReversedDictionary, tags: [.validation, .api, .Dictionary],
setUpFunction: { blackHole(dictionaryInput) },
tearDownFunction: { dictionaryInput = nil })
Expand Down
2 changes: 1 addition & 1 deletion benchmark/single-source/SortLargeExistentials.swift
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ import TestsUtils
public let SortLargeExistentials = BenchmarkInfo(
name: "SortLargeExistentials",
runFunction: run_SortLargeExistentials,
tags: [.validation, .api, .algorithm],
tags: [.validation, .api, .algorithm, .cpubench],
legacyFactor: 100)

protocol LetterKind {
Expand Down
2 changes: 1 addition & 1 deletion benchmark/single-source/StackPromo.swift
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import TestsUtils
public let StackPromo = BenchmarkInfo(
name: "StackPromo",
runFunction: run_StackPromo,
tags: [.regression],
tags: [.regression, .cpubench],
legacyFactor: 100)

protocol Proto {
Expand Down
2 changes: 1 addition & 1 deletion benchmark/single-source/StringReplaceSubrange.swift
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

import TestsUtils

let tags: [BenchmarkCategory] = [.validation, .api, .String]
let tags: [BenchmarkCategory] = [.validation, .api, .String, .cpubench]

public let StringReplaceSubrange = [
BenchmarkInfo(
Expand Down
18 changes: 6 additions & 12 deletions cmake/modules/AddSwift.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -368,18 +368,12 @@ 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_ENABLE_LLD_LINKER)
target_link_options(${target} PRIVATE
-fuse-ld=lld$<$<STREQUAL:${CMAKE_HOST_SYSTEM_NAME},Windows>:.exe>)
elseif(SWIFT_ENABLE_GOLD_LINKER)
target_link_options(${target} PRIVATE
-fuse-ld=gold$<$<STREQUAL:${CMAKE_HOST_SYSTEM_NAME},Windows>:.exe>)
endif()
endif()

Expand Down
32 changes: 0 additions & 32 deletions cmake/modules/SwiftCheckCXXNativeRegex.cmake

This file was deleted.

4 changes: 2 additions & 2 deletions cmake/modules/SwiftConfigureSDK.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -374,7 +374,7 @@ macro(configure_sdk_unix name architectures)

# If the module triple wasn't set explicitly, it's the same as the triple.
if(NOT SWIFT_SDK_${prefix}_ARCH_${arch}_MODULE)
set(SWIFT_SDK_${prefix}_ARCH_${arch}_MODULE "${SWIFT_SDK_${prefix}_ARCH_${arch}_MODULE}")
set(SWIFT_SDK_${prefix}_ARCH_${arch}_MODULE "${SWIFT_SDK_${prefix}_ARCH_${arch}_TRIPLE}")
endif()
endforeach()

Expand Down Expand Up @@ -407,7 +407,7 @@ macro(configure_sdk_windows name environment architectures)
"${arch}-unknown-windows-${environment}")
endif()

set(SWIFT_SDK_${prefix}_ARCH_${arch}_MODULE "${SWIFT_SDK_${prefix}_ARCH_${arch}_MODULE}")
set(SWIFT_SDK_${prefix}_ARCH_${arch}_MODULE "${SWIFT_SDK_${prefix}_ARCH_${arch}_TRIPLE}")

# NOTE: set the path to / to avoid a spurious `--sysroot` from being passed
# to the driver -- rely on the `INCLUDE` AND `LIB` environment variables
Expand Down
6 changes: 6 additions & 0 deletions docs/Lexicon.md
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,12 @@ and *zero* protocols; the latter is the `Any` type).
Describes a type or function where making changes will break binary
compatibility. See [LibraryEvolution.rst](LibraryEvolution.rst).

## gardening

Describes contributions which fix code that is not executed
(such as in a manifesto or README) and written text
(correcting typos and grammatical errors).

## generic environment

Provides context for interpreting a type that may have generic parameters
Expand Down
2 changes: 1 addition & 1 deletion docs/Testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ uses an iOS 10.3 simulator configuration named "iPhone 5" for 32-bit testing.
window, or with the command line:

```sh
xcrun simctl create 'iPhone 5' 'com.apple.CoreSimulator.SimDeviceType.iPhone-5'
xcrun simctl create 'iPhone 5' com.apple.CoreSimulator.SimDeviceType.iPhone-5 com.apple.CoreSimulator.SimRuntime.iOS-10-3
```

3. Append `--ios` to the `utils/build-script` command line (see below).
Expand Down
27 changes: 19 additions & 8 deletions docs/WindowsBuild.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,34 @@
# Building Swift on Windows

Visual Studio 2017 or newer is needed to build swift on Windows.
Visual Studio 2017 or newer is needed to build Swift on Windows.

The following must take place in the **developer command prompt** (provided by Visual Studio). This shows up as "x64 Native Tools Command Prompt for VS2017" (or VS2019, VS2019 Preview depending on the Visual Studio that you are using) in the Start Menu.
The commands below (with the exception of installing Visual Studio) must be entered in the "**x64 Native** Tools Command Prompt for VS2017" (or VS2019, VS2019 Preview depending on the Visual Studio that you are using) in the Start Menu. This sets environment variables to select the correct target platform.

## Install dependencies

- Install the latest version of [Visual Studio](https://www.visualstudio.com/downloads/)
- Make sure to include "Programming Languages|Visual C++" and "Windows and Web Development|Universal Windows App Development|Windows SDK" in your installation. The following components are required:
### Visual Studio

1. Microsoft.VisualStudio.Component.Windows10SDK
2. Microsoft.VisualStudio.Component.Windows10SDK.17763
3. Microsoft.VisualStudio.Component.VC.Tools.x86.x64
An easy way to get most of the tools to build Swift is using the [Visual Studio installer](https://www.visualstudio.com/downloads/). This command installs all needed Visual Studio components as well as Python and Git:

```
vs_community ^
--add Component.CPython2.x86 ^
--add Component.CPython3.x64 ^
--add Microsoft.VisualStudio.Component.Git ^
--add Microsoft.VisualStudio.Component.VC.ATL ^
--add Microsoft.VisualStudio.Component.VC.CMake.Project ^
--add Microsoft.VisualStudio.Component.VC.Tools.x86.x64 ^
--add Microsoft.VisualStudio.Component.Windows10SDK ^
--add Microsoft.VisualStudio.Component.Windows10SDK.17763
```

If you prefer you can install everything by hand, but make sure to include "Programming Languages|Visual C++" and "Windows and Web Development|Universal Windows App Development|Windows SDK" in your installation. The components listed above are required.

The following [link](https://docs.microsoft.com/visualstudio/install/workload-component-id-vs-build-tools?view=vs-2019) helps in finding the component name given its ID for Visual Studio 2019.

### Python

In the Visual Studio installation program, under *Individual Components*
The command above already installs Python 2 and 3. Alternatively, in the Visual Studio installation program, under *Individual Components*

1. Install *Python 2*, either the 32-bit version (C:\Python27\\) or the 64-bit version (C:\Python27amd64\\)

Expand Down
19 changes: 14 additions & 5 deletions include/swift/ABI/Metadata.h
Original file line number Diff line number Diff line change
Expand Up @@ -1012,9 +1012,12 @@ struct TargetAnyClassMetadata : public TargetHeapMetadata<Runtime> {

constexpr TargetAnyClassMetadata(TargetClassMetadata<Runtime> *superclass)
: TargetHeapMetadata<Runtime>(MetadataKind::Class),
Superclass(superclass),
CacheData{nullptr, nullptr},
Data(SWIFT_CLASS_IS_SWIFT_MASK) {}
Superclass(superclass)
#if SWIFT_OBJC_INTEROP
, CacheData{nullptr, nullptr},
Data(SWIFT_CLASS_IS_SWIFT_MASK)
#endif
{}

#if SWIFT_OBJC_INTEROP
// Allow setting the metadata kind to a class ISA on class metadata.
Expand All @@ -1027,8 +1030,7 @@ struct TargetAnyClassMetadata : public TargetHeapMetadata<Runtime> {
/// The metadata for the superclass. This is null for the root class.
ConstTargetMetadataPointer<Runtime, swift::TargetClassMetadata> Superclass;

// TODO: remove the CacheData and Data fields in non-ObjC-interop builds.

#if SWIFT_OBJC_INTEROP
/// The cache data is used for certain dynamic lookups; it is owned
/// by the runtime and generally needs to interoperate with
/// Objective-C's use.
Expand All @@ -1043,11 +1045,16 @@ struct TargetAnyClassMetadata : public TargetHeapMetadata<Runtime> {
static constexpr StoredPointer offsetToData() {
return offsetof(TargetAnyClassMetadata, Data);
}
#endif

/// Is this object a valid swift type metadata? That is, can it be
/// safely downcast to ClassMetadata?
bool isTypeMetadata() const {
#if SWIFT_OBJC_INTEROP
return (Data & SWIFT_CLASS_IS_SWIFT_MASK);
#else
return true;
#endif
}
/// A different perspective on the same bit
bool isPureObjC() const {
Expand Down Expand Up @@ -1270,6 +1277,7 @@ struct TargetClassMetadata : public TargetAnyClassMetadata<Runtime> {
return bounds;
}

#if SWIFT_OBJC_INTEROP
/// Given a statically-emitted metadata template, this sets the correct
/// "is Swift" bit for the current runtime. Depending on the deployment
/// target a binary was compiled for, statically emitted metadata templates
Expand All @@ -1294,6 +1302,7 @@ struct TargetClassMetadata : public TargetAnyClassMetadata<Runtime> {

assert(isTypeMetadata());
}
#endif

bool isCanonicalStaticallySpecializedGenericMetadata() const {
auto *description = getDescription();
Expand Down
16 changes: 7 additions & 9 deletions include/swift/AST/ASTContext.h
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,6 @@ namespace swift {
class SourceManager;
class ValueDecl;
class DiagnosticEngine;
class TypeCheckerDebugConsumer;
struct RawComment;
class DocComment;
class SILBoxType;
Expand Down Expand Up @@ -276,9 +275,6 @@ class ASTContext final {
#define IDENTIFIER_WITH_NAME(Name, IdStr) Identifier Id_##Name;
#include "swift/AST/KnownIdentifiers.def"

/// A consumer of type checker debug output.
std::unique_ptr<TypeCheckerDebugConsumer> TypeCheckerDebug;

/// Cache for names of canonical GenericTypeParamTypes.
mutable llvm::DenseMap<unsigned, Identifier>
CanonicalGenericTypeParamTypeNames;
Expand Down Expand Up @@ -784,11 +780,13 @@ class ASTContext final {
/// \param methods The list of @objc methods in this class that have this
/// selector and are instance/class methods as requested. This list will be
/// extended with any methods found in subsequent generations.
void loadObjCMethods(ClassDecl *classDecl,
ObjCSelector selector,
bool isInstanceMethod,
unsigned previousGeneration,
llvm::TinyPtrVector<AbstractFunctionDecl *> &methods);
///
/// \param swiftOnly If true, only loads methods from imported Swift modules,
/// skipping the Clang importer.
void loadObjCMethods(ClassDecl *classDecl, ObjCSelector selector,
bool isInstanceMethod, unsigned previousGeneration,
llvm::TinyPtrVector<AbstractFunctionDecl *> &methods,
bool swiftOnly = false);

/// Load derivative function configurations for the given
/// AbstractFunctionDecl.
Expand Down
1 change: 1 addition & 0 deletions include/swift/AST/ASTTypeIDZone.def
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ SWIFT_TYPEID_NAMED(PatternBindingEntry *, PatternBindingEntry)
SWIFT_TYPEID_NAMED(PostfixOperatorDecl *, PostfixOperatorDecl)
SWIFT_TYPEID_NAMED(PrecedenceGroupDecl *, PrecedenceGroupDecl)
SWIFT_TYPEID_NAMED(PrefixOperatorDecl *, PrefixOperatorDecl)
SWIFT_TYPEID_NAMED(ProtocolConformance *, ProtocolConformance)
SWIFT_TYPEID_NAMED(ProtocolDecl *, ProtocolDecl)
SWIFT_TYPEID_NAMED(SourceFile *, SourceFile)
SWIFT_TYPEID_NAMED(TypeAliasDecl *, TypeAliasDecl)
Expand Down
1 change: 1 addition & 0 deletions include/swift/AST/ASTTypeIDs.h
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ struct PropertyWrapperTypeInfo;
enum class CtorInitializerKind;
struct PropertyWrapperLValueness;
struct PropertyWrapperMutability;
class ProtocolConformance;
class ProtocolDecl;
class Requirement;
enum class ResilienceExpansion : unsigned;
Expand Down
Loading